UP | HOME

Main Plugins

LSP is the future due to enormous momentum around VS Code actively shilled by Microsoft. This is OK because we will use these LSP-servers with our Neovim and Emacs to avoid Javascript bloatware.

There are tens of ready-made Neovim configurations, such as LunarVim/LunarVim or individual configs, like folke/dot, to be ripped off. Notice that they are all bloated and most of guys are just copy-pasting code from each other.

The nvim-starter at Github is a decent step-by-step guide almost without bloat.

Unlike Emacs, the entry barrier for Neovim/Lua is very low, almost as for Javascript, so we have very crappy low effort code everywhere.

The real challenge is to give to your whole configuration the right, modular structure without too much of unnecessary wrapping.

So, what is good about Neovim?

Most of all, we want, at least in a theory, to delegate all the tedious tasks to a competent, determined, well-educated and pricniple-guided maintainers (both of the editor and of the plugins), with habitual attention to details and focus on just right interfaces and APIs.

Yes, yes, I know lmao.

Notice that LSP-clients and the tree-sitter are already parts of Emacs.

Notice also that we absolutely DO NOT WANT any kind of “modelines” (at all), “file explorers”, “telescopes” and all the related bloat. vi should start as an empty screen.

nvim-treesitter-textobjects

targets.vim

Comment.nvim

indent-blankline.nvim

gitsigns.nvim

LuaSnip

L3MON4D3/LuaSnip - a snippet engine written in Lua. It has a nvim-cmp integration, since it is a completion plugin which offer to activate particular snippets.

nvim-cmp

hrsh7th/nvim-cmp - a completion plugin done right. It has its own modules.

nvim-lspconfig

neovim/nvim-lspconfig - configures the builtin LSP client to properly set up corresponding LSP-servers

null-ls

jose-elias-alvarez/null-ls.nvim - this is a really good one. It wraps individual linters and formatters, similar to what ale ALE does, but acts as an LSP-server with these capabilities.

Yes, you could have more than one at the same buffer.

neodev

folke/neodev.nvim - a plugin for editing your vim lua configs or developing your own lua plugins. It leverages sumneko-lua, which is a LSP-server for Lua.

Author: <schiptsov@gmail.com>

Email: lngnmn2@yahoo.com

Created: 2023-08-08 Tue 18:38

Emacs 29.1.50 (Org mode 9.7-pre)