NixVim - A Neovim configuration system for nix

Other versions of these docs

Please ensure you are referencing documentation that corresponds to the Nixvim version you are using!

Documentation is currently available for the following versions:

  • The main branch, for use with nixpkgs nixos-unstable (this page)
  • The nixos-24.11 branch, for use with nixpkgs nixos-24.11
  • The nixos-24.05 branch, for use with nixpkgs nixos-24.05

What is it?

NixVim is a Neovim distribution built around Nix modules. It is distributed as a Nix flake, and configured through Nix, all while leaving room for your plugins and your vimrc.

What does it look like?

Here is a simple configuration that uses catppuccin as the colorscheme and uses the lualine plugin:

{
  programs.nixvim = {
    enable = true;

    colorschemes.catppuccin.enable = true;
    plugins.lualine.enable = true;
  };
}

When we do this, lualine will be set up to a sensible default, and will use catppuccin as the colorscheme, no extra configuration required!

Check out this list of real world nixvim configs!

Welcome to the docs!

Over to the left, you'll find the sidebar. There you'll see several "User guides" (including an FAQ]), along with pages for various "options".

While you can search our main docs using the icon, if you're looking for a specific option you may find the dedicated Nixvim Option Search (at the bottom of the sidebar) has more relevant results.

tip

Any page with a ❱ icon next to it has one-or-more sub-pages.