No nonsense Neovim.
A lightweight, fast, and easy-to-configure Neovim starter config built for people who want a clean editor without a lot of ceremony.
- Blazingly fast startup and minimal overhead
- Small, opinionated plugin set
- Lua-first configuration
- Easy to extend without a giant config tree
- Good defaults for coding and quick editing
mini.*plugin ecosystem for a lean and modern editing experience- Fast file picker with
mini.pick - Lightweight status, tab, and diff helpers
- LSP support for common languages
- Simple keybindings designed for speed
- Minimal UI clutter and sensible defaults
This config uses:
- Neovim builtin package system via
vim.pack mini.pick,mini.statusline,mini.tabline,mini.diff,mini.git,mini.pairs,mini.indentscope,mini.completion,mini.snippetsnvim-lspconfigfor language servers- Dracula theme
- Install Neovim.
- Clone this repo into your Neovim config directory:
git clone https://github.com/GroosL/nnnvim.git ~/.config/nvim- Launch Neovim:
nvim- If you want to refresh plugins:
nvim --headless "+PackUpdate" +qaThe config ships with a few quick shortcuts:
<leader>e— open file picker<leader>E— netrw explorerzz— savezx— save and quitzc— close without saving<leader>/— toggle comments<leader>t— open or reveal terminal<leader>fc— format current file withclang-format<leader>ca— runmake<leader>cr— runmake runrn— toggle relative numbers
.
├── init.lua
├── nvim-pack-lock.json
└── lua/
├── commands.lua
├── keymaps.lua
├── options.lua
└── pack.lua
The config is intentionally small and easy to modify:
- Edit lua/options.lua for editor defaults
- Edit lua/keymaps.lua for keybindings
- Edit lua/pack.lua for plugins
- Edit lua/commands.lua for custom commands
- Edit init.lua for startup wiring
nnnvim aims to be the opposite of a bloated Neovim distro. It keeps the essentials, avoids unnecessary complexity, and leaves room for you to add what you actually need.
If you want a startup config that stays fast, readable, and simple, this is a good place to start.