Hirokazu Hata
4e6531ddbd
lsp: use vim.tbl_isempty to check sign ( #12190 )
...
ref: #12164
fix #12201
sign_getdefined() returns a list, {} if the sign is not defined.
2020-04-28 07:41:39 -07:00
jakbyte
5f41717838
LSP: don't redefine LspDiagnostics signs #12164
...
fix #12162
2020-04-26 15:36:40 -07:00
Hirokazu Hata
78d58eaf61
lsp: remove buffer version on buffer_detach ( #12029 )
...
When we save the buffer, the buffer is detached and attached again.
So the client also needs to remove the buffer version once.
2020-04-25 14:58:35 +02:00
Björn Linse
5a5c2f0290
Merge pull request #11927 from Jesse-Bakker/lsp-buf-version
...
LSP: Use buffer version instead of changedtick for edits
2020-03-16 21:57:51 +01:00
Hirokazu Hata
16262472cd
lsp: add 'textDocument/documentSymbol’ callback
...
Spec: https://microsoft.github.io/language-server-protocol/specifications/specification-current/#textDocument_documentSymbol
2020-03-01 09:10:02 +09:00
Hirokazu Hata
f157fdef7e
lsp: add bufnr to callback function arguments
...
DocumentSymbol type doesn't have location field.
So when we'll add 'textDocument/documentSymbol’ handler, we can't decide which file have we jump to.
2020-02-28 09:03:17 +09:00
Jesse Bakker
1fe01b36de
Use buffer version instead of changedtick for edits
2020-02-27 14:53:11 +01:00
Alvaro Muñoz
ad745f9da2
add support to show diagnostics count in statusline ( #11641 )
...
* add support to show diagnostics count in statusline
* documentation
2020-02-26 20:22:14 +01:00
Hirokazu Hata
4ac376740c
lsp: fix textDocument/completion handling
...
fix : #11826
Some lanuguage servers return complementary candidates whose prefixes do not match are also returned.
So we exclude completion candidates whose prefix does not match.
ex) Microsoft python-language-server, rust-analyzer
2020-02-19 07:27:29 +09:00
Justin M. Keyes
1eb0f5371a
LSP: fix validate_client_config
...
- `cmd_env` is a table not a function.
- tests: Set $NVIM_LOG_FILE for fake LSP server.
2020-02-16 17:53:33 -08:00
Matthieu Coudron
58ec72f9fd
LSP: rename validate_command to _cmd_parts #11847
...
and now only accepts a list of strings (instead of string or list).
2020-02-11 21:48:25 -08:00
Hirokazu Hata
dd8b29cfe2
LSP: set InitializeParams.rootPath value #11838
...
InitializeParams.rootPath is deprecated now. But some language servers still use it.
2020-02-08 22:51:02 -08:00
Justin M. Keyes
9231684986
doc [ci skip] #11656
2020-01-12 23:41:55 -08:00
Justin M. Keyes
ac6ebfcc1d
LSP: eliminate lsp.print_debug_info…()
...
Reduce API surface. We should not add functions unless they are really
needed. Users should be nudged to use vim.inspect() directly.
2019-12-31 15:39:17 -08:00
Justin M. Keyes
8b84119650
LSP: eliminate lsp.stop_all_clients()
...
Reduce API surface. We don't need so many variations of functions. Too
many functions means verbose, largely redundant documentation, tests,
and cognitive burden.
2019-12-31 15:39:17 -08:00
Justin M. Keyes
b112fe828f
gen_vimdoc.py: generate LSP docs
2019-12-31 08:06:48 -08:00
Ashkan Kiani
34a59242a0
Revert "runtime: Add vim.lsp.get_client_by_name" #11623
...
reverts 680693e263
#11603
2019-12-29 09:05:32 +01:00
Hirokazu Hata
680693e263
runtime: Add vim.lsp.get_client_by_name ( #11603 )
...
Since the client name is more obvious than the client id for the user, add an
API to get the lsp client by the client name.
2019-12-28 09:28:00 -08:00
Ashkan Kiani
ee7ac469c6
LSP: Use async completion for omnifunc. ( #11578 )
2019-12-20 22:49:29 -08:00
Mike Hartington
d00c624ba4
LSP: fix omnifunc findstart ( #11522 )
2019-12-20 02:46:47 -08:00
Ashkan Kiani
6e8c5779cf
LSP: Move default buf callbacks to vim.lsp.callbacks ( #11452 )
...
- In the process, refactored focusable_preview to a util function.
- Add text for locations_to_items of the current line.
- Improve location callback to handle multiple return values by using
set_qflist.
- Remove update_tagstack and leave note for future travelers.
2019-11-26 05:59:40 -08:00
Ashkan Kiani
a9036502dc
Bring vim into local scope
2019-11-24 03:14:03 -08:00
Ashkan Kiani
d410812311
UI tweaks.
...
- Hide diagnostics on client exit
- Stop insert on popup focus.
- Hide popup on insertchar (for signature_help)
2019-11-23 16:14:24 -08:00
Ashkan Kiani
a3d67dac5f
Fix encoding translation in other places.
2019-11-21 16:23:12 -08:00
Ashkan Kiani
c055ca00ce
Remove comments.
2019-11-21 15:55:45 -08:00
Ashkan Kiani
bcae04f6c6
Updates
...
- Use correct implementation of text_edits.
- Send indent options to rangeFormatting and formatting.
- Remove references to vim bindings and filetype from lsp.txt
- Add more examples to docs.
- Add before_init to allow changing initialize_params.
2019-11-21 15:19:06 -08:00
Ashkan Kiani
6a51401378
Merge remote-tracking branch 'origin/master' into lsp-followup
2019-11-21 10:04:32 -08:00
Björn Linse
76e0a8bd93
lsp: transmit "\n" after last line when 'eol' is set
...
Otherwise some servers like clangd will emit spurious
"no newline at end of file" warnings.
2019-11-21 11:12:57 +01:00
Ashkan Kiani
4c7ef3754a
Satisfy lualint.
2019-11-20 16:37:23 -08:00
Ashkan Kiani
c40f8600d2
Change error writer to not be annoying.
2019-11-20 16:16:13 -08:00
Ashkan Kiani
03eb88848c
Change callback resolution to be dynamic.
...
This allows default_callbacks to be specified after client creation to
be considered. Also it simplifies the code.
2019-11-20 16:09:03 -08:00
Ashkan Kiani
a4b7004f48
Move everything to buf & default_callbacks
...
- Rename builtin_callbacks to default_callbacks and slightly change its
semantics:
- No longer contains the default implementations. Instead, any
default_callbacks will be used in preference for our .buf methods.
- Add this to the docs.
2019-11-20 16:03:32 -08:00
Ashkan Kiani
0904ffe387
Bugfixes.
...
- Return after an error in RPC.
- Use an empty vim table for serialization.
2019-11-20 11:36:50 -08:00
Ashkan Kiani
00dc12c5d8
lua LSP client: initial implementation ( #11336 )
...
Mainly configuration and RPC infrastructure can be considered "done". Specific requests and their callbacks will be improved later (and also served by plugins). There are also some TODO:s for the client itself, like incremental updates.
Co-authored by at-tjdevries and at-h-michael, with many review/suggestion contributions.
2019-11-13 21:55:26 +01:00