30 lines
693 B
Nix
30 lines
693 B
Nix
{ wrapNeovim, neovim-unwrapped, vimPlugins, ... }:
|
|
|
|
let
|
|
lib = import ./lib.nix;
|
|
|
|
callPlugins = list: builtins.map (p: import p vimPlugins) list;
|
|
|
|
plugins = callPlugins [
|
|
./plugins/syntax
|
|
./plugins/explorer
|
|
./plugins/theme
|
|
./plugins/lsp
|
|
./plugins/formatter
|
|
];
|
|
|
|
basicConfigs = map builtins.readFile [ ./config/basic.lua ];
|
|
pluginConfigs = lib.extractAttrs "luaConfig" plugins;
|
|
allConfigs = basicConfigs ++ pluginConfigs;
|
|
in
|
|
wrapNeovim neovim-unwrapped {
|
|
withPython3 = false;
|
|
withNodeJs = false;
|
|
withRuby = false;
|
|
|
|
configure = {
|
|
customRC = lib.mkLuaRc allConfigs;
|
|
|
|
packages.myVimPackages = { start = lib.extractAttrs "plugins" plugins; };
|
|
};
|
|
}
|