Support for LSP/tsserver Code Actions (#3437)

* Added tsserver and LSP code action support.
* tsserver refactors support added.
* Handling special case when new text is added after new line symbol.
* ale#code_action#ApplyChanges simplified.
* Initial attempt on LSP Code Actions.
* workspace/executeCommand added.
* Some null checks added.
* Add last column to LSP Code Action message.
* Pass diagnostics to LSP code action.

Previously ApplyChanges code was applied from top-to-bottom that required 
extra parameters to track progress and there was bug. I have changed code
to bottom-to-top approach as that does not require those extra parameters
and solved the bug.

Tested with typescript-language-server and it is working.
This commit is contained in:
Dalius Dobravolskas
2020-11-14 12:15:17 +02:00
committed by GitHub
parent 1ec573bf0d
commit 01800a23ad
15 changed files with 1260 additions and 86 deletions

View File

@@ -3106,6 +3106,18 @@ ALERename *ALERename*
in those files will not be updated.
ALECodeAction *ALECodeAction*
Code Actions support for `tsserver`.
There are two different kind of actions supported for `tsserver`. If run in
normal mode then code fix will be attempted if there is error in that line.
If there are multiple code fixes available use will be shown input to choose
one. In visual mode `tsserver` will be queries for applicable refactors
(e.g. extract to constant or extract to function) and user will be given
choice to select the one he/she likes.
ALERepeatSelection *ALERepeatSelection*
Repeat the last selection displayed in the preview window.