The required capabilities to be set are already correctly set by
nvim-cmp, no need to set them again. We had added that to enable rust
snippet expansion earlier.
Also see older revisions of this document.
https://github.com/neovim/nvim-lspconfig/wiki/Snippets
vim.diagnostic framework is now available and can be used outside of
LSP. This means the same functions can now work for plugins providing
diagnostics via this framework like nvim-lint and null-ls.
nvim-compe has been deprecated. While we tried to make it a few days
without any completion support, in javascript/typescript could not get
the default omnicompletion to work at all. It is possible that this
could be due to nvim-lsp-ts-utils/null-ls but who is gonna debug.
Also tried MUcomplete but it just would not work. There are open issues
on this. See https://github.com/neovim/neovim/issues/12390 and also
https://github.com/lifepillar/vim-mucomplete/issues/179.
So here we are with nvim-cmp. Some observations in comparison to compe
before. Using buffer completion seems not possible as most of the times
LSP completion items then do not turn up. Do not know if this is server
specific but at least it is the case with Rust. compe seemed better
performance wise especially in tsserver and considering the buffer
problem mentioned above. Also, even with vsnip added as the completion
source can't seem to get any snippet specific completions working.
Could have ditched all completion support if I did not have to use
tsserver but need it for work currently. So we will stick to enabling
this and hopefully it improves in future.
Fuck nodejs, javascript and typescript.
For references see,
https://github.com/kristijanhusak/neovim-confighttps://github.com/sQVe/dotfiles/tree/master/config/nvim
47b1578 did not actually fix it. We need to keep using 'gq' but actually
correctly specify whether we want normal or visual mode. Also disable
range formatting explicitly for tsserver.
If range formatting is supported we should check that first to enable
it else since most LSP servers support formatting, without range
formatting check being first, it would never be enabled.
We use galaxyline for the status line and it already provides
LSP diagnostics info. So drop lsp-status. While the progress
message during the loading in status line is nice, may be will
incorporate it later by picking only the required pieces.
While at it, expose all diagnostics via statusline using galaxyline
components.
This is not available in upstream nvim_lsp repository but works with a
simple lua config addition for the same.
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>