This is a comprehensive Neovim configuration built with nvf and Nix, designed to be fast, reproducible, and feature-rich.
We support a wide range of languages with full LSP, Treesitter, and formatting integration:
- Systems: C/C++ (Clang), Zig, Go
- Web: HTML, CSS
- Config/Data: JSON, TOML, SQL, Nix
- Scripting: Bash
- Documentation: Markdown
Formatting: Auto-formatting on save is enabled globally.
- Completion:
nvim-cmpwithluasnipfor snippets. - Navigation:
Telescopefor fuzzy finding.Neo-treefor file management.HopandLeapfor rapid motion.
- Git: Integrated with
gitsignsandlazygit(viatoggleterm). - Terminal:
toggletermfor easy terminal access.
The editor uses the Catppuccin Mocha theme for a clean, modern look.
- Status Line:
lualine(Catppuccin themed). - Tabs:
nvim-bufferline. - Notifications:
nvim-notifyandnoicefor enhanced UI messages. - Visuals:
- Indent guides (
indent-blankline). - Color highlighting (
colorizer). - Smooth scrolling (
cinnamon-nvim). - Smart column guides (customized for Nix and Go).
- Indent guides (
We use markdown-oxide as our primary Markdown LSP server. While marksman is the default in nvf, we specifically opted for markdown-oxide to keep our dependency tree lean and avoid pulling in the .NET runtime.
Clipboard integration is enabled with unnamedplus register and osc52 support for seamless remote operations.