-
Notifications
You must be signed in to change notification settings - Fork 12
Lsp
The plugins covered in the previous section are, while powerful, insufficient, as one crucial feature is missing: autocompletion. After all, without autocompletion, neovim is not as ideal for most people as their NO. 1 development tool as other IDEs would be. This page will introduce the Lsp set up by IceNvim.
IceNvim uses neovim's built-in lsp. While I am aware that many chooses coc.nvim instead (I myself started with coc.nvim when I started out with vim), I myself prefer neovim lsp, as it consumes less resource and is more flexible. Therefore, IceNvim needs a package manager for the numerous lsp servers.
IceNvim uses mason.nvim, a portable package manager that facilitates easy installation and management of lsp servers, dap servers, linters, and formatters. You can use the Mason
command to check out what is installed.
IceNvim uses nvim-cmp for completion. Not only does it provide completion for your codes, but it does that in command mode as well and provides useful code snippets.
IceNvim uses none-ls for formatting, which is a replacement for the wonderful but archived null-ls. However, the name "null-ls" remains for historic reasons.
IceNvim uses flutter-tools and rust-tools for flutter and rust development respectively.
For any problem you might encounter, you might want to first read through this wiki, as it contains quite a lot on how to use IceNvim properly.
Hope you enjoy using IceNvim.