Last reviewed
Common & useful Extensions for Vim
This is a long list of some plugins I use or have used with VIM/Neovim but is only a small percent of plugins available.
Over time I have switched out plugis for lua plugins so many of these while I have used as some point I don't keep up to date on anymore. These days I run LazyVim, which sets up most of this kind of thing for me, so treat this as a reference list. See Emacs vs. Neovim + LazyVim for more on how I use it.
Lua plugins for Neovim
All of the following are created for Neovim.
Themes
Plugin Installer
- the common plugin manager for Neovim — lazy.nvim
- Neovim 0.12 also added a built-in plugin manager,
vim.pack - Packer was the common choice for a long time but has been unmaintained since 2023, so I wouldn't start with it now
Completion
- Completion Engine — nvim-cmp
- completion for paths — cmp-path
- completion for lsp — cmp-nvim-lsp
- completion using lua-snip — cmp-luasnip
- newer alternative to the above — blink.cmp
Movement
other movement plugins that I have used in the past but no longer use
File Explorers
- nvim-tree — file tree explorer sidebar focused on speed
- neo-tree — file tree explorer sidebar focused on options
- oil — brings file and directory control into neovim
- Telescope File Browser — extention for telescope
- Mini Files — part of mini.files library
LSP & debugging
- nvim-lspconfig — quickstart configs for LSP servers
- mason — installs LSP servers, DAP servers, linters and formatters (replaces the archived nvim-lsp-installer and DAPInstall)
- nvim-dap — debugging (DAP)
- nvim-dap-ui — DAP ui (debugging)
- lazydev — better Lua support when editing your Neovim config (replaces the archived lua-dev/neodev)
- nvim-navic — lsp current code context
Other plugins
- Terminal — toggleterm
- zoxide
- vimwiki
- UndoTree — visual tree for vim's included undo tree
- Glow — popup markdown preview for Neovim.
- better-digraphs
- extended surround editing — vim-surround
- Git plugin — fugitive
- telescope
- telescope-fzf-native — fzf plugin for telescope
- gitsigns
- treesitter
- which-key
- devicons — nice icons for use with a file explorer or list
- smartPairs
- autopairs — automatically closes pairs
- Luasnip — advanced snippets engine
- cmp-buffer — completion from current buffer
- lualine — config for UI components (like bottom bar) written in lua
- nvim-regexplainer — helps with writting regexs
Neovim has also had built-in commenting since 0.10 (gc), so you may not need a plugin like Comment anymore.
Older Vim plugins
PLUG - plugin manager for Vim & Nvim
easymotion - quickly navigate around the screen in vim
default trigger with Leader Leader Plug
example: \ \ w would activate easymotion with word so that you can quickly go to any word on screen.
Conquer of Compleation (COC)
make Vim/Neovim as smart as VSCode
fzf - fuzy finder
requires some filesystem non-vim dependencies
fzf (command line fuzzy finder) github can be a bit to install on some systems but really nice to have also.
bat (syntax highlighting) github
Git plugin - fugitive
Nerdtree
Other plugins you might find useful
Lua functions
Indent detection
Notification Enhancer
Neovim UI Enhancer
Smarter Splits
Bufferline
Better buffer closing
Parenthesis highlighting
Autoclose tags
Context based commenting
Snippet collection
friendly snippets — large collection of snippets for various languages
Formatting and linting
none-ls — the community continuation of null-ls
Color highlighting
nvim-colorizer — maintained fork of the original

