Neovim Configuration

Configurations defined in bundler-nvim are available as packages and apps. This module assumes that you will use that package as you wish, as follows.

environment.systemPackages = [
  (pkgs.runCommand "nvim" { } ''
    mkdir -p $out/bin
    ln -s ${
      self.packages.${system}.bundler-nvim
    }/bin/nvim $out/bin/nvim
  '')
];

flakeModule schemes

nametypedefaultdescription
packageNamePrefixtypes.str"bundler-nvim"package name prefix provided by this module
appNamePrefixtypes.str"bundler-nvim"app name prefix provided by this module
packagetypes.packagepkgs.neovim-unwrappedneovim package
extraPackageswith types; listOf package[]e.g. lua-language-server
extraConfigtypes.lines""viml code executed at startup
extraLuaConfigtypes.lines""lua code executed at startup
after.ftPluginwith types; attrsOf lines{}after/ftplugin (viml only)
withNodeJstypes.boolfalsealias for neovim.withNodeJs
withPython3types.boolfalsealias for neovim.withPython3
withRubytypes.boolfalsealias for neovim.withRuby
eagerPluginswith types; listOf (either package eagerPluginConfig)[]plugins loaded at startup
lazyPluginswith types; listOf (either package lazyPluginConfig)[]plugins lazy loaded
lazyGroupstypes.listOf lazyGroupConfig[]plugin groups lazy loaded
timertypes.int100time used for loading plugin (msec)
logLeveltypes.enum [ "debug" "info" "warn" "error" ]"warn"

pluginConfigDetail

nametypedefaultdescription
languagetypes.enum [ "vim" "lua" ]vim-
codetypes.lines""setup code
argstypes.attrs{}bring the values of nix into the code . see example.

eagerPluginConfig

nametypedefaultdescription
startupConfigwith types; either lines pluginConfigDetail""setup code executed at startup
extraPackageswith types; listOf package[]nix packages

lazyPluginConfig

nametypedefaultdescription
startupConfigwith types; either lines pluginConfigDetail""setup code executed at startup
extraPackageswith types; listOf package[]nix packages
preConfigwith types; either lines pluginConfigDetail""setup code executed before load plugin
postConfigwith types; either lines pluginConfigDetail""setup code executed after load plugin
dependPluginswith types; listOf (either package lazyPluginConfig)[]plugins on which this plugin depends
dependGroupswith types; listOf str[]groups on which this plugin depends
onModuleswith types; listOf str[]load plugin when configured modules is called
onEventswith types; listOf str[]load plugin when configured events fires
onFiletypeswith types; listOf str[]load plugin when configured filetype is read
onCommandswith types; listOf str[]load plugin when configured commands execute
useTimertypes.boolfalseset true to load the plugin using timer
useDenopstypes.boolfalsemust be explicitly set to true in the denops plugin

lazyGroupConfig

nametypedefaultdescription
nametypes.strrequiredgroup name
pluginswith types; listOf[]group name
startupConfigwith types; either lines pluginConfigDetail""setup code executed at startup
extraPackageswith types; listOf package[]nix packages
preConfigwith types; either lines pluginConfigDetail""setup code executed before load plugin
postConfigwith types; either lines pluginConfigDetail""setup code executed after load plugin
dependPluginswith types; listOf (either package lazyPluginConfig)[]plugins on which this plugin depends
dependGroupswith types; listOf str[]groups on which this plugin depends
onModuleswith types; listOf str[]load plugin when configured modules is called
onEventswith types; listOf str[]load plugin when configured events fires
onFiletypeswith types; listOf str[]load plugin when configured filetype is read
onCommandswith types; listOf str[]load plugin when configured commands execute
useTimertypes.boolfalseset true to load the plugin using timer