No description
Find a file
2026-07-08 21:33:25 -05:00
config add which-key, trouble, and treesitter-context 2026-07-08 21:32:18 -05:00
.gitignore Initial commit 2026-07-08 21:00:11 -05:00
flake.lock Flake update 2026-07-08 21:33:25 -05:00
flake.nix Initial commit 2026-07-08 21:00:11 -05:00
NEOVIM_GUIDE.md add which-key, trouble, and treesitter-context 2026-07-08 21:32:18 -05:00
README.md add which-key, trouble, and treesitter-context 2026-07-08 21:32:18 -05:00

nvf-config

A reproducible Neovim configuration built as a Nix flake using nvf.

What's included

The flake produces a single Neovim package (packages.x86_64-linux.default) with the following configured out of the box:

  • Gruvbox dark theme, lualine statusline
  • Telescope (find files, live grep, buffers, help)
  • nvim-tree file explorer, bufferline tabline
  • Treesitter and LSP for Nix, Python, Lua, Bash, Markdown, HTML, CSS, TypeScript/JavaScript, Rust, Go, YAML, TOML, SQL, Ruby, and Assembly
  • harper-ls grammar/spell checking across prose and code filetypes
  • nvim-cmp completion with luasnip snippets
  • Git integration (gitsigns, lazygit via toggleterm)
  • UI extras: illuminate, breadcrumbs, noice, indent-blankline, treesitter-context, which-key
  • Trouble diagnostics/references panel (Space ld, Space lwd, Space lr, Space xq/xl/xs)
  • Utility: surround, icon-picker, undotree, comment-nvim, autopairs, colorizer
  • NASM/assembly tooling: .inc filetype detection plus a :make build/run integration (overridden by a Makefile when present)

Using this flake

Prerequisites

  • Nix with flakes enabled

Build and run

nix build .#default
./result/bin/nvim

# or run directly
nix run .#default

Layout

Path Purpose
flake.nix Flake inputs and package output
flake.lock Pinned dependency versions
config/default.nix nvf module (all editor settings)

Key bindings

Leader is Space.

Binding Action
Space ff Find files
Space fg Live grep
Space fb List buffers
Space fh Help tags
Space e Toggle file tree
Space u Toggle undo tree
Space gg Open lazygit
Shift-l/h Next/previous buffer
Ctrl-hjkl Window navigation
Esc Clear search highlight
Space rr NASM: save, build, run current file
Space rb NASM: save and build current file
Space rt NASM: save, build, run in toggleterm