Deterministic Neovim configuration optimized for low startup overhead, explicit behavior, and OS-managed tooling.
- Neovim 0.12+
gitrgfd- LSP binaries in
PATH:goplspyright-langservertypescript-language-serverterraform-lsyaml-language-server
- Formatter binaries in
PATH:styluablackshfmtgofmtterraform
Install all of the above with your OS package manager, or run the bootstrap script below.
- Clone this repository.
- Run bootstrap once:
./scripts/bootstrap.sh- (Optional) Add machine-local overrides:
cp lua/machine/example.lua lua/machine/local.lua- Start Neovim. Pinned plugins are installed by
mini.deps.
- Completion via
nvim-cmpfor LSP, buffer, path, and command line. - Diagnostics shown in signs/underline, with float on
CursorHoldandInsertLeave. - Optional GitHub Copilot integration via
lua/machine/local.lua.
Enable Copilot locally:
-- lua/machine/local.lua
return {
enable_copilot = true,
}- No plugin manages external binaries.
- Tooling requirements are validated at startup and reported via warning if missing.
- LSP and formatter definitions are centralized in
lua/infra/spec.lua. - Plugin versions are pinned in
lua/infra/deps.lua. - Treesitter only provides highlight and basic indentation.
- Run
:ZenHealthto re-check dependency availability. - Startup time warns when it exceeds the 20ms target.