awesome-neovim/README.md
2022-05-02 07:39:10 +00:00

72 KiB
Raw Blame History

Awesome Neovim Awesome

Collections of awesome Neovim plugins. Mostly targeting Neovim specific features.

Neovim is a Vim-based text editor engineered for extensibility and usability, to encourage new applications and contributions.

Contents

Wishlist

Have a problem a plugin can solve? Add it to the nvim-lua wishlist.

UI

Neovim supports a wide variety of UI's.

  • 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!
  • yatli/fvim - Cross platform Neovim front-end UI, built with F# + Avalonia.
  • smolck/uivonim - Goal: Feature-rich cross-platform GUI that leverages the latest Neovim features.
  • qvacua/vimr - Neovim GUI for macOS in Swift.
  • vhakulinen/gnvim - GUI for Neovim, without any web bloat.
  • Kethku/neovide - No Nonsense Neovim Client in Rust.
  • beeender/glrnvim - A terminal wrapper that launches Neovim inside of alacritty.
  • akiyosi/goneovim - Neovim GUI written in Golang, using a Golang qt backend.
  • DinVim - DinVim for macOS is a safe and secure working macOS sandbox environment that provide true macOS experience for Vim users.
  • RMichelsen/Nvy - A Neovim client in C++.
  • asvetliakov/vscode-neovim - Neovim integration for Visual Studio Code.
  • equalsraf/neovim-qt - Neovim client library and GUI, in Qt5.
  • lunixbochs/actualvim - Sublime Text 3 input mode using Neovim.
  • vv-vim/vv - Neovim client for macOS. A pure, fast, minimalistic Vim experience with good macOS integration. Optimized for speed and nice font rendering.
  • jebberjeb/javafx-neovimpane - A JavaFX text pane, backed by Neovim, created with Clojure.
  • rohit-px2/nvui - A modern frontend for Neovim.
  • Lyude/neovim-gtk - A GTK3+ client written in Rust, ressembling a lot the original vim-gtk3 with ligatures support.

Plugin

Plugin Manager

  • wbthomason/packer.nvim - A use-package inspired plugin manager for Neovim. Uses native packages, supports Luarocks dependencies, written in Lua, allows for expressive config.
  • savq/paq-nvim - Neovim package manager written in Lua.
  • NTBBloodbath/cheovim - Neovim configuration switcher written in Lua. Inspired by chemacs.

LSP

(requires Neovim 0.5)

LSP Installer

Completion

Markdown / LaTeX

Syntax

Terminal integration

Snippet

Register

Marks

  • chentau/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.

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 in Neovim (>= 0.5). Allows for full asynchronicity for UI speed and usability.
  • amirrezaask/fuzzy.nvim - Fuzzy.nvim provides a simple mechanism and pipeline to create fuzzy matching in Neovim.
  • 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.

Note Taking

Color

Colorscheme Creation

  • mini.base16 - Module of echasnovski/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).

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.

Lua Colorscheme

These colorschemes may not specialize in Tree-sitter directly but are written in Lua.

Utility

Icon

Debugging

Spellcheck

Neovim Lua Development

Fennel

Tabline

Statusline

Statusline component

  • SmiteshP/nvim-gps - Simple statusline component that shows what scope you are working inside.

Cursorline

Startup

Indent

  • mini.indentscope - Module of echasnovski/mini.nvim for visualizing and operating on indent scope. Supports customization of debounce delay, animation style, and different granularity of options for scope computing algorithm.

Game

File explorer

Dependency management

Git

Programming languages support

Comment

Collaborative Editing

  • jbyuki/instant.nvim - A collaborative editing plugin for Neovim written in Lua with no dependencies.

Quickfix

Motion

  • tjdevries/train.nvim - Train yourself with vim motions and make your own train tracks.
  • phaazon/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.

Code Runner

GitHub

Scrollbar

Scrolling

Mouse

Project

Browser integration

Editing support

Formatting

Web development

Media

Discord Rich Presence

Command Line

Session

Test

Competitive Programming

Preconfigured Configuration

  • 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.
  • 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
  • ashincoder/StarVim - A IDE wrapper which is beyond the moon 🌝 and above the stars .
  • mjlbach/defaults.nvim - An extremely small, single file, and commented configuration template demonstrating LSP integration, autocompletion, snippets, treesitter, and more.
  • 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.
  • kabinspace/AstroVim - AstroVim 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.
  • CanKolay3499/CNvim - A lightweight Neovim config for web development.
  • 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 Vcode, is lightning fast .

Keybinding

  • AckslD/nvim-whichkey-setup.lua - Plugin that wraps vim-which-key to simplify setup in Lua.
  • folke/which-key.nvim - Neovim plugin that shows a popup with possible keybindings of the command you started typing.
  • mrjones2014/legendary.nvim - Define your keymaps, commands, and autocommands as simple Lua tables, and create a legend for them at the same time, integrates with which-key.nvim.
  • Iron-E/nvim-cartographer - a more convenient :mapping 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 - A ridiculously fun alternative keymap for the workman keyboard layout with nvim features like LSP support, built and configured with lua.
  • FeiyouG/command_center.nvim - Create and manage keybindings and commands in a more organized manner and search them quickly through Telescope.

Tmux

Remote Development

Split and Window

External

These tools are used externally to Neovim to enhance the experience.

Version Manager

Boilerplate

Vim

  • Vimawesome - Showcases various plugins for vim and has a neovim tag for other plugins targeting Neovim.
  • awesome-vim - Short list of vim plugins and helpful guides.

Resource

  • Neovimcraft - A site dedicated to searching for Neovim specific plugins and guides for building plugins in Lua.