12 comments

[ 2.9 ms ] story [ 61.3 ms ] thread
Curious if there are any major advantages of this utility over CoC (which also works very well for neovim).

I understand that for Neovim native LSP and lua based plugins are the way forward but curious whether anything is to be gained at this point by adopting this instead of CoC. As a consumer I don't really mind having nodejs around.

[1] https://github.com/neoclide/coc.nvim

I just spent a Saturday about two weeks ago porting my neovim config from vimscript to lua and from CoC to the native LSP client. As it stands right now, the trade offs are many:

- there is no straight forward way to add ESLint, had to end up using a project that takes command line input and transforms it into LSP - works great but feels kind of hacky. Setting up ESLint via CoC is of course a single command.

- if you use CSS-in-JS there is no option for you right now in terms of syntax highlighting and completion. This was also a single command to setup in CoC.

- just how much harder it is to setup stuff in general. CoC is a breeze to setup.

However, it is hard for me to overstate how much performance I got out of the switch. Everything feels super ultra snappy now, the same feel as vanilla neovim with zero plugins. It has been so worth it for me. I expect most of the issues that native LSP has to go away as the ecosystem matures a bit. Right now I'm still not sure I'd recommend the switch.

I felt the same pain as you a month ago.

Just a heads up for you:

eslint support apparently got added recently: https://github.com/neovim/nvim-lspconfig/blob/master/CONFIG....

CSS-in-JS can be enabled with a extension for typescript: https://github.com/microsoft/typescript-styled-plugin

you need a jsconfig.json, but it works fine :)

Thank you! ESLint and Emmet are now as easy to setup as any other language server. Added just 8 days ago, certainly nice to use things which are actively developed and taken care of.
Thanks for sharing the details. Will try it out - if this drastically improves performance some setup overhead is worth it.
I personally use https://github.com/ms-jpq/coq_nvim. Silly name and weird docs -- but it's the fastest completion plugin I've ever used.
Been using this for quite a while as well, the authors commitment to optimization is genuinely inspiring lol.
Now this is really really cool. Thank you for posting.