This commit adds the error column to the array of errors (previously an
array of line numbers, now an array of [line,column] pairs). This allows
navigation directly to the error position, but also nvaigating to
multiple errors in a single line.
* Save/restore cursor position
* Cosmetic change
* selection should be inclusive
Because exclusive doesn't select fisrt character with 1GvG0
* Remove last extra \n
* Be graceful
* Use winsaveview/winrestoreview
* WIP code actions
It was addded the code actions funcionality
https://microsoft.github.io/language-server-protocol/specification#textDocument_codeAction
Processing the result is not quite right, because it is always applying
the c (change) command, and it does not insert the new line (\n)
character
* WIP code actions
It was addded the code actions funcionality
https://microsoft.github.io/language-server-protocol/specification#textDocument_codeAction
Processing the result is not quite right, because it is always applying
the c (change) command, and it does not insert the new line (\n)
character
* Improved apply_text_edit
Now the function apply_text_edit insert texts as well, instead of only
replacing it.
Fixed some typos and broken links
* Added documentation and fixed code_action
Now lsp#ui#vim#code_action uses the diagnostic range instead of the
get_position
* Fixed code action
The code action had a problem when it needed to delete/replace some
text, and when the code was folded it did not work since to execute do
not seem to unfold the code
* Changed copy to deepcopy
Since we modifying nested objects we need to use deepcopy
* Fixed preprocessing and added sort to textedits
To perform an unfold it is necessary to check first if the line has
fold level, if the line has foldlevel = 0 and you try to unfold it will
cause and error.
Since LSP specification does not guarantee that text edits are ordered,
we needed to sort it so it will work on any valid LSP
* Fixed text edits sort
Removed stable_sort since it is not necessary
Now it sorts the text edits in a reverse order and merge text edits
that are inserts on the same place
* Fixed codeAction deleting lines
* Passing capability on initialization
* Added buffer validation before setting the sign
This validation is necessary since the documentation states that the
file {fname} must be already be loaded in a buffer.
* Changed msgpack_type to v:true
Msgpack_type does not work on vim
Currently calling hover on a filetype without support throws an error, stating
that 'Unknown function: <SNR>274_not_supported'. This adds the `not_supported`
function into the scripts' scope.
* add variables to define custom signs
* set signs via exec
* use dict for custom signs
* support all sign params
* update readme with a note about custom signs
* add lsp highlighting groups, remove options to set texthl and linehl via dict.
* Create preview window instead of using quickfix list
This removes from us burden of providing formatting for content as this
is now simple as setting proper filetype.
* Create custom filetype for preview window
This will allow users to provide their own mappings and features in
hover window easily.
* Add proper statusline for LSP Hover
* Guard and undo_ftplugin
* Support all LSP hover syntaxes
* Wrap silent aucmds in augroup
Prevents stacking up multiple.
* Fix function signatures
Add ! and/or abort.
* Fix syntax and variable name typo
* Use robust equality comparison
* The == operator behaves differently depending on 'ignorecase'.