Skip to content

Options

programs.mnw.aliases

Aliases to symlink nvim to.

Type:
list of string
Default:
[ ]
Example:
[
  "vi"
  "vim"
]
Declaration

programs.mnw.appName

What to set $NVIM_APPNAME to

Type:
string
Default:
"mnw"
Example:
"gerg"
Declaration

programs.mnw.desktopEntry

Whether to enable neovim's desktop entry.

Type:
boolean
Default:
true
Example:
false
Declaration

programs.mnw.devExcludedPlugins

The same as 'plugins' except for when running in dev mode add the absolute paths to 'devPluginPaths'

Type:
list of (literal path or (attribute set of anything))
Default:
[ ]
Example:
[ ./gerg ]
Declaration

programs.mnw.devPluginPaths

The impure absolute paths to nvim plugins the relative paths of which should be in devExcludedPlugins

Type:
list of string
Default:
""
Example:
[
  "~/Projects/nvim-flake/gerg"
]
Declaration

programs.mnw.enable

Whether to enable mnw (Minimal Neovim Wrapper).

Type:
boolean
Default:
false
Example:
true
Declaration

programs.mnw.extraBinPath

Extra packages to be put in neovim's PATH

Type:
list of package
Default:
[ ]
Example:
''
  [
    pkgs.rg
    pkgs.fzf
  ]
''
Declaration

programs.mnw.extraLuaPackages

A function which returns a list of extra needed lua packages

Type:
function that evaluates to a(n) list of package
Default:
Example:
ps: [ ps.jsregexp ]
Declaration

programs.mnw.finalPackage

The final package to be consumed by the user

Type:
package
Declaration

programs.mnw.initLua

lua config text to load at startup

Type:
strings concatenated with "\n"
Default:
""
Example:
''
  require("myConfig")
''
Declaration

programs.mnw.initViml

VimL config text to load at startup

Type:
strings concatenated with "\n"
Default:
""
Example:
''
  echomsg 'hello world'
''
Declaration

programs.mnw.luaFiles

lua config files to load at startup

Type:
list of path in the Nix store
Default:
[ ]
Example:
[
  (pkgs.writeText "init.lua" ''
    print('hello world')
  '')
]
Declaration

programs.mnw.neovim

The neovim package to use. Must be unwrapped

Type:
package
Default:
Example:
inputs.neovim-nightly-overlay.packages.${pkgs.stdenv.system}.default
Declaration

programs.mnw.plugins

A list of plugins to load

Type:
list of (literal path or (attribute set of anything))
Default:
[ ]
Example:
''
  # you can pass vimPlugins from nixpkgs
  pkgs.vimPlugins.fzf-lua
  
  # You can pass a directory
  # this is recommend for using your own
  # ftplugins and treesitter queries
  ./myNeovimConfig
  
  {
    pname = "customPlugin";
    version = "1";
  
    src = pkgs.fetchFromGitHub {
     owner = "";
     repo = "";
     ref = "";
     hash = "";
    };
  
    # Whether to place plugin in /start or /opt
    optional = false;
  
    # Plugins can have other plugins as dependencies
    # this is mainly used in nixpkgs
    # avoid it if possible
    dependencies = [];
  
  
  }
''
Declaration

programs.mnw.providers.nodeJs.enable

Whether to enable and configure the Node.js provider.

Type:
boolean
Default:
false
Example:
true
Declaration

programs.mnw.providers.nodeJs.neovimClientPackage

The neovim-node-client package to use.

Type:
package
Default:
Example:
"pkgs.neovim-node-client"
Declaration

programs.mnw.providers.nodeJs.package

The Node.js package to use.

Type:
package
Default:
Example:
"pkgs.nodejs_23"
Declaration

programs.mnw.providers.perl.enable

Whether to enable and configure the perl provider.

Type:
boolean
Default:
false
Example:
true
Declaration

programs.mnw.providers.perl.extraPackages

Extra packages to be included in the perl environment.

Note: you probably want to include NeovimExt and Appcpanminus if you change this from it's default value.

Type:
function that evaluates to a(n) list of package
Default:
Example:
p: [
  p.NeovimExt
  p.Appcpanminus
]
Declaration

programs.mnw.providers.perl.package

The perl package to use.

Type:
package
Default:
Example:
"pkgs.perl"
Declaration

programs.mnw.providers.python3.enable

Whether to enable and configure the python3 provider.

Type:
boolean
Default:
true
Example:
false
Declaration

programs.mnw.providers.python3.extraPackages

Extra packages to be included in the python3 environment.

Note: you probably want to include pynvim if you change this from it's default value.

Type:
function that evaluates to a(n) list of package
Default:
Example:
py: [
  py.pynvim
  py.pybtex
]
Declaration

programs.mnw.providers.python3.package

The python3 package to use.

Type:
package
Default:
Example:
"pkgs.python39"
Declaration

programs.mnw.providers.ruby.enable

Whether to enable and configure the ruby provider.

Type:
boolean
Default:
true
Example:
false
Declaration

programs.mnw.providers.ruby.env

Type:
package
Default:
Example:
pkgs.bundlerEnv {
  name = "neovim-ruby-env";
  gemdir = ../ruby_provider;
};
Declaration

programs.mnw.providers.ruby.package

The ruby package to use.

Type:
package
Default:
Example:
"pkgs.ruby"
Declaration

programs.mnw.vimlFiles

VimL config files to load at startup

Type:
list of path in the Nix store
Default:
[ ]
Example:
[
  (pkgs.writeText "init.vim" ''
    echomsg 'hello world'
  '')
]
Declaration

programs.mnw.wrapperArgs

A list of arguments to be passed to makeWrapper

Type:
list of string
Default:
[ ]
Example:
[
  "--set-default"
  "FZF_DEFAULT_OPTS"
  "--layout=reverse --inline-info"
];
Declaration