X-Git-Url: https://codewiz.org/gitweb?a=blobdiff_plain;f=Nwiz;h=9c9e5acd91f2378da602278fa4052f659ee92b28;hb=605cb06d0e9b8fa057c33791187210c0bdfd09d9;hp=2374a6cd91ab7d5d2d6b651dafdeec4928e1a52b;hpb=bcbd9436f787dc0a3e65ae565492cb1ec30a007b;p=wiki.git diff --git a/Nwiz b/Nwiz index 2374a6c..9c9e5ac 100644 --- a/Nwiz +++ b/Nwiz @@ -1,4 +1,4 @@ -== nwiz.lua - A Neovim config for a more civilized age == +== nwiz == === What's this? === @@ -61,14 +61,41 @@ Any time you edit the list of plugins, run ##:PackerSync## to install, uninstall === Language Servers === -TODO +Neovim 0.7 comes with a built-in LSP client. The official [[https://github.com/neovim/nvim-lspconfig | nvim-lspconfig]] +plugin abstracts the details of spawning the correct Language Server for a multitude of filetypes. + +Download and installation of language servers can be managed automatically by +[[https://github.com/williamboman/nvim-lsp-installer | nvim-lsp-installer]], but I find that it's +simpler (and much safer!) to install the already packaged ones from Linux distro. This also ensures +that they stay aligned with the system toolchain. + + * Rust: rust-analyzer + * C++: clangd + * Python: python-lsp-server (which uses mypy, pylint, autopep8...) === Treesitter syntax parsers === Install the ones you like from this list: https://github.com/nvim-treesitter/nvim-treesitter#supported-languages -For instance: +For instance, I installed these: {{{ -:TSInstall c cpp rust lua python bash vim -}}} \ No newline at end of file +:TSInstall cpp rust lua python bash vim +}}} + +You can refresh your parsers at any time with ##:TSUpdate## + +=== Semantic completion === + +Just press TAB! + +TODO: docs for [[https://github.com/hrsh7th/nvim-cmp#readme | cmp-nvim]] + + +=== Finding and opening files === + +TODO: docs for [[https://github.com/nvim-telescope/telescope.nvim | telescope.nvim]] + +=== Realtime diagnostics and hints === + +TODO: document