Nvim

Structure, documented, super fast neovim configuration. (NEOVIM IS NOT IDE)
Alternatives To Nvim
Project NameStarsDownloadsRepos Using ThisPackages Using ThisMost Recent CommitTotal ReleasesLatest ReleaseOpen IssuesLicenseLanguage
Nvchad19,513
a day ago2August 19, 20213gpl-3.0Lua
Blazing fast Neovim config providing solid defaults and a beautiful UI, enhancing your neovim experience.
Lunarvim15,847
21 days ago83gpl-3.0Lua
🌙 LunarVim is an IDE layer for Neovim. Completely free and community driven.
Oni11,47734 years ago6April 02, 2017518mitTypeScript
Oni: Modern Modal Editing - powered by Neovim
Astronvim10,486
17 hours ago5gpl-3.0Lua
AstroNvim is an aesthetic and feature-rich neovim config that is extensible and easy to use with a great set of plugins
Goneovim2,195
3 days ago56August 12, 202398mitGo
A GUI frontend for neovim.
Codeium.vim2,158
5 days ago32mitVim Script
Free, ultrafast Copilot alternative for Vim and Neovim
Vim Config1,739
a month ago2Lua
Lean mean Neovim machine, carefully crafted with :heart: Use with latest Neovim.
Cosmicnvim997
12 days ago3gpl-3.0Lua
CosmicNvim is a lightweight and opinionated Neovim config for web development, specifically designed to provide a 💫 COSMIC programming experience!
Solidoak894
6 years ago17unlicenseRust
An IDE for Rust
Codeart853
4 months ago8gpl-3.0Lua
Use NeoVim as general purpose IDE
Alternatives To Nvim
Select To Compare


Alternative Project Comparisons
Readme

My Neovim Configuration

badge badge

Features

  • Handy and Smoothy: There will always be a panel to remind you when you forget your key settings. There will always be a short keystroke to help you get to the place you want to jump to. There will always…
  • Powerful coding experience: With the power from nvim-lspconfig, we can have "IDE Level" coding experience in the terminal.
  • Fancy looking: Talk is cheap, see the gallery.
  • Easy Customize: Always injecting new configuration, wherever you like.

Getting Start

This configuration is compatible with neovim 0.8+ version.

git clone --depth=1 https://github.com/Avimitin/nvim.git ~/.config/nvim

Finally, input nvim to open the editor, and all plugins will be downloaded automatically.

nvim

Document

See Docs.

Customize

See document

Treesitter

To make treesitter compatible with the stable neovim, and to make the share library compilation process reproducible and clean, this configuration uses nix package manager to manage the treesitter parser plugin. The flake output provides package treesitter-parsers to modify the neovim runtime path to point to this parser plugin. To use it, you can use home-manager to help you put this package into neovim's data directory.

  • Example home-manager configuration:
# This can help auto load
xdg.dataFile = {
    nvim-treesitter-parsers = {
        source = nvim-flake.packages."x86_64-linux".treesitter-parsers;
        target = "nvim/siter/plugin/treesitter-parsers.lua";
    };
}

You can also filter parsers by their name: here parsers is a callable attribute, and invoke it with an array can filter data inside it.

xdg.dataFile = {
    nvim-treesitter-parsers = {
      source = let
        parsers = pkgs.callPackage ./nix/treesitter-parsers.nix {};
        toNvimPlug = pkgs.callPackage ./nix/set-rtp.nix {};
      in
        # And now, only "bash" and "lua" plugin will be prepended into neovim runtime path
        toNvimPlug "treesitter-parsers" (parsers [ "bash" "lua" ]);
      target = "nvim/site/plugin/treesitter-parsers.lua";
    };
}

To add more language parser, you can attach more parser at the end of the nix file. The array expect the argument in this form: [{ name: xxx; hash: xxx; }, ...], where:

  • name string: The name of the language
  • hash string: The input hash, you can leave it blank and wait for nix hash report the correct hash
  • needs_generate bool: When true, tree-sitter CLI will be used to generate the parser.
  • srcRoot string: Specify where the parser source located. Some repository will vendor two or more parser source code in one repository.

Gallery

Utilities
Easy in-file jump
LightSpeed
Markdown Utils
Markdown Preview
image
Table
vim-table-mode-gif
Coding Utils
Diagnostic Panel
image
Code Completion
coding
Command Completion
cmp-cmdline
Inline diagnostic analytics
lsp-line
Signature Help
lsp-popup
Code Actions
lsp-codeaction
Diagnostic
lsp-diagnostic
Debug CPP
cpp
Debug Rust
Rust
Code navigate
Navigate
Project grep
live-grep
Symbol search
symbols
File Manage
nvim-tree
nvim-tree
Find file
find-file
Git Helper
Fugitive
fugitive
Themes
Kanagawa Theme
kanagawa

License

This configuration since commit 912416ae9c4b55501b23a91d774b567ba8697dd1 are licenced under the Apache 2.0 license.

另附:禁止在 CSDN,bilibili 等国内平台使用该配置文件进行任何活动。 你只保有自己修改部分的权利。

Development Related

Versioning

Version will be released in cvYYYY.0M.0D format. I will try to release update each weak.

Changelog

See CHANGELOG.md


Popular Ide Projects
Popular Neovim Projects
Popular Integrated Development Environments Categories
Related Searches

Get A Weekly Email With Trending Projects For These Categories
No Spam. Unsubscribe easily at any time.
Lua
Editor
Vim
Dotfiles
Vscode
Ide
Neovim
Vimrc
Nvim