* fixed jump function splitting windows when file is modified
* fix open_location not working in most cases
* Fix lint warnings
* Fixed bad behavior with modified buffer
* Commonalize some similar functions
* Add <mods> support for some commands
Supported commands:
- :LspDeclaration
- :LspDefinition
- :LspTypeDefinition
- :LspImplementation
* Change text edit implementation to support \r
* Fix edit on unloaded buffer
* Add \r\n tests
* Fix for perf
Co-authored-by: mattn <mattn.jp@gmail.com>
* added lsp#utils#location#_lsp_to_vim_list
* check of response.result
* remove lsp#ui#vim#utils#locations_to_loc_list
* refactor to use s:open_location
* use lsp#utils#is_file_uri
* add lsp#utils#buffer#_open_lsp_location(location)
add lsp#utils#position#lsp_to_vim(expr, position)
add visual selection when using _open_lsp_location
update tagstack when opening hierarchy item
* move to location.vim
* use normal!
* rename to lsp#utils#position#_lsp_to_vim
* update bufnr to the latest buffer
* Add test to check v:completed_item after textedits
* Fix v:completed_item being reset after text edits
* Add silent to execute call in apply_text_edits
* Add test of 'lsp#utils#text_edit#apply_text_edits'.
* Fix `lsp#utils#text_edit#apply_text_edits` is delete one character when textEdit command kind is insert.
I fix the problem the apply_text_edits is deleting one character
if "textEdit['range']['start'] equals textEdit['range']['end'] and textEdit['new Text'] is empty".
* Fix tests.
- create new buffer each tests
- add test utility function `s:set_text` and `get_text`
* Support refactorings through code actions.
- make LspCodeAction work on a selected range, to support extract method
or extract variable refactorings
- properly execute commands returned by code actions
- support workspace/applyEdit requests from server
* Fixes to match the Google VimScript Style Guide
* Refactor handling of requests from server.
Introduce an on_request option in lsp#client#start, that will be called
every time a request is received from a server.
* Use robust operator ==#
* Move apply_workspace_edit to separate file.
* If the user has "fixendofline" set, append a blank line to preserve the EOF newline
* Break utility function out into its own file and add tests
* Improve EOL detection based on docs and improve tests