Awesome Neovim
Collections of awesome Neovim plugins. Mostly targeting Neovim specific features. This means vim-compatible plugins are not listed here.
Neovim is a Vim-based text editor engineered for extensibility and usability, to encourage new applications and contributions.
Contents
Plugin Manager
-
lewis6991/pckr.nvim - Spiritual successor of
wbthomason/packer.nvim
.
-
savq/paq-nvim - Neovim package manager written in Lua.
-
NTBBloodbath/cheovim - Neovim configuration switcher written in Lua. Inspired by chemacs.
-
chiyadev/dep - An alternative to packer.nvim. It was built to be even better and easier to use. Context can be found here.
-
folke/lazy.nvim - A modern plugin manager, featuring a graphical interface, async execution, a lockfile and more š¤.
-
roobert/activate.nvim - A plugin installation system designed to complement
folke/lazy.nvim
.
-
nvim-neorocks/rocks.nvim - A modern approach to plugin management using Luarocks, inspired by Cargo.
-
echasnovski/mini.nvim#mini.deps - Module of
mini.nvim
for managing other plugins. Uses Git and built-in packages to install, update, clean, and snapshot plugins.
LSP
(requires Neovim 0.5)
-
neovim/nvim-lspconfig - Quickstart configurations for the LSP client.
-
nvim-lua/lsp-status.nvim - This is a plugin/library for generating statusline components from the built-in LSP client.
-
RishabhRD/nvim-lsputils - Better defaults for nvim-lsp actions.
-
nvimdev/lspsaga.nvim - A light-weight LSP plugin based on Neovimās built-in LSP with a highly performant UI.
-
kosayoda/nvim-lightbulb - The plugin shows a lightbulb in the sign column whenever a
textDocument/codeAction
is available at the current cursor position.
-
roobert/action-hints.nvim - Show information about the word under the cursor in the statusline or as virtual text.
-
onsails/lspkind.nvim - The plugin adds vscode-like icons to Neovim LSP completions.
-
ojroques/nvim-lspfuzzy - A small plugin to make the LSP client use FZF.
-
gfanto/fzf-lsp.nvim - Enable the power of FZF fuzzy search for the Neovim built in LSP.
-
ray-x/lsp_signature.nvim - LSP signature hint when you type.
-
smjonas/inc-rename.nvim - Provides an incremental LSP rename command based on Neovimās command-preview feature.
-
rmagatti/goto-preview - Previewing native LSPās goto definition calls in floating windows.
-
jubnzv/virtual-types.nvim - Show type annotations as virtual text.
-
marilari88/twoslash-queries.nvim - Provide inline virtual text displaying TypeScript types for the inspected variables.
-
ray-x/navigator.lua - Learn existing code quickly and navigate code like a breeze. A swiss army knife makes exploring LSP and š²Treesitter symbols a piece of š°.
-
simrat39/symbols-outline.nvim - A tree like view for symbols using the Language Server Protocol. Supports all your favourite languages.
-
hedyhli/outline.nvim - A significantly enhanced and refactored fork of
symbols-outline.nvim
.
-
stevearc/aerial.nvim - A code outline window for skimming and quick navigation.
-
SmiteshP/nvim-navbuddy - A simple popup display that provides breadcrumbs like navigation features using LSP.
-
tamago324/nlsp-settings.nvim - Setup LSP with JSON or YAML files.
-
jakewvincent/texmagic.nvim - Enhance the lspconfig settings for Texlab by defining any number of custom LaTeX build engines and selecting them with magic comments.
-
nanotee/nvim-lsp-basics - Basic wrappers for LSP features.
-
aznhe21/actions-preview.nvim - Fully customizable previewer for LSP code actions.
-
mfussenegger/nvim-lint - An asynchronous linter plugin, complementary to the built-in Language Server Protocol support.
-
b0o/SchemaStore.nvim - Provide access to the SchemaStore catalog.
-
ldelossa/litee.nvim - Neovimās missing IDE features.
-
j-hui/fidget.nvim - Standalone UI for LSP progress.
-
scalameta/nvim-metals - Neovim plugin for Metals, the Scala language server, using Neovimās builtin LSP.
-
junnplus/lsp-setup.nvim - A simple wrapper for nvim-lspconfig and nvim-lsp-installer to easily setup LSP servers.
-
amrbashir/nvim-docs-view - Display LSP hover documentation in a side panel.
-
roobert/hoversplit.nvim - Automatically updated documentation and information about code symbols in a split window.
-
mfussenegger/nvim-jdtls - Extensions for the built-in LSP support for eclipse.jdt.ls.
-
Kasama/nvim-custom-diagnostic-highlight - Inline diagnostics popup-highlight much like coc-nvim but based on
vim.diagnostic
.
-
mrcjkb/haskell-tools.nvim - Seamless integration of Neovim with Haskell development tools like haskell-language-server and Hoogle.
-
ranjithshegde/ccls.nvim - Use off-spec extensions of ccls LSP and browse AST.
-
idanarye/nvim-buffls - Add LSP functionality to specific Neovim buffers.
-
DNLHC/glance.nvim - A pretty window for previewing, navigating and editing your LSP locations.
-
deathbeam/lspecho.nvim - Echo LSP progress to cmdline or embed it in status line.
-
linrongbin16/lsp-progress.nvim - A performant LSP progress status.
-
jinzhongjia/LspUI.nvim - A modern and useful UI that wraps LSP operations.
-
VidocqH/lsp-lens.nvim - Display function references above function definition like IDEA codelens.
-
chrisgrieser/nvim-dr-lsp - Status line component showing the number of LSP definition and reference of the token under the cursor.
-
Wansmer/symbol-usage.nvim - Display references, definitions and implementations of document symbols.
-
creativenull/efmls-configs-nvim - An unofficial collection of linters and formatters configured for efm-langserver to work with builtin LSP.
-
creativenull/diagnosticls-configs-nvim - An unofficial collection of linters and formatters configured for diagnostic-languageserver to work with builtin LSP.
-
hinell/lsp-timeout.nvim - Automatically start/stop idle/unused LSP servers; keeps RAM usage low.
-
nvimtools/none-ls.nvim - Null-ls.nvim reloaded / Use Neovim as a language server to inject LSP diagnostics, code actions, and more via Lua.
-
zeioth/none-ls-autoload.nvim - Auto-load/Auto-unload none-ls sources installed with mason. It supports builtin sources and external sources.
-
vxpm/ferris.nvim - Interact with Rust-Analyzerās LSP extensions.
-
mrcjkb/rustaceanvim - A heavily modified fork of rust-tools.nvim that does not require a
setup
call and does not depend on nvim-lspconfig.
-
soulis-1256/eagle.nvim - Mouse-hover LSP hints.
-
stevanmilic/nvim-lspimport - Automatically resolves imports for undefined terms. Useful with
pyright
language server.
-
jmbuhr/otter.nvim - Provides LSP features and a nvim-cmp completion source for languages embedded in other documents.
-
lopi-py/luau-lsp.nvim - A luau-lsp extension to improve your experience.
-
LukasPietzschmann/boo.nvim - Quickly pop-up some LSP-powered information of the thing your cursor is on.
-
zeioth/garbage-day.nvim - Garbage collector that stops inactive LSP clients to free RAM.
-
luckasRanarison/clear-action.nvim - Enhances LSP code actions with fully customizable signs, personalized actions, and server-specific mappings, making code actions more predictable.
-
rachartier/tiny-inline-diagnostic.nvim - Display prettier diagnostic messages. Display one line diagnostic messages where the cursor is, with icons and colors.
-
chrisgrieser/nvim-lsp-endhints - Display LSP inlay hints at the end of the line, rather than within the line.
-
rachartier/tiny-code-action.nvim - Provides a simple way to run and visualize code actions with Telescope.
LSP Installer
Diagnostics
Completion
AI
-
Aaronik/GPTModels.nvim - GPTModels - a stable, clean, multi model, window based LLM AI tool.
-
Robitx/gp.nvim - ChatGPT like sessions and instructable text/code operations in your favorite editor.
-
dpayne/CodeGPT.nvim - Provides commands to interact with ChatGPT, the focus is around code related usages.
-
jackMort/ChatGPT.nvim - Effortless Natural Language Generation with OpenAIās ChatGPT API.
-
CamdenClark/flyboy - Simple interaction with ChatGPT in a markdown buffer. Supports GPT-4 and Azure OpenAI.
-
gsuuon/model.nvim - Integrate LLMs via a prompt builder interface. Multi-providers including OpenAI (+ compatibles), PaLM, HuggingFace and local engines like llamacpp.
-
dense-analysis/neural - Integrate LLMs for generating code, interacting with chat bots, and more.
-
jpmcb/nvim-llama - LLM (Llama 2 and llama.cpp) wrappers.
-
David-Kunz/gen.nvim - Generate text using LLMs (via Ollama) with customizable prompts.
-
kiddos/gemini.nvim - Bindings to Google Gemini API.
-
olimorris/codecompanion.nvim - Copilot chat like experience via a buffer. Supports Anthropic, Ollama and OpenAI.
-
simplegpt.nvim - Provide a simple yet flexible way to construct and send questions to ChatGPT.
-
Exafunction/codeium.nvim - Free, ultrafast Copilot alternative. Supports LSP and Tree-sitter.
-
CopilotC-Nvim/CopilotChat.nvim - A chat interface for GitHub Copilot that allows you to directly ask and receive answers to coding-related questions.
-
tzachar/cmp-ai - This is a general purpose AI source for nvim-cmp, easily adapted to any restapi supporting remote code completion.
-
milanglacier/minuet-ai.nvim - Minuet offers code completion from popular LLMs including OpenAI (compatible), Gemini, Claude, and more providers. Dance with intelligence in your code.
Programming Languages Support
Golang
YAML
Web Development
Markdown and LaTeX
PHP
-
gbprod/phpactor.nvim - Lua version of the Phpactor Vim plugin to take advantage of the latest Neovim features.
-
ta-tikoma/php.easy.nvim - Methods of assistance in PHP development: create classes, constants, methods, properties; simple copying and deleting of an entity.
Language
Syntax
Snippet
Register
Marks
-
cbochs/grapple.nvim - Provides tagging, cursor tracking, and immediate navigation to important project files.
-
chentoast/marks.nvim - A better user experience for viewing and interacting with Vim marks.
-
ThePrimeagen/harpoon - A per project, auto updating and editable marks utility for fast file navigation.
-
otavioschwanck/arrow.nvim - Like harpoon, but with a different UX, single keybinding needed and statusline support.
-
ofirgall/open.nvim - Open the current word with custom openers, GitHub shorthand for example.
-
LeonHeidelbach/trailblazer.nvim - TrailBlazer introduces a stack based mark system that enables a completely new dynamic and super fast workflow using project wide marks.
-
tomasky/bookmarks.nvim - Bookmarks with global file storage, written in Lua.
-
LintaoAmons/bookmarks.nvim - Your new bookmarks option: simple yet powerful.
-
desdic/marlin.nvim - Like harpoon, but with key differences like project path, split support, no UI.
-
fnune/recall.nvim - Recall refines the use of marks by focusing on global marks, streamlining their usage and enhancing their visibility and navigability.
-
niuiic/track.nvim - Enhanced mark with description. Track the thought process of reading source code.
-
tristone13th/lspmark.nvim - Sane project-wise bookmarks with persistent storage based on LSP.
Search
Fuzzy Finder
-
nvim-telescope/telescope.nvim - Telescope.nvim is a highly extendable fuzzy finder over lists. Built on the latest awesome features from Neovim core. Telescope is centered around modularity, allowing for easy customization.
-
vijaymarupudi/nvim-fzf - A Lua API for using FZF (Neovim >= 0.5). Allows for full asynchronicity for UI speed and usability.
-
camspiers/snap - An extensible fuzzy finder. Similar to Telescope, and optimized for performance, especially when grepping in large codebases.
-
ibhagwan/fzf-lua - The Lua version of
fzf.vim
, high-performance and fully async, supports nvim-web-devicons
, git indicators, LSP, quickfix/location lists and more. Also supports skim
as its fzf binary.
-
jvgrootveld/telescope-zoxide - Telescope integration for zoxide , a smart directory picker that tracks your usage.
-
echasnovski/mini.nvim#mini.fuzzy - Module of
mini.nvim
with functions to perform fuzzy matching of one string to others along with fast Telescope sorter.
-
axkirillov/easypick.nvim - Easypick lets you easily create Telescope pickers from arbitrary console commands.
-
linrongbin16/fzfx.nvim - A fuzzy finder that updates on every keystroke.
-
echasnovski/mini.nvim#mini.pick - Module of
mini.nvim
with general purpose interactive non-blocking picker that has one window design, toggleable preview, flexible and fast default match, and much more.
-
echasnovski/mini.nvim#mini.extra - Module of
mini.nvim
with extra functionality for its modules. Contains 20+ āmini.pickā pickers, āmini.aiā textobjects, and more.
-
fdschmidt93/telescope-egrepify.nvim - Telescope plugin for better
rg
flags in live_grep
.
File Explorer
Project
Color
Colorscheme
Tree-sitter Supported Colorscheme
Tree-sitter is a new system introduced in Neovim 0.5 that incrementally parses your code into a tree that works, even with errors in your syntax. These colorschemes have specifically set colors for Tree-sitter highlight groups. Vim colorschemes will work with the new groups out of the box.
-
sontungexpt/witch - The primary stinvim distro colorscheme includes the default feature of dimming inactive windows, along with various other customization options for users.
-
Abstract-IDE/Abstract-cs - Colorscheme written in Lua, specially made for roshnivim with Tree-sitter support.
-
rafamadriz/neon - Customizable colorscheme with excellent italic and bold support, dark and light variants. Made to work and look good with Tree-sitter.
-
tomasiser/vim-code-dark - A dark color scheme heavily inspired by the look of the Dark+ scheme of Visual Studio Code.
-
Mofiqul/vscode.nvim - A Lua port of vim-code-dark colorscheme with vscode light and dark theme.
-
askfiy/visual_studio_code - A Neovim theme that highly restores vscode, so that your friends will no longer be surprised that you use Neovim, because they will think you are using vscode.
-
marko-cerovac/material.nvim - Material.nvim is a highly configurable colorscheme written in Lua and based on the material palette.
-
bluz71/vim-nightfly-colors - A dark midnight colorscheme with modern Neovim support including Tree-sitter.
-
bluz71/vim-moonfly-colors - A dark charcoal colorscheme with modern Neovim support including Tree-sitter.
-
ChristianChiarulli/nvcode-color-schemes.vim - Nvcode, onedark, nord colorschemes with Tree-sitter support.
-
folke/tokyonight.nvim - A clean, dark and light Neovim theme written in Lua, with support for LSP, Tree-sitter and lots of plugins.
-
comfysage/evergarden - A comfy Neovim colorscheme for cozy morning coding.
-
sainnhe/sonokai - High Contrast & Vivid Color Scheme based on Monokai Pro.
-
nyoom-engineering/oxocarbon.nvim - A dark and light Neovim theme written in fennel, inspired by IBM Carbon.
-
kyazdani42/blue-moon - A dark color scheme derived from palenight and carbonight.
-
mhartington/oceanic-next - Oceanic Next theme.
-
nvimdev/zephyr-nvim - A dark colorscheme with Tree-sitter support.
-
rockerBOO/boo-colorscheme-nvim - A colorscheme with handcrafted support for LSP, Tree-sitter.
-
jim-at-jibba/ariake.nvim - A port of the great Atom theme. Beautiful, dark colour scheme.
-
Th3Whit3Wolf/onebuddy - Light and dark atom one theme.
-
ishan9299/modus-theme-vim - This is a color scheme developed by Protesilaos Stavrou for emacs.
-
sainnhe/edge - Clean & Elegant Color Scheme inspired by Atom One and Material.
-
theniceboy/nvim-deus - Vim-deus with Tree-sitter support.
-
bkegley/gloombuddy - Gloom inspired theme.
-
Th3Whit3Wolf/one-nvim - An Atom One inspired dark and light colorscheme.
-
PHSix/nvim-hybrid - A Neovim colorscheme write in Lua.
-
Th3Whit3Wolf/space-nvim - A spacemacs inspired dark and light colorscheme.
-
yonlu/omni.vim - Omni color scheme for Vim.
-
ray-x/aurora - A 24-bit dark theme with Tree-sitter and LSP support.
-
ray-x/starry.nvim - A collection of modern Neovim colorschemes: material, moonlight, dracula (blood), monokai, mariana, emerald, earlysummer, middlenight_blue, darksolar.
-
tanvirtin/monokai.nvim - Monokai theme written in Lua.
-
ofirgall/ofirkai.nvim - Monokai theme that aims to feel like Sublime Text.
-
savq/melange-nvim - Warm colorscheme written in Lua with support for various terminal emulators.
-
RRethy/base16-nvim - Neovim plugin for building base16 colorschemes. Includes support for Treesitter and LSP highlight groups.
-
fenetikm/falcon - A colour scheme for terminals, Vim and friends.
-
andersevenrud/nordic.nvim - A nord-esque colorscheme.
-
AlexvZyl/nordic.nvim - Nord for Neovim, but warmer and darker. Supports a variety of plugins and other platforms.
-
shaunsingh/nord.nvim - Neovim theme based off of the Nord Color Palette.
-
Tsuzat/NeoSolarized.nvim - NeoSolarized colorscheme with full transparency.
-
svrana/neosolarized.nvim - Dark solarized colorscheme using colorbuddy for easy customization.
-
ishan9299/nvim-solarized-lua - Solarized colorscheme in Lua (Neovim >= 0.5).
-
jthvai/lavender.nvim - Purple-hued dark mode colorscheme; a complete rewrite of shaunsingh/moonlight.nvim.
-
navarasu/onedark.nvim - A One Dark Theme (Neovim >= 0.5) written in Lua based on Atomās One Dark Theme.
-
lourenci/github-colors - GitHub colors leveraging Tree-sitter to get 100% accuracy.
-
sainnhe/gruvbox-material - Gruvbox modification with softer contrast and Tree-sitter support.
-
sainnhe/everforest - A green based colorscheme designed to be warm, soft and easy on the eyes.
-
neanias/everforest-nvim - A Lua port of the Everforest colour scheme.
-
NTBBloodbath/doom-one.nvim - Lua port of doom-emacsā doom-one.
-
dracula/vim - Famous beautiful dark powered theme.
-
Mofiqul/dracula.nvim - Dracula colorscheme for neovim written in Lua.
-
niyabits/calvera-dark.nvim - A port of VSCode Calvara Dark Theme to Neovim with Tree-sitter and many other plugins support.
-
nxvu699134/vn-night.nvim - A dark Neovim colorscheme written in Lua. Support built-in LSP and Tree-sitter.
-
adisen99/codeschool.nvim - Codeschool colorscheme written in Lua with Tree-sitter and built-in lsp support.
-
projekt0n/github-nvim-theme - A GitHub theme, kitty, alacritty written in Lua. Support built-in LSP and Tree-sitter.
-
kdheepak/monochrome.nvim - A 16 bit monochrome colorscheme that uses hsluv for perceptually distinct gray colors, with support for Tree-sitter and other commonly used plugins.
-
rose-pine/neovim - All natural pine, faux fur and a bit of soho vibes for the classy minimalist.
-
mcchrish/zenbones.nvim - A collection of Vim/Neovim colorschemes designed to highlight code using contrasts and font variations.
-
catppuccin/nvim - Warm mid-tone dark theme to show off your vibrant self! with support for native LSP, Tree-sitter, and more šØ!
-
FrenzyExists/aquarium-vim - A dark, yet vibrant colorscheme.
-
EdenEast/nightfox.nvim - A soft dark, fully customizable Neovim theme, with support for lsp, treesitter and a variety of plugins.
-
kvrohit/substrata.nvim - A cold, dark color scheme written in Lua ported from arzg/vim-substrata theme.
-
ldelossa/vimdark - A minimal Vim theme for night time. Loosely based on vim-monotonic and chromeās dark reader extension. A light theme is included as well for the day time.
-
Everblush/nvim - A dark, vibrant and beautiful colorscheme written in Lua.
-
adisen99/apprentice.nvim - Colorscheme written in Lua based on the Apprentice color pattete with Tree-sitter and built-in lsp support.
-
olimorris/onedarkpro.nvim - Atomās iconic One Dark theme. Cacheable, fully customisable, Tree-sitter and LSP semantic token support. Comes with light and dark variants.
-
rmehri01/onenord.nvim - A Neovim theme that combines the Nord and Atom One Dark color palettes for a more vibrant programming experience.
-
RishabhRD/gruvy - Gruvbuddy without colorbuddy using Lush.
-
echasnovski/mini.nvim#colorschemes - Color schemes included in
mini.nvim
plugin. All of them prioritize high contrast ratio for reading text and computing palettes in perceptually uniform color spaces.
-
luisiacc/gruvbox-baby - A modern gruvbox theme with full treesitter support.
-
titanzero/zephyrium - A zephyr-esque theme, written in Lua, with TreeSitter support.
-
rebelot/kanagawa.nvim - Neovim dark colorscheme inspired by the colors of the famous painting by Katsushika Hokusai.
-
sho-87/kanagawa-paper.nvim - Remixed Kanagawa colourscheme with muted colors.
-
kevinm6/kurayami.nvim - Dark (only) theme.
-
tiagovla/tokyodark.nvim - A clean dark theme written in Lua (Neovim >= 0.5) and above.
-
cpea2506/one_monokai.nvim - One Monokai theme written in Lua.
-
phha/zenburn.nvim - A low-contrast dark colorscheme with support for various plugins.
-
kvrohit/rasmus.nvim - A dark color scheme written in Lua ported from rsms/sublime-theme theme.
-
chrsm/paramount-ng.nvim - A dark color scheme written using Lush. Treesitter supported.
-
kaiuri/nvim-juliana - Port of Sublimeās Mariana Theme to Neovim for short attention span developers with Tree-sitter support.
-
lmburns/kimbox - A colorscheme with a dark background, and vibrant foreground that is centered around the color brown. A modification of Kimbie Dark.
-
rockyzhang24/arctic.nvim - A Neovim colorscheme ported from VSCode Dark+ theme with the strict and precise color picking for both the editor and UI.
-
ramojus/mellifluous.nvim - Pleasant and productive colorscheme.
-
Yazeed1s/minimal.nvim - Two tree-sitter supported colorschemes that are inspired by base16-tomorrow-night and monokai-pro.
-
lewpoly/sherbet.nvim - A soothing colorscheme with support for popular plugins and tree-sitter.
-
Mofiqul/adwaita.nvim - Colorscheme based on GNOME Adwaita syntax with support for popular plugins.
-
olivercederborg/poimandres.nvim - Neovim port of poimandres VSCode theme with Tree-sitter support, written in Lua.
-
mellow-theme/mellow.nvim - A soothing dark color scheme with tree-sitter support.
-
gbprod/nord.nvim - An arctic, north-bluish clean and elegant Neovim theme, based on Nord Palette.
-
Yazeed1s/oh-lucy.nvim - Two tree-sitter supported colorschemes, inspired by oh-lucy in vscode.
-
embark-theme/vim - A deep inky purple theme leveraging bright colors.
-
nyngwang/nvimgelion - Neon Genesis Evangelion but for Vimmers.
-
maxmx03/fluoromachine.nvim - Synthwave x Fluoromachine port.
-
dasupradyumna/midnight.nvim - A modern black Neovim theme with comfortable color contrast for a pleasant visual experience, with LSP and Tree-sitter support.
-
sonjiku/yawnc.nvim - Theming using pywal, with a Base16 twist.
-
uncleTen276/dark_flat.nvim - A Neovim colorscheme written in Lua ported from Dark Flat iTerm2 theme, with LSP and Tree-sitter support.
-
zootedb0t/citruszest.nvim - A colorscheme that features a combination of bright and juicy colors reminiscent of various citrus fruits, with LSP and Tree-sitter support.
-
2nthony/vitesse.nvim - Vitesse theme Lua port.
-
xero/miasma.nvim - A dark pastel color scheme inspired by the woods. Built using lush and supports Tree-sitter, diagnostics, CMP, Git-Signs, Telescope, Which-key, Lazy, and more.
-
Verf/deepwhite.nvim - A light colorscheme inspired by flatwhite-syntax and elegant-emacs .
-
judaew/ronny.nvim - A dark colorscheme, which mostly was inspired by the Monokai originally created by Wimem Hazenberg.
-
ribru17/bamboo.nvim - A warm green theme.
-
cryptomilk/nightcity.nvim - A dark colorscheme inspired by Inkpot, Jellybeans, Gruvbox and Tokyonight with LSP support.
-
polirritmico/monokai-nightasty.nvim - A dark/light theme based on the Monokai color palette written in Lua, support for LSP, Tree-sitter and lots of plugins.
-
oxfist/night-owl.nvim - A Night Owl colorscheme port from VSCode with support for Tree-sitter and semantic tokens.
-
text-to-colorscheme - Dynamically generated colorschemes generated on the fly with a text prompt using ChatGPT.
-
miikanissi/modus-themes.nvim - Accessible theme, conforming with the highest standard for color contrast (WCAG AAA).
-
alexmozaidze/palenight.nvim - Palenight colorscheme supporting Tree-sitter, LSP (including semantic tokens) and lots of plugins.
-
scottmckendry/cyberdream.nvim - A high-contrast, futuristic & vibrant coloursheme.
-
HoNamDuong/hybrid.nvim - A dark theme written in Lua.
-
sxwpb/halfspace.nvim - A semi-light colorscheme for minimal eye melting.
-
bartekjaszczak/distinct-nvim - Theme with distinct syntax colours. Supports Tree-sitter and semantic highlighting. For people who love multi-colour syntax highlighting.
-
samharju/synthweave.nvim - Synthwave ā84 colorscheme port.
-
loganswartz/sunburn.nvim - A colorscheme sitting somewhere between pastels and solarized, emphasizing readability and hue uniformity above all else.
-
ptdewey/darkearth-nvim - A dark and earthy colorscheme supporting Tree-sitter and LSP.
-
uloco/bluloco.nvim - A fancy and sophisticated colorscheme for night and day coding. Supports LSP, Tree-sitter and all the plugins you love.
-
slugbyte/lackluster.nvim - A delightful mostly grayscale colorscheme that is soft on the eyes, and supports heaps of plugins.
-
0xstepit/flow.nvim - Carefully designed colors to help focusing during coding plus fluorescent details. Support many plugins and tools.
Lua Colorscheme
These colorschemes may not specialize in Tree-sitter directly but are written in Lua.
Colorscheme Creation
-
tjdevries/colorbuddy.nvim - A colorscheme helper. Written in Lua! Quick & Easy Color Schemes š.
-
norcalli/nvim-base16.lua - Programmatic Lua library for setting base16 themes.
-
rktjmp/lush.nvim - Define Neovim themes as a DSL in Lua, with real-time feedback.
-
roobert/palette.nvim - A beautiful, versatile, systematic, theme system.
-
Iron-E/nvim-highlite - A colorscheme generator that is āliteā on logic for the developer.
-
echasnovski/mini.nvim#mini.base16 - Module of
mini.nvim
with fast implementation of base16 theme for manually supplied palette.
-
ThemerCorp/themer.lua - A simple highlighter plugin for neovim. It has a huge collection of colorschemes. It also has ability to create colorschemes for Vim/Neovim and other supported apps (such as kitty and alacritty).
-
echasnovski/mini.nvim#mini.colors - Module of
mini.nvim
to tweak and save any color scheme. Also can animate transition and convert between some color spaces.
-
echasnovski/mini.nvim#mini.hues - Module of
mini.nvim
to generate configurable color scheme. Takes only background and foreground colors as required arguments. Can adjust number of hues for non-base colors, saturation, accent color, plugin integration.
-
loganswartz/polychrome.nvim - A colorscheme micro-framework, with support for specifying colors directly in many different formats (sRGB, HSL, Oklab, XYZ and more, with intelligent chroma clipping), live editing preview, and a simple DSL.
Colorscheme Switchers
Bars and Lines
Statusline
Tabline
Cursorline
Startup
Icon
Note Taking
-
0styx0/abbreinder.nvim - Abbreviation reminders (Neovim >= 0.5).
-
jakewvincent/mkdnflow.nvim - Fluent markdown notebook navigation & management (create links, follow links, create and manage to-do lists, reference bib files, and more).
-
oberblastmeister/neuron.nvim - Note taking plugin for neuron that integrates with telescope.nvim.
-
jbyuki/nabla.nvim - Take your scientific notes.
-
nvim-neorg/neorg - Modernity meets insane extensibility. The future of organizing your life.
-
nvim-orgmode/orgmode - Orgmode clone written in Lua (Neovim >= 0.5).
-
nfrid/due.nvim - Displays due for a date string as a virtual text.
-
jbyuki/venn.nvim - Draw ASCII diagrams.
-
stevearc/gkeep.nvim - Google Keep integration.
-
nvim-telekasten/telekasten.nvim - Work with a text-based, markdown zettelkasten / wiki and mix it with a journal, based on telescope.nvim.
-
zk-org/zk-nvim - Neovim extension for zk, a plain text note-taking assistant.
-
chrsm/impulse.nvim - Read Notion.so notes.
-
epwalsh/obsidian.nvim - Plugin for Obsidian, written in Lua.
-
IlyasYOY/obs.nvim - Your Obsidian notes at the speed of thought.
-
jghauser/papis.nvim - Manage your bibliography from within your favourite editor.
-
Ostralyan/scribe.nvim - Take notes, easily.
-
hadronized/mind.nvim - The power of trees at your fingertips.
-
RutaTang/quicknote.nvim - Quickly take notes, in-place.
-
serenevoid/kiwi.nvim - A stripped down VimWiki with necessary features.
-
ada0l/obsidian/ - Base Obsidian functionality.
-
gsuuon/note.nvim - Daily tasks with deep-linking and project spaces.
-
backdround/global-note.nvim - One global note in a floating window.
-
2KAbhishek/tdo.nvim - Fast and simple note taking.
-
slugbyte/whip.nvim - A super fast minimal scratchpad management plugin, biew biew biew.
Utility
-
gaborvecsei/usage-tracker.nvim - Track your Neovim usage and visualize statistics easily.
-
mateuszwieloch/automkdir.nvim - Automatically create non-existent parent directories when writing a file.
-
jghauser/mkdir.nvim - Automatically create missing directories when saving files.
-
matbme/JABS.nvim - Pretty and minimal buffer switcher window.
-
j-morano/buffer_manager.nvim - Add one or more buffers, reorder them, save them inside a file or just delete them very easily from a small floating window.
-
clojure-vim/jazz.nvim - Acid + Impromptu = Jazz.
-
doctorfree/cheatsheet.nvim - Searchable cheatsheet.
-
code-biscuits/nvim-biscuits - A Neovim port of Assorted Biscuits. Ends up with more supported languages too.
-
kazhala/close-buffers.nvim - Delete multiple Vim buffers based on different conditions.
-
rktjmp/paperplanes.nvim - Post selections or buffers to online paste bins.
-
rcarriga/nvim-notify - A fancy, configurable, notification manager.
-
echasnovski/mini.nvim#mini.notify - Module of
mini.nvim
to show one or more highlighted notifications in a single window. Provides maker of vim.notify()
implementation and sets up automated LSP progress updates.
-
folke/noice.nvim - Highly experimental plugin that completely replaces the UI for messages, cmdline and the popupmenu.
-
sQVe/bufignore.nvim - Unlist hidden buffers matching specified ignore sources.
-
saifulapm/chartoggle.nvim - Toggle any character at end of line.
-
stevearc/dressing.nvim - Improve the built-in
vim.ui
interfaces with telescope, fzf, etc.
-
gaborvecsei/cryptoprice.nvim - Check the price of the defined cryptocurrencies.
-
jghauser/fold-cycle.nvim - Cycle folds open or closed.
-
rgroli/other.nvim - Open alternative files for the current buffer.
-
toppair/reach.nvim - Buffer, mark, tabpage switcher.
-
axieax/urlview.nvim - Browse all URLs in the current buffer.
-
nkakouros-original/numbers.nvim - Toggle relativenumber whenever it makes sense.
-
ghillb/cybu.nvim - Displays a notification window with context when cycling buffers.
-
sontungexpt/url-open - Open URLs under the cursor and create highlight effects for them.
-
crusj/bookmarks.nvim - Remember file locations and sort by time and frequency.
-
xiyaowong/virtcolumn.nvim - Display a line as colorcolumn.
-
m-demare/attempt.nvim - Manage and run temporary buffers.
-
kevinhwang91/nvim-ufo - Ultra fold with modern looking and performance boosting.
-
xiyaowong/link-visitor.nvim - Let me help you open the links.
-
sitiom/nvim-numbertoggle - Neovim plugin to automatically toggle between relative and absolute line numbers.
-
anuvyklack/fold-preview - Preview closed fold without opening it.
-
nguyenvukhang/nvim-toggler - Invert text, such as toggling between
true
and false
.
-
CosmicNvim/cosmic-ui - Cosmic-UI is a simple wrapper around specific Vim functionality. Built in order to provide a quick and easy way to create a Cosmic UI experience with Neovim!
-
AckslD/messages.nvim - Capture and show any messages in a customisable (floating) buffer.
-
jbyuki/instant.nvim - A collaborative editing plugin written in Lua with no dependencies.
-
numToStr/BufOnly.nvim - Lua/Neovim port of BufOnly.vim with some changes.
-
zbirenbaum/neodim - Dimming the highlights of unused functions, variables, parameters, and more.
-
bfredl/nvim-miniyank - The killring-alike plugin with no default mappings.
-
chrisgrieser/nvim-genghis - Convenience file operations, written in Lua.
-
chrisgrieser/nvim-recorder - Simplifying and improving how you interact with macros.
-
echasnovski/mini.nvim#mini.animate - Module of
mini.nvim
to add out of the box animations for common built-in actions (cursor movement, scroll, resize, window open/close).
-
figsoda/nix-develop.nvim - Run
nix develop
without restarting Neovim.
-
yaocccc/nvim-foldsign - Display folds on sign column.
-
tenxsoydev/nx.nvim - Neovim API utility wrapper for more convenience with Lua keymaps, highlights, autocommands and options.
-
zdcthomas/yop.nvim - Easily create your own operators (like
d
and y
).
-
cpea2506/relative-toggle.nvim - Toggles smoothly between number and relative numbers, supporting various number combinations, highly customizable.
-
nvim-early-retirement - Send buffers into early retirement by automatically closing them after x minutes of inactivity.
-
hbac.nvim - Automatically close buffers you are not working on.
-
ragnarok22/whereami.nvim - Test your VPN by getting you current location.
-
ecthelionvi/NeoComposer.nvim - Simplify macro management, enhance productivity, and create harmonious workflows.
-
LukasPietzschmann/telescope-tabs - Quickly navigate between tabs using telescope.
-
RutaTang/compter.nvim - Power and extend the ability of
<C-a>
and <C-x>
with customized patterns.
-
yagiziskirik/AirSupport.nvim - Searchable reminder window for your custom shortcuts and commands.
-
aPeoplesCalendar/apc.nvim - āOn this dayā style calendar, which provides information about worldwide history of working class movements and liberation struggles.
-
subnut/nvim-ghost.nvim - GhostText support with zero dependencies.
-
malbertzard/inline-fold.nvim - Hide certain elements inline like long CSS classes or
href
content.
-
chrisgrieser/nvim-origami - Fold with relentless elegance.
-
GCBallesteros/NotebookNavigator.nvim - Navigate and execute code cells.
-
LintaoAmons/scratch.nvim - Create and manage scratch files.
-
luckasRanarison/nvim-devdocs - Preview devdocs.io documentations directly in Markdown format.
-
JMarkin/gentags.lua - Auto generate tag files by ctags.
-
yutkat/confirm-quit.nvim - Confirm before quitting Neovim.
-
bgaillard/readonly.nvim - Secure edition of files containing sensible / secret information, passwords, API keys, SSH keys, etc.
-
GCBallesteros/jupytext.nvim - Edit jupyter notebooks without leaving Neovim.
-
ariel-frischer/bmessages.nvim - Replace the default :messages window with a configurable, auto-updating buffer.
-
LintaoAmons/easy-commands.nvim - A collection of intuitive, easily searchable, and ready-to-use commands.
-
backdround/tabscope.nvim - Make tab-local buffers.
-
linrongbin16/gentags.nvim - The tags generator/management for old school vimers.
-
Mr-LLLLL/utilities.nvim - A repository to collect some little utility functions.
-
mcauley-penney/visual-whitespace.nvim - See whitespace characters in Visual selections, like VSCode.
-
Zeioth/distroupdate.nvim - Distro agnostic updater to get the latest changes from the git repository of your config.
-
SUSTech-data/neopyter - The bridge between Neovim and jupyter lab, edit in Neovim and preview/run in jupyter lab.
-
terje/simctl.nvim - Interact with iOS Simulators.
-
pluffie/md-babel.nvim - Run code chunks from Markdown files, like org-babel.
-
mistricky/codesnap.nvim - Snapshot plugin with rich features that can make pretty code snapshots.
-
AlejandroSuero/freeze-code.nvim - Code screenshot plugin that makes use of freeze inside the editor, it lets you copy the generated image to paste it anywhere.
-
ysmb-wtsg/in-and-out.nvim - Quick navigation in and out of surrounding characters.
-
ChuufMaster/buffer-vacuum - Set a maximum number of buffers to keep open and intelligently delete the oldest buffers over the maximum.
-
mong8se/buffish.nvim - A buffer switcher in the spirit of dirvish or vinegar.
-
niuiic/todo.nvim - Simple but powerful todo manager based on text.
-
QuentinGruber/timespent.nvim - Display time spent on projects / files.
CSV Files
Terminal Integration
Debugging
Quickfix
-
kevinhwang91/nvim-bqf - The goal of nvim-bqf is to make Neovimās quickfix window better.
-
yorickpeterse/nvim-pqf - Prettier quickfix/location list windows.
-
nyngwang/NeoWell.lua - Sometimes you will want to fix some lines later. Store lines into qf with some note so you know what to do when you really want to fix it.
-
ashfinal/qfview.nvim - Pretty quickfix/location view with consistent path-shorten and folding.
-
niuiic/quickfix.nvim - Extended functionality for quickfix, including store, restore, make, remove, etc.
Deployment
Test
Code Runner
-
michaelb/sniprun - Run parts of code of any language directly from Neovim.
-
pianocomposer321/yabs.nvim - Yet Another Build System, written in Lua.
-
CRAG666/code_runner.nvim - The best code runner you could have, with super powers.
-
is0n/jaq-nvim - Just Another Quickrun Plugin in Lua.
-
jedrzejboczar/toggletasks.nvim - Task runner with JSON/YAML configs, using toggleterm.nvim and telescope.nvim.
-
EthanJWright/vs-tasks.nvim - Telescope picker for VSCode style tasks.
-
stevearc/overseer.nvim - A task runner and job management plugin.
-
smzm/hydrovim - Run python code inside Neovim.
-
desdic/greyjoy.nvim - A modular task runner for Makefiles, vscode tasks, kitchen etc.
-
Shatur/neovim-tasks - A stateful task manager focused on integration with build systems.
-
milanglacier/yarepl.nvim - Yet Another REPL, flexible, supporting multiple paradigms to interact with REPLs, and native dot repeat without other dependencies.
-
Vigemus/iron.nvim - Interactive REPLs of over 30 languages embedded.
-
Civitasv/cmake-tools.nvim - CMake integration.
-
idanarye/nvim-moonicipal - Task runner with focus on rapidly changing personal tasks.
-
MarcHamamji/runner.nvim - A customizable Lua code runner.
-
google/executor.nvim - Allows you to run command line tasks in the background and be notified of results.
-
Zeioth/compiler.nvim - Compiler for building and running your code without having to configure anything.
-
Zeioth/makeit.nvim - Makefile runner based on overseer.
-
jaytyrrell13/static.nvim - Run static site generator commands.
-
dasupradyumna/launch.nvim - A simple and quick task launcher which allows dynamically configuring tasks on the fly, with optional support for debugging.
-
benlubas/molten-nvim - Enables running code chunks via the jupyter kernel. Output (including image output) is rendered in a floating window below the code.
-
bfredl/nvim-ipy - Make interfacing with IPython/Jupyter easier.
-
pianocomposer321/officer.nvim - Like dispatch.vim but using overseer.nvim.
-
speelbarrow/spLauncher.nvim - For launching tasks, I guess.
-
al1-ce/just.nvim - Task runner for justfiles.
-
niuiic/task.nvim - Another highly configurable task manager that enables seamless interaction with tasks.
Neovim Lua Development
-
folke/lazydev.nvim - Faster LuaLS setup.
-
nvim-neorocks/luarocks-tag-release - A GitHub action that publishes your Neovim plugins to LuaRocks.
-
svermeulen/vimpeccable - Commands to help write your .vimrc in Lua or any Lua based language.
-
nanotee/nvim-lua-guide - A guide to using Lua in Neovim.
-
rafcamlet/nvim-luapad - Interactive real time Neovim scratchpad for embedded Lua engine - Type and watch!.
-
nvim-lua/plenary.nvim - Plenary: full; complete; entire; absolute; unqualified. All the Lua functions I donāt want to write twice.
-
nvim-lua/popup.nvim - An implementation of the Popup API from Vim.
-
tjdevries/vlog.nvim - Single file, no dependency, easy copy & paste log file to add to your Neovim Lua plugins.
-
bfredl/nvim-luadev - REPL/debug console Lua plugins. The
:Luadev
command will open an scratch window which will show output from executing Lua code.
-
jbyuki/one-small-step-for-vimkind - An adapter for the Neovim Lua language. It allows you to debug any Lua code running in a Neovim instance (A Lua plugin that can debug Neovim Lua plugins).
-
kkharji/sqlite.lua - SQLite/LuaJIT binding for Lua and Neovim.
-
MunifTanjim/nui.nvim - UI Component Library.
-
echasnovski/mini.nvim#mini.doc - Module of
mini.nvim
for generation of help files from EmmyLua-like annotations. Allows flexible customization of output via hook functions.
-
nanotee/luv-vimdocs - The luv docs in vimdoc format.
-
milisims/nvim-luaref - A reference for builtin Lua functions.
-
echasnovski/mini.nvim#mini.test - Module of
mini.nvim
with framework for writing extensive Neovim plugin tests. Supports hierarchical tests, hooks, parametrization, filtering, screen tests, ābusted-styleā emulation, customizable reporters, and more.
-
miversen33/import.nvim - A safe require replacement with niceties.
-
ray-x/guihua.lua - A Lua UI library. Includes a fzy search bar, list view and tree view modules.
-
anuvyklack/animation.nvim - Create animations.
-
nfrid/treesitter-utils - Some useful Treesitter methods.
-
nvim-lusc - Adds support for Structured Async/Concurrency in Lua.
-
CWood-sdf/banana.nvim - HTML renderer for plugin UIs.
Fennel
Dependency Management
Git
-
f-person/git-blame.nvim - Show git blame info.
-
lewis6991/gitsigns.nvim - Git integration: signs, hunk actions, blame, etc.
-
echasnovski/mini.nvim#mini.diff - Module of
mini.nvim
to interactively visualize difference between buffer text and its reference. Provides toggleable detailed overview in text area, built-in apply/reset/textobject/goto mappings, and more.
-
echasnovski/mini.nvim#mini.git - Module of
mini.nvim
for enhanced Git integration with current Neovim process. Implements tracking of Git related data, :Git
user command, and various helpers to explore Git history.
-
NeogitOrg/neogit - A Magit clone that may change some things to fit the Vim philosophy.
-
tveskag/nvim-blame-line - A small plugin that uses neovims virtual text to print git blame info at the end of the current line.
-
ruifm/gitlinker.nvim - Generate shareable file permalinks for several git hosts. Inspired by tpope/vim-fugitiveās :GBrowse.
-
linrongbin16/gitlinker.nvim - Maintained fork of āruifmās gitlinkerā, refactored with bug fixes, ssh aliases, blame support and other improvements.
-
tanvirtin/vgit.nvim - Visual Git Plugin to enhance your git experience.
-
sindrets/diffview.nvim - Single tabpage interface for easily cycling through diffs for all modified files for any git rev.
-
kdheepak/lazygit.nvim - Plugin for calling lazygit.
-
AckslD/nvim-gfold.lua - Plugin using gfold to switch repo and have statusline component.
-
akinsho/git-conflict.nvim - A plugin to visualise and resolve merge conflicts.
-
aaronhallaert/advanced-git-search.nvim - Search your git history by commit content, message and author with Telescope.
-
9seconds/repolink.nvim - Generate shareable HTTP permalinks for various Git web frontends.
-
chrisgrieser/nvim-tinygit - Lightweight and nimble git client.
-
niuiic/git-log.nvim - Check git log of the selected code.
-
2KAbhishek/co-author.nvim - Quickly add co-authors to commits.
-
isak102/telescope-git-file-history.nvim - Open/preview contents of the current file at a specific commit, without using git checkout.
-
moyiz/git-dev.nvim - Open remote git repositories in the comfort of Neovim.
-
SuperBo/fugit2.nvim - Git GUI powered by libgit2.
GitHub
Motion
-
tris203/precognition.nvim - Precognition uses virtual text and gutter signs to show available motions.
-
smoka7/hop.nvim - Hop is an EasyMotion-like plugin allowing you to jump anywhere in a document with as few keystrokes as possible.
-
ggandor/lightspeed.nvim - A Sneak-like plugin offering unparalleled navigation speed via ahead-of-time displayed labels, that eliminate the pause between entering the search pattern and selecting the target.
-
ggandor/leap.nvim - A refined successor of Lightspeed, aiming to establish a widely accepted standard interface extension for moving around in Vim-like editors.
-
ggandor/flit.nvim - Enhanced f/t motions for Leap.
-
ggandor/leap-spooky.nvim - Spooky (Leap) actions at a distance.
-
rasulomaroff/telepath.nvim - Another Leap extension for performing remote actions with a different approach.
-
folke/flash.nvim - Navigate your code with search labels, enhanced character motions and Treesitter integration.
-
echasnovski/mini.nvim#mini.jump - Module of
mini.nvim
for smarter jumping to a single character.
-
echasnovski/mini.nvim#mini.jump2d - Module of
mini.nvim
for smarter jumping within visible lines via iterative label filtering. Supports custom jump targets (spots), labels, hooks, allowed windows and lines, and more.
-
rlane/pounce.nvim - An EasyMotion-like plugin for quick cursor movement using fuzzy search.
-
xiaoshihou514/squirrel.nvim - Quickly jump between tree-sitter nodes.
-
gen740/SmoothCursor.nvim - Add fancy sub-cursor to signcolumn to show your scroll or jump direction.
-
edluffy/specs.nvim - A fast and lightweight Neovim Lua plugin to keep an eye on where your cursor has jumped.
-
abecodes/tabout.nvim - Jump out of brackets, quotes, objects, etc.
-
roobert/tabtree.nvim - Jump between significant code elements, such as brackets, quotes, etc.
-
woosaaahh/sj.nvim - Search based navigation combined with quick jump features.
-
Weissle/easy-action - Easily perform an action on where you can see.
-
cbochs/portal.nvim - Build upon and enhance existing jumplist motions (i.e.
<c-i>
and <c-o>
).
-
echasnovski/mini.nvim#mini.bracketed - Module of
mini.nvim
to go forward/backward with square brackets.
-
liangxianzhe/nap.nvim - Jump between next/previous buffer, tab, diagnostic, etc, with a single key.
-
chrisgrieser/nvim-spider - Use the w, e, b motions like a spider. Considers camelCase and skips insignificant punctuation.
-
gsuuon/tshjkl.nvim - Toggle to navigate and select tree-sitter nodes with hjkl.
-
backdround/neowords.nvim - Hops by any type of words. It gives fine control over
w
, e
, b
, ge
movements.
-
backdround/improved-ft.nvim - Improve default
f
/t
abilities.
-
Mr-LLLLL/treesitter-outer - Jump to outer node with smart.
Treesitter Based
Keybinding
-
folke/which-key.nvim - Neovim plugin that shows a popup with possible keybindings of the command you started typing.
-
echasnovski/mini.nvim#mini.clue - Module of
mini.nvim
to show next key clues. Has opt-in triggers, shows next key information after customizable delay, allows hydra-like submodes, and more.
-
mrjones2014/legendary.nvim - Define your keymaps, commands, and autocommands as simple Lua tables, and create a legend for them at the same time (like VS Codeās Command Palette), integrates with
which-key.nvim
.
-
Iron-E/nvim-cartographer - a more convenient
:map
ping syntax for Lua environments.
-
b0o/mapx.nvim - A simpler key mapping API that mimics Neovimās
:map
-family of commands. Integrates with which-key.nvim.
-
LionC/nest.nvim - Lua utility to map keys concisely using cascading trees. Also allows binding Lua functions to keys.
-
LinArcX/telescope-command-palette.nvim - Lua plugin to create key-bindings and watch them with telescope.
-
slugbyte/unruly-worker.nvim - A ridiculously fun alternative keymap for the workman keyboard layout, with lots of powerful features for working with yank, marks, macros, LSP, and more. Built and configured with Lua.
-
FeiyouG/commander.nvim - Create and manage keybindings and commands in a more organized manner and search them quickly through Telescope.
-
nvimtools/hydra.nvim - Create custom submodes and menus. Port of Emacs Hydra. Maintained fork of anuvyklack/hydra.nvim.
-
anuvyklack/keymap-amend.nvim - Amend the existing keymap.
-
max397574/better-escape.nvim - Create shortcuts to escape insert mode without getting delay.
-
Nexmean/caskey.nvim - Utility to keymappings configuration using declarative cascading trees, optionally integrates with
which-key
.
-
Wansmer/langmapper.nvim - Auto translating your mappings for non-English input methods.
-
tris203/hawtkeys.nvim - Suggest new easy-to-hit keymaps and find issues with your current keymap configurations.
Mouse
Editing Support
-
windwp/nvim-ts-autotag - Use treesitter to autoclose and autorename xml,html,jsx tag.
-
windwp/nvim-autopairs - A minimalist autopairs written by Lua.
-
ZhiyuanLck/smart-pairs - Ultimate smart pairs written by Lua.
-
echasnovski/mini.nvim#mini.pairs - Module of
mini.nvim
for autopairs which has minimal defaults and functionality to do per-key mapping.
-
m4xshen/autoclose.nvim - A minimalist autoclose plugin written in Lua.
-
altermo/ultimate-autopair.nvim - Autopair with extensions.
-
utilyre/sentiment.nvim - Enhanced matchparen.
-
monaqa/dial.nvim - Extended increment/decrement.
-
HiPhish/rainbow-delimiters.nvim - Rainbow delimiters with Tree-sitter.
-
AckslD/nvim-trevJ.lua - Does the opposite of join-line (J) for arguments, powered by Tree-sitter.
-
pocco81/true-zen.nvim - Clean and elegant distraction-free writing.
-
pocco81/high-str.nvim - Highlight visual selections like in a normal document editor!
-
pocco81/auto-save.nvim - Save your work before the world collapses or you type :qa!
-
okuuva/auto-save.nvim - Automatically saves your work as often as needed and as seldom as possible. Customizable with smart defaults. Maintained fork of Pocco81/auto-save.nvim.
-
tmillr/sos.nvim - Automatically save all your modified buffers according to a predefined timeout value.
-
folke/zen-mode.nvim - Distraction-free coding.
-
andersevenrud/nvim_context_vt - Shows virtual text of the current context.
-
nvim-treesitter/nvim-treesitter-context - Shows floating hover with the current function/block context.
-
mizlan/iswap.nvim - Interactively select and swap function arguments, list elements, and more. Powered by tree-sitter.
-
Wansmer/sibling-swap.nvim - Different way to swapping arguments and other siblings with Tree-Sitter.
-
Wansmer/binary-swap.nvim - Swapping operands and operators in binary expressions: comparison and mathematical operations.
-
nacro90/numb.nvim - Peek lines in a non-obtrusive way.
-
ethanholz/nvim-lastplace - Reopen files at your last edit position.
-
Allendang/nvim-expand-expr - Expand and repeat expression to multiple lines.
-
h-hg/fcitx.nvim - Switching and restoring fcitx state for each buffer separately.
-
keaising/im-select.nvim - Switching and restoring input method automatically depends on Neovimās edit mode.
-
echasnovski/mini.nvim#mini.trailspace - Module of
mini.nvim
for automatic highlighting of trailing whitespace with functionality to remove it.
-
smjonas/live-command.nvim - Text editing with immediate visual feedback: preview commands such as
:norm
, :g
, macros and more.
-
filipdutescu/renamer.nvim - VS Code-like renaming UI, written in Lua.
-
gbprod/cutlass.nvim - Plugin that adds a ācutā operation separate from ādeleteā.
-
gbprod/substitute.nvim - Neovim plugin introducing a new operator motions to quickly replace and exchange text.
-
gregorias/coerce.nvim - Change keyword case.
-
johmsalas/text-case.nvim - Text case changes via keybindings and custom substitute command with Telescope and LSP support.
-
echasnovski/mini.nvim#mini.operators - Module of
mini.nvim
with various text edit operators: replace, exchange, multiply, sort, evaluate.
-
gbprod/yanky.nvim - Improved Yank and Put functionalities.
-
sQVe/sort.nvim - Sorting plugin that intelligently supports line-wise and delimiter sorting.
-
booperlv/nvim-gomove - A complete plugin for moving and duplicating blocks and lines, with complete fold handling, reindenting, and undoing in one go.
-
hinell/duplicate.nvim - Duplicate lines & blocks of lines easily; undo & unfolding support; full OOP.
-
hinell/move.nvim - Move chunks of text around; fork of fedepujol/move.nvim .
-
willothy/moveline.nvim - Move lines and blocks up and down easily, with indenting handled automatically as you move. Written in Rust.
-
echasnovski/mini.nvim#mini.move - Module of
mini.nvim
to move any selection (charwise, linewise, blockwise, current line in Normal mode) in any direction. Handles both v:count
and undo history.
-
anuvyklack/pretty-fold.nvim - Foldtext customization.
-
bennypowers/nvim-regexplainer - Explain the regular expression under the cursor.
-
gbprod/stay-in-place.nvim - Neovim plugin that prevent cursor from moving when using shift and filter actions.
-
echasnovski/mini.nvim#mini.ai - Module of
mini.nvim
for extending and creating a
/i
textobjects. It enhances some builtin textobjects, creates extensive set of new ones (like a*
, a<Space>
, a?
, and more), and allows user to create their own (via Lua patterns or functions). Supports dot-repeat, different search methods, consecutive application, and more.
-
Wansmer/treesj - Splitting/joining blocks of code like arrays, hashes, statements, objects, dictionaries, etc. Using Tree-Sitter. Inspired by greatest splitjoin.vim.
-
bennypowers/splitjoin.nvim - Split and join various syntax structures.
-
echasnovski/mini.nvim#mini.splitjoin - Module of
mini.nvim
to split and join arguments. Has customizable pre and post hooks. Works inside comments.
-
shortcuts/no-neck-pain.nvim - Center the currently focused buffer to the middle of your terminal.
-
debugloop/telescope-undo.nvim - A telescope extension to visualize your undo tree and fuzzy-search changes in it.
-
chrisgrieser/nvim-various-textobjs - Bundle of more than 30 new text objects.
-
XXiaoA/ns-textobject.nvim - Awesome textobject plugin works with nvim-surround.
-
~nedia/auto-save.nvim - Extremely simple auto saving on
InsertLeave
& TextChanged
. Based on Pocco81/AutoSave but lighter.
-
echasnovski/mini.nvim#mini.basics - Module of
mini.nvim
with customizable configuration presets for common options, mappings, and autocommands.
-
niuiic/part-edit.nvim - Edit a part of a file individually.
-
niuiic/divider.nvim - Custom code divider line.
-
chrisgrieser/nvim-alt-substitute - A substitute of vimās
:substitute
that uses Lua patterns instead of vim regex. Supports incremental preview.
-
CKolkey/ts-node-action - A framework for executing functional transformations on Tree-sitter nodes - Has a lot of built-in actions for transforming text.
-
tomiis4/hypersonic.nvim - Provides explanation for RegExp.
-
00sapo/visual.nvim - Provides keybindings for creating a Kakoune/Helix-like experience: first select and then choose the editing command.
-
chrisgrieser/nvim-puppeteer - Automatically convert strings to f-strings or template strings and back.
-
nat-418/boole.nvim - Toggle booleans and common string values.
-
cshuaimin/ssr.nvim - Treesitter-based structural search and replace.
-
Jxstxs/conceal.nvim - Use Tree-sitter to conceal common boilerplate code.
-
hiberabyss/bzlops.vim - Help to manage your bazel build rule.
-
altermo/iedit.nvim - Edit one occurrence of text and simultaneously have other selected occurrences edited in the same way.
-
ptdewey/yankbank-nvim - Enable streamlined access to recent yanks and deletions in a quick-access popup menu.
-
gpanders/editorconfig.nvim - An EditorConfig plugin written in Fennel.
-
mhartington/formatter.nvim - A format runner written in Lua.
-
lukas-reineke/lsp-format.nvim - A wrapper around Neovims native LSP formatting.
-
sbdchd/neoformat - A (Neo)vim plugin for formatting code.
-
cappyzawa/trim.nvim - This plugin trims trailing whitespace and lines.
-
mcauley-penney/tidy.nvim - Clear trailing whitespace and empty lines at end of file on every save.
-
MunifTanjim/prettier.nvim - Prettier integration.
-
echasnovski/mini.nvim#mini.align - Module of
mini.nvim
for aligning text interactively (with or without instant preview).
-
emileferreira/nvim-strict - Strict, native code style formatting which exposes deep nesting, overlong lines, trailing whitespace, trailing empty lines, todos and inconsistent indentation.
-
~nedia/auto-format.nvim - Does no formatting by itself, but sets up an autocmd to format on save, preferring null-ls over LSP client formatting.
-
tenxsoydev/tabs-vs-spaces.nvim - Hint and fix deviating indentation.
-
bennypowers/svgo.nvim - Optimize SVG files.
-
niuiic/format.nvim - An asynchronous, multitasking, and highly configurable formatting plugin.
-
elentok/format-on-save.nvim - A synchronous formatter that combines LSP and non-LSP formatting (e.g. shfmt, stylua, prettier), focused specifically on format-on-save.
-
stevearc/conform.nvim - A lightweight formatting engine that plays nice with LSP.
-
nvimdev/guard.nvim - Minimalist async formatting and linting plugin.
Indent
Command Line
Session
Remote Development
Split and Window
Tmux
-
aserowy/tmux.nvim - Tmux integration features pane movement and resizing.
-
danielpieper/telescope-tmuxinator.nvim - Integration for tmuxinator with telescope.nvim.
-
hkupty/nvimux - Neovim as tmux replacement.
-
numToStr/Navigator.nvim - Smoothly navigate between Neovim splits and Tmux panes.
-
declancm/windex.nvim - Collection of window functions which includes moving between, closing and maximizing Neovim splits and Tmux panes.
-
otavioschwanck/tmux-awesome-manager.nvim - Run your workflow commands like yarn install, rails console, yarn add, bundle install, etc.
-
karshPrime/only-tmux.nvim - Expand the functionality of
:only
with tmux panes in the same window, with either moving them to a new window or closing them.
-
karshPrime/tmux-compile.nvim - Set up same key, like F5, to run any compile/run command per language, like
make
for C and cargo build
for Rust, and have the project run or compile in a new tmux pane or window.
Game
Competitive Programming
Workflow
-
Cris-lml007/NeoPlus - NeoPlus is a free, open source IDE with tools that works on Neovim.
-
pgosar/CyberNvim - The worldās simplest and most extensible Neovim distribution.
-
sontungexpt/stinvim - Ready Neovimās configuration for fullstack developers.
-
Abstract-IDE/Abstract - Abstract, The Neovim configuration to achieve the power of Modern IDE.
-
SpaceVim/SpaceVim - A community-driven modular Vim/Neovim distribution, like spacemacs but for Vim/Neovim.
-
CosmicNvim/CosmicNvim - CosmicNvim is a lightweight and opinionated Neovim config for web development, specifically designed to provide a š« COSMIC programming experience!
-
artart222/CodeArt - A fast general-purpose IDE written entirely in Lua with an installer for Linux/Windows/macOS and built in
:CodeArtUpdate
command for updating it.
-
LazyVim/LazyVim - Full-fledged IDE powered by lazy.nvim to make it easy to customize and extend your config.
-
legobeat/l7-devenv - Security-focused IDE with a hackable (in the right way) framework based on Neovim and shell.
-
crispybaccoon/chaivim - Easily configurable distro with solid defaults and a cozy editor experience.
-
NTBBloodbath/doom-nvim - Port of the doom-emacs framework, its goal is to add useful functions to Neovim to start working in a stable and efficient development environment without spending a lot of time configuring everything.
-
crivotz/nv-ide - Neovim custom configuration, oriented for full stack developers (rails, ruby, php, html, css, SCSS, JavaScript).
-
LunarVim/LunarVim - This project aims to help one transition away from VSCode, and into a superior text editing experience.
-
hackorum/VapourNvim - A Neovim config for THE ULTIMATE Vim IDE-like experience.
-
vi-tality/neovitality - A full-featured Neovim distribution, packaged with Nix Flake for easy installation and reproducibility.
-
siduck76/NvChad - An attempt to make Neovim cli as functional as an IDE while being very beautiful and less bloated.
-
nvoid-lua/nvoid - Simple Neovim config written in Lua with all the modern features available in any IDE
-
cstsunfu/.sea.nvim - A modular Neovim configuration with beautiful UI and some useful features(Pomodoro Clock, Window Number).
-
shaeinst/roshnivim - Roshnivim, can be called neovimās distro, is a predefined configs so that you donāt need 1000hr to setup neovim as an IDE.
-
AstroNvim/AstroNvim - AstroNvim is an aesthetic and feature-rich Neovim config that is extensible and easy to use with a great set of plugins.
-
shaunsingh/nyoom.nvim - Blazing fast, configurable, minimal and lispy neovim config written in Fennel. Base config for users to extend and add upon, leading to a more unique editing experience.
-
jrychn/moduleVim - A very easy to use
for backend and frontend, install lsp automatically.
-
askfiy/nvim - An excellent Neovim configuration, which is as powerful as Vscode, is lightning fast ā”ļø.
-
imbacraft/dusk.nvim - Dusk is a lightweight, aesthetically minimal Neovim config, written in Lua, able to provide for web and Java development.
-
nvim-lua/kickstart.nvim - A launch point for your personal Neovim configuration.
-
cunderw/nvim - Neovim custom configuration, focused on JS/TS, Go, and Java development. Very IDE like.
-
otavioschwanck/mood-nvim - Ready to use configuration for Ruby on Rails, JavaScript and Typescript.
-
ldelossa/nvim-ide - A full featured IDE layer heavily inspired by VSCode.
-
jonathandion/web-dev.nvim - Small, simple and flexible configuration for web development āØ.
-
linrongbin16/lin.nvim - A highly configured Neovim distribution integrated with tons of utilities for development, inspired by spf13-vim.
-
doctorfree/nvim-lazyman - Neovim configuration manager and modular configuration, supports over 40 preconfigured configurations.
-
NormalNvim/NormalNvim - Focused on stability for your daily work. From the creator of Compiler.nvim.
-
chrisgrieser/nvim-kickstart-python - A launch point for your Neovim configuration for Python.
-
mrcjkb/kickstart-nix.nvim - A simple Nix flake template repo for Neovim derivations, with the goal of simplifying the migration from existing Neovim configurations.
-
drybalka/clean.nvim - Cleaning up the default key mappings and plugins and leaving only the bare essentials to build upon.
-
StratOS-Linux/StratVIM - A full-fledged Neovim distribution included by default in StratOS, an upcoming Arch-based Linux distro.
-
Shaobin-Jiang/IceNvim - A beautiful, powerful and customizable config that is blazingly fast.
-
ayamir/nvimdots - A well-configured and structured configuration with NixOS support.
External
These tools are used externally to Neovim to enhance the experience.
Version Manager
Boilerplate
OS-specific
Wishlist
Have a problem a plugin can solve? Add it to the nvim-lua wishlist .
UI
Neovim supports a wide variety of UIās.
You can find them listed on the Neovim wiki
Starter Templates
Vim
Resource
-
Neovimcraft - A site dedicated to searching specific plugins and guides for building plugins in Lua.
-
Dotfyle - Dotfyle is a site for sharing and discovering Neovim configs and plugins.
-
NeoLand - A beautifully crafted website for Neovim resources.
-
Nvim-training - A beginner-friendly tool for training your āmuscle memoryā using small, repeatable tasks.