Skip to content
On this page

Vim plugins

Below is a list of plugins I use.

lazy.nvim is great plugin manager.

Utility

  • Ale - Check syntax in Vim asynchronously and fix files, with LSP support.
  • Cool - Stop matching after search is done.
  • Auto Pairs - Insert or delete brackets, parens, quotes in pair.
  • Nerdcommenter - Quick comments.
  • RipGrep - Use RipGrep in Vim and display results in a quickfix list.
  • vimproc - Interactive command execution.
  • Repeat - Enable repeating supported plugin maps with ".".
  • Surround - Quoting/parenthesizing made simple.
  • Easy align - Simple, easy-to-use alignment.
  • fzf - FZF search.
  • Incsearch - Improved incremental searching.
  • Easymotion - Vim motions on speed.
  • Quickrun - Run commands quickly.

Git

Nix

  • Nix - Vim configuration files for Nix.

Looks

  • ayu - I only change locally mirage theme colors to #1e2431 so background color matches my other GitHub themes. (in ~/.config/nvim/plugged/ayu-vim/colors)

Interesting (not using)

Utility

  • Hop - Neovim motions on speed.
  • LunarVim - Opinionated, extensible, and fast IDE layer for Neovim. (Docs)
  • RubberDuck GPT3 - Simulate rubber duck programming by using the chatGPT API to generate code suggestions and natural language explanations.
  • kommentary - Neovim commenting plugin, written in lua.
  • legendary.nvim - Legend for your keymaps and commands, with which-key.nvim integration.
  • Indent Blankline - Indent guides for Neovim.
  • fuzzy-motion.vim - Jump to fuzzy match word.
  • jaq-nvim - Quickrun Plugin for Neovim in Lua.
  • vim-vsnip - Snippet plugin for vim/nvim that supports LSP/VSCode's snippet format.
  • coq.nvim - Fast nvim completion. SQLite, concurrent scheduler, hundreds of hours of optimization.
  • Navigator - Navigate codes like a breeze. Exploring LSP and Treesitter.
  • distant.nvim - Edit files, run programs, and work with LSP on a remote machine from the comfort of your local environment.
  • fzf-lua - Improved fzf.vim written in lua.
  • Goto Preview - Small Neovim plugin for previewing definitions using floating windows.
  • Zen Mode - Distraction-free coding for Neovim.
  • ssr.nvim - Structural search and replace for Neovim.
  • Trouble - Pretty diagnostics, references, telescope results, quickfix and location list to help you solve all the trouble your code is causing.
  • nvim-surround - Surround selections, stylishly.
  • mapx.lua - Neovim lua plugin to make mapping more manageable.
  • Lightspeed - Making on-screen navigation as quick and efficient as possible.
  • ai.vim - Minimalist Neovim plugin for generating and editing text using OpenAI and GPT.
  • nvim-bufferline.lua - Snazzy bufferline for Neovim.
  • Which Key - Displays a popup with possible keybindings of the command you started typing.
  • nvim-notify - Fancy, configurable, notification manager for NeoVim.
  • nvim-dap-ui - UI for nvim-dap which provides a good out of the box configuration.
  • far.vim - Find And Replace.
  • LuaSnip - Snippet Engine for Neovim written in Lua.
  • marks.nvim - Better user experience for interacting with and manipulating Vim marks.
  • TreeSJ - Splitting/joining blocks of code.
  • nvim-magic - Pluggable framework for using AI code assistance in Neovim.
  • instant.nvim - Collaborative editing in Neovim using built-in capabilities.
  • any-jump.vim - Vim code inspection plugin for finding definitions and references/usages.
  • FTerm.nvim - No nonsense floating terminal written in lua.
  • modes.nvim - Highlight UI elements based on current mode.
  • nvim-cmp - Completion plugin for neovim coded in Lua.
  • nvim-treesitter-context - Show code context.
  • LSP-format.nvim - Wrapper around Neovims native LSP formatting.
  • ddu.vim - Dark deno-powered UI framework for neovim/Vim8.
  • nvim-comment - Comment toggler for Neovim, written in Lua.
  • barbar.nvim - Tabs, as understood by any other editor.
  • nvim-lspfuzzy - Neovim plugin to make the LSP client use FZF.
  • replacer.nvim - Powerful refactoring tool for nvim.
  • Vista.vim - View and search LSP symbols, tags in Vim/NeoVim.
  • vim-clap - Modern generic interactive finder and dispatcher.
  • nvim-lsp-installer - Companion plugin for nvim-lspconfig that allows you to seamlessly install LSP servers locally.
  • vim-picker - Vim plugin for fuzzy selection of files, buffers, tags, and more.
  • Conjure - Interactive evaluation for Neovim (Clojure, Fennel, Janet).
  • Persistence - Simple session management for Neovim.
  • vim-smoothie - Smooth scrolling for Vim done right.
  • express.vim - Easily create custom Vim operators using expressions and substitutions.
  • completion-nvim - Async completion framework aims to provide completion to neovim's built in LSP written in Lua.
  • vim-floaterm - Use nvim/vim's builtin terminal in the floating/popup window.
  • WakaTime - Automatic time tracking.
  • Dash - Search Dash app.
  • Flash - Navigate your code with search labels, enhanced character motions and Treesitter integration.
  • Hydra.nvim - Bind a bunch of key bindings together.
  • iron.nvim - Interactive Repl Over Neovim.
  • Leap.nvim - Motion plugin that keeps you in the zone. (HN)
  • flit.nvim - Enhanced f/t motions for Leap.
  • vim-be-good - Plugin designed to make you better at vim by creating a game to practice basic movements in.
  • context.vim - Vim plugin that shows the context of the currently visible buffer contents.
  • Quick scope - Lightning fast left-right movement.
  • vim-visual-multi - Multiple cursors project for vim/neovim.
  • move - Plugin to move lines and selections up and down.
  • Coc - Intellisense engine for vim8 & neovim, full language server protocol support as VSCode.
  • nvim-cheat.sh - cheat.sh integration for neovim in elegant way.
  • vim-pencil - Rethinking Vim as a tool for writing.
  • Mind.nvim - Organizer tool for Neovim. (Video overview)
  • NCM2 - Slim, Fast and Hackable Completion Framework for Neovim.
  • yaml-companion.nvim - Get, set and autodetect YAML schemas in your buffers.
  • nest.nvim - Neovim utility plugin to define keymaps in concise, readable, cascading lists and trees.
  • Neoformat - Format code.
  • SnippetGenie - Snippet creation tool for Neovim.
  • ChatGPT.nvim - Neovim plugin for interacting with OpenAI GPT-3 chatbot, providing an easy interface for exploring GPT-3 and NLP.
  • lsp-inlayhints.nvim - Partial implementation of LSP inlay hint.
  • rest.nvim - Fast Neovim HTTP client written in Lua.
  • Snippets - Snippet files for various programming languages.
  • Telescope.nvim - Next generation library for creating floating pickers with advanced features.
  • SelectEase - Select text using Treesitter Queries and start typing right away.
  • Deoplete - Asynchronous completion framework.
  • LanguageClient-neovim - Language Server Protocol (LSP) support for vim and neovim.
  • live-command.nvim - Text editing in Neovim with immediate visual feedback.
  • Neural - Blazingly fast AI code generation, editing and completion plugin for Neovim.
  • Autoformat - Easy code formatting.
  • refactoring.nvim - Refactoring library based off the Refactoring book by Martin Fowler.
  • traces.vim - Range, pattern and substitute preview for Vim.
  • Which key - Show keybindings in popup.
  • Sandwich - The set of operator and textobject plugins to search/select/edit sandwiched textobjects.
  • sg.nvim - Plugin focused on bringing many of the features of sourcegraph.com into Neovim.
  • Titlecase - Titlecase text.
  • Neo-Minimap - Plugin for Neovim that lets you create your own "minimap" from Treesitter Queries or Vim Regex.
  • neoinclude.vim - Include completion framework for neocomplete/deoplete.
  • neosnippet.vim - Adds snippet support.
  • nvim-ufo - Make Neovim's fold look modern and keep high performance.
  • Polyglot - Solid language pack.
  • Heirline.nvim - No-nonsense Neovim Statusline plugin designed around recursive inheritance to be exceptionally fast and versatile.
  • Formatter.nvim - Format runner for neovim, written in Lua.
  • True Zen - Clean and elegant distraction-free writing for NeoVim.
  • Auto save - Automatically save changes to disk.
  • Ag - Plugin for the_silver_searcher, 'ag'.
  • nvim-various-textobjs - Bundle of more than a dozen new text objects for Neovim.
  • Undotree - Undo history visualizer.
  • Aerojump - Fuzzy-match searcher/jumper for Neovim with the goal of quick keyboard navigation.
  • Tabular - Text filtering and alignment.
  • Codeium - Free, ultrafast Copilot alternative for Vim and Neovim.
  • vim-ultest - Ultimate testing plugin for (Neo)Vim.
  • Easyclip - Simplified clipboard functionality.
  • Yank stack - Lightweight implementation of emacs's kill-ring for Vim.
  • Better whitespace - Better whitespace highlighting.
  • Rename - Rename the current file in the vim buffer + retain relative path.
  • Mkdir - Automatically create any non-existent directories before writing the buffer.
  • NerdTree - File system explorer.
  • Commentary - Comment stuff out.
  • NERDTree Git - Plugin of NERDTree showing git status flags.
  • Gina - Asynchronously control git repositories.
  • Codi - Interactive scratchpad for hackers.
  • Vinegar - Enhances netrw.
  • Dressing.nvim - Neovim plugin to improve the default vim.ui interfaces.
  • command_center.nvim - Create and manage keybindings and commands in a more organized manner, and search them quickly through Telescope.
  • chatgpt.vim - Query ChatGPT in Neovim.
  • Dirvish - Directory viewer.
  • Startup Time - Profile startup time.
  • Sneak - Jump to any location specified by two characters.
  • Limelight - Highlight only active paragraphs.
  • Unimpaired - Pairs of handy bracket mappings.
  • Multiple cursors - Sublime Text style multiple selections.
  • Table mode - Instant table creation.
  • Neovim Treesitter Playground - View treesitter information directly in Neovim.
  • Abolish - Search for, substitute, and abbreviate multiple variants of a word.
  • Gutentags - Manages your tag files.
  • Vimtex - LaTeX support.
  • inc-rename.nvim - Incremental LSP renaming based on Neovim's command-preview feature.
  • nvim-compleet - Neovim autocompletion framework written in Rust.
  • Prettier - Prettier support.
  • Goyo - Distraction-free writing.
  • Ultisnips - Ultimate snippet solution for Vim.
  • Incsearch & Easymotion - Incsearch & easymotion integration.
  • Last place - Intelligently reopen files at your last edit position.
  • No Neck Pain - Simple plugin to center the currently focused buffer to the middle of the screen.
  • Sleuth - Heuristically set buffer options.
  • Obsession - Continuously updated session files.
  • Wintabs - Modern buffer manager.
  • Vim LSP
  • Neotest - Extensible framework for interacting with tests within NeoVim.
  • incline.nvim - Lightweight floating statuslines for Neovim.
  • Fidget.nvim - Standalone UI for nvim-lsp progress.
  • Rooter - Changes Vim working directory to project root (identified by presence of known directory or file).
  • vimspector - Multi-language debugging system for Vim.
  • tabout.nvim - Supercharge your workflow and start tabbing out from parentheses, quotes, and similar contexts today.
  • Completor - Async completion framework made ease.
  • File Explorer - Simple tree for neovim written in lua.
  • Defx - Dark powered file explorer implementation.
  • coc-explorer - Explorer for coc.nvim.
  • nvim-compe - Auto completion plugin for nvim.
  • fzf-preview.vim - coc extensions and Neovim plugin that provides collection of features to assist file management using fzf.
  • overseer.nvim - Task runner and job management plugin for Neovim.
  • vimspector - Multi language graphical debugger for Vim.
  • nvim-lsputils - Better defaults for nvim-lsp actions.
  • test.vim - Vim wrapper for running tests on different granularities.
  • Sniprun - Code runner plugin for neovim.
  • fzf-lsp.nvim - Enable the power of fzf fuzzy search for the neovim built in lsp.
  • vim-illuminate - Automatically highlighting other uses of the current word under the cursor.
  • Snap - Fast finder system for neovim.
  • fwatch.nvim - Lets you watch files or directories for changes and then run vim commands or lua functions.
  • Neorg - Life Organization Tool Written in Lua. (HN)
  • nabla.nvim - Take your scientific notes in Neovim.
  • Copilot.vim - Neovim plugin for GitHub Copilot.
  • harpoon - Get you where you want with the fewest keystrokes.
  • ddc.vim - Dark deno-powered completion framework for neovim/Vim8.
  • mini.nvim - Collection of minimal, independent, and fast Lua modules dedicated to improve Neovim.
  • lualine.nvim - Blazing fast and easy to configure neovim statusline plugin written in pure lua.
  • nvim-spectre - Search panel for neovim.
  • Fine Command Line - Enter ex-commands in a nice floating input.
  • Searchbox - Start your search from a more comfortable place, say the upper right corner.
  • Vim Highlighter - Highlight words and expressions.
  • Octo.nvim - Edit and review GitHub issues and pull requests from the comfort of your favorite editor.
  • Comment.nvim - Smart and Powerful commenting plugin for neovim.
  • aerial.nvim - Neovim plugin for a code outline window.
  • virtual-types.nvim - Shows type annotations for functions in virtual text using built-in LSP client.
  • sqls.nvim - Neovim plugin for sqls that leverages the built-in LSP client.
  • Neo-tree - Neovim plugin to manage the file system and other tree like structures.
  • lazy-lsp.nvim - Neovim plugin to auto install LSP servers.
  • Noice - Highly experimental plugin that completely replaces the UI for messages, cmdline and the popupmenu.
  • nvim-lsp-compl - Fast and asynchronous auto-completion plugin for Neovim, focused on LSP.
  • inlay-hints.nvim - Neovim support for LSP Inlay Hints.
  • hover.nvim - Hover plugin framework for Neovim.
  • TreeSetter - Place equals, semicolons, commas and double points automatically for you.

Looks

Syntax

JavaScript

TypeScript

Rust

Python

Go

  • go.nvim - Modern Go development plugin for Neovim, based on nvim-lsp, treesitter and Dap.
  • Vim Go - Go development.
  • Nvim Go - Go development plugin written in pure Go.
  • Deoplete Go - Asynchronous Go completion.

C

Rust

  • Vim Racer - Allows vim to use Racer for Rust code completion and navigation.

Git

  • Gitv - See Git branching history.
  • Gitgutter - Shows git diff in the gutter (sign column) and stages/undoes hunks.
  • vimagit - Ease your git workflow within vim.
  • Neogit - Magit for neovim.
  • gitsigns.nvim - Git integration for buffers.

Markdown

Lightline

  • lightline-ale - Provides ALE indicator for the lightline vim plugin.

OCaml

  • Merlin - Context sensitive completion for OCaml in Vim and Emacs.

Vim

  • Neco - Vim source for neocomplete/deoplete.

Clojure

  • vim-iced - Clojure Interactive Development Environment for Vim8/Neovim.

Ruby

  • Endwise - Wisely add "end" in ruby, endfunction/endif/more in vim script, etc.

Nix

Reason