A small LazyVim-based setup focused on fast editing, predictable keybindings, and automatic reload when AI agents change files on disk.
- Snacks file explorer, fuzzy finder, grep, input, and terminal
- Treesitter syntax highlighting
- Blink completion
- LSP support for Lua, Python, TypeScript, and Tailwind CSS
- Ruff and Prettier formatting through Conform
- Gitsigns, Gruvbox, WhichKey, and VimTeX
The config intentionally omits dashboards, animated scrolling, buffer tabs, debug adapters, database clients, REST clients, project managers, custom cheatsheet popups, and duplicate finder/terminal/explorer plugins.
| Key | Action |
|---|---|
Ctrl-Space |
Unified Help Hub; navigate with arrow keys |
Ctrl-Tab |
Next file tab in the current split |
Alt-Arrow |
Move between splits |
Space Space |
Find files |
Space / |
Search project text |
Space e |
File explorer |
Space n |
New file or directory |
Space b |
Open buffer |
Space r |
Recent file |
Space t |
Terminal |
Space q |
Close buffer |
Ctrl-s |
Save |
See nvim-keybinds.md for the complete short list.
init.lua
lua/
config/
autocmds.lua external-change reload and local autocmds
keymaps.lua the small global keymap surface
lazy.lua plugin manager bootstrap
options.lua editor options
plugins/
colorscheme.lua
latex.lua
minimal.lua disables heavy defaults and configures Snacks
python.lua
typescript.lua
Open :Lazy, review changes, then use its update action. The lockfile keeps
the installed revisions reproducible. Open :Mason to update language tools.
Use official stable Neovim builds. Development/nightly builds are deliberately avoided so plugin updates and editor updates do not break at the same time.
Neovim checks clean buffers on focus, buffer entry, and cursor idle. Changes made by an AI agent appear automatically. If the current buffer has unsaved local edits, Neovim preserves them and does not reload the file.
Before the July 2026 cleanup, backups were created at:
~/.config/nvim.backup-20260709-134514~/.local/nvim.backup-20260709-134514