Project Name | Stars | Downloads | Repos Using This | Packages Using This | Most Recent Commit | Total Releases | Latest Release | Open Issues | License | Language |
---|---|---|---|---|---|---|---|---|---|---|
Neovim | 63,837 | 8 hours ago | 1,640 | other | Vim Script | |||||
Vim-fork focused on extensibility and usability | ||||||||||
Fzf | 50,730 | 8 | 5 | a day ago | 62 | April 17, 2021 | 307 | mit | Go | |
:cherry_blossom: A command-line fuzzy finder | ||||||||||
Vim Plug | 30,289 | 2 months ago | 120 | mit | Vim Script | |||||
:hibiscus: Minimalist Vim Plugin Manager | ||||||||||
Coc.nvim | 22,474 | 82 | 263 | 8 days ago | 97 | September 19, 2022 | 41 | other | TypeScript | |
Nodejs extension host for vim & neovim, load extensions like VSCode and host language servers. | ||||||||||
Spacevim | 19,686 | 9 days ago | 1 | July 02, 2022 | 56 | gpl-3.0 | Lua | |||
A community-driven modular vim/neovim distribution - The ultimate vimrc | ||||||||||
Nvchad | 15,418 | 14 hours ago | 2 | August 19, 2021 | 1 | gpl-3.0 | Lua | |||
An attempt to make neovim cli functional like an IDE while being very beautiful, blazing fast startuptime | ||||||||||
Vim Galore | 15,154 | 25 days ago | 8 | cc-by-sa-4.0 | Vim script | |||||
:mortar_board: All things Vim! | ||||||||||
Lunarvim | 13,662 | 11 hours ago | 72 | gpl-3.0 | Lua | |||||
🌙 LunarVim is an IDE layer for Neovim. Completely free and community driven. | ||||||||||
Vim | 11,692 | 8 hours ago | 1,417 | mit | TypeScript | |||||
:star: Vim for Visual Studio Code | ||||||||||
Oni | 11,477 | 1 | 3 years ago | 6 | April 02, 2017 | 518 | mit | TypeScript | ||
Oni: Modern Modal Editing - powered by Neovim |
Table of contents
Neovim is a pretty cool successor to Vim, focusing on compatibility while adding asynchronous plugin functionality and trying to clean up the code base. Having been fed up at various times with both Sublime Text (2 and 3) and Atom, and after realizing how much development I do over SSH, it seemed reasonable to check out using vim (or nvim, in this case) as my IDE. The advantages essentially boil down to:
Therefore, I decided to create this repository. There are several versions:
As I mentioned, this config is meant as a starting point, it is not a complete Neovim/Vim config distribution, if you're looking for a one, check out here.
mv ~/.config/nvim ~/.config/nvim.bak
git clone https://github.com/ntk148v/neovim-config.git
cd neovim-config.git/
cp -Rv nvim ~/.config/
The files under config will be automatically loaded at the appropriate time, so you don't need to require those files manually.
tree ~/.config/nvim
├── init.lua
├── lazy-lock.json
└── lua
├── config
│ ├── autocmds.lua
│ ├── init.lua
│ ├── keymaps.lua
│ └── options.lua
└── plugins
├── autopairs.lua
├── colorizer.lua
├── colorscheme.lua
├── comment.lua
├── custom
│ └── lush.lua
├── gitsigns.lua
├── lsp.lua
├── lualine.lua
├── neoterm.lua
├── telescope.lua
├── tree.lua
└── treesitter.lua
Plugin | Description |
---|---|
lazy.nvim | A modern plugin manager for Neovim |
mason.nvim | Portable package manager for Neovim that runs everywhere Neovim runs. Easily install and manage LSP servers, DAP servers, linters, and formatters. |
nvim-lspconfig | A collection of common configurations for Neovim's built-in language server client |
gitsigns | Super fast git decorations implemented purely in lua/teal |
nvim-treesitter | Nvim Treesitter configurations and abstraction layer |
nvim-cmp | Auto completion plugin |
LuaSnip | Snippet Engine for Neovim written in Lua |
nvim-tree.lua - | A File Explorer written In Lua |
nvim-autopairs | A super powerful autopairs for Neovim |
nvim-web-devicons | Lua fork of vim-web-devicons for neovim |
lualine.nvim | A blazing fast and easy to configure neovim statusline plugin written in pure lua. |
Comment.nvim | Smart and powerful comment plugin for neovim. Supports treesitter, dot repeat, left-right/up-down motions, hooks, and more |
norcalli/nvim-colorizer.lua | The fastest Neovim colorizer. |
nvim-telescope/telescope.nvim | Find, Filter, Preview, Pick. All lua, all the time. |
itmecho/neoterm.nvim | Neovim lua plugin for managing a floating terminal window |
rosé-pine | Soho vibes for Neovim |
folke/tokyonight.nvim | A clean, dark Neovim theme written in Lua, with support for lsp, treesitter and lots of plugins. Includes additional themes for Kitty, Alacritty, iTerm and Fish. |
projekt0n/github-nvim-theme | Github's Neovim themes |
null-ls | Use Neovim as a language server to inject LSP diagnostics, code actions, and more via Lua. |
You can add your custom plugin specs under lua/plugins/custom
. All files will be automatically loaded by lazy.nvim
.
This configuration provides Python and Golang dev environment. The programming language server is current supported:
Furthermore, it integrates with nvim-treesitter to provide rich syntax highlighting and other language parsing magic.
If your language is not supported, please follow this:
:LspInstall `<your_language_server>`
:TSInstall `<language_to_install>`
These are the default keymaps, in the following shortcuts, the <leader>
key is set up to `` (space) character, check: keymaps.lua.
Shortcut | Mode | Description |
---|---|---|
kk |
Insert | Esc with kk
|
<leader>r |
Normal | Reload configuration file |
<leader>s |
Normal | Save file |
<leader>q |
Normal | Save (close all windows) and exit from Neovim |
<leader>tt |
Normal | Open floating terminal |
<Esc> |
Terminal | Exit terminal |
<leader>n |
Normal | Open NvimTree |
<leader>nr |
Normal | Refresh NvimTree |
<leader>nf |
Normal | Find file in NvimTree |
<leader>ff |
Normal | Open Telescope to find files |
<leader>fg |
Normal | Open Telescope to do live grep |
<leader>fb |
Normal | Open Telescope to list buffers |
<leader>fh |
Normal | Open Telescope to show help |
<leader>wh/j/k/l |
Normal | Move around splits |
mm |
Normal | Comment/Uncomment line |
mbm |
Normal | Comment/Uncomment block |
m |
Visual | Comment/Uncomment line |
mb |
Visual | Comment/Uncomment block |
There are many default keymaps, you can check it using :map
command. There are also other variants:
:nmap
for normal mode mappings:vmap
for visual mode mappings:imap
for insert mode mappingsThe above list is not complete. Typing :help map
in Vim will give you more info.
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Feel free to file an issue or open a pull request. You're welcome!