diff options
| author | Arpit Chakladar <54011232+arpitchakladar@users.noreply.github.com> | 2024-10-01 00:45:02 +0530 |
|---|---|---|
| committer | Arpit Chakladar <54011232+arpitchakladar@users.noreply.github.com> | 2024-10-01 00:45:02 +0530 |
| commit | 9dc8cc8176be54df0d9ff4e7ef904e619deea3c2 (patch) | |
| tree | 9f03e241cd286c361c6f50a14c2adb60d6615353 /modules/tools/editor/neovim/default.nix | |
| parent | 5f8027fef5ab482be9275aa310ac22dd1d414159 (diff) | |
| download | home-manager-config-9dc8cc8176be54df0d9ff4e7ef904e619deea3c2.tar.gz home-manager-config-9dc8cc8176be54df0d9ff4e7ef904e619deea3c2.zip | |
Added a minimal and full configuration settings to neovim.
Added language server support for the full neovim configuration.
Diffstat (limited to 'modules/tools/editor/neovim/default.nix')
| -rw-r--r-- | modules/tools/editor/neovim/default.nix | 30 |
1 files changed, 15 insertions, 15 deletions
diff --git a/modules/tools/editor/neovim/default.nix b/modules/tools/editor/neovim/default.nix index 87fad55..64f2600 100644 --- a/modules/tools/editor/neovim/default.nix +++ b/modules/tools/editor/neovim/default.nix @@ -3,34 +3,34 @@ { options.tools.editor.neovim = { enable = lib.mkEnableOption "Enables neovim."; + configuration = lib.mkOption { + type = lib.types.enum [ + "minimal" + "full" + ]; + default = "minimal"; + description = "The configuration for neovim to use."; + }; }; - config = lib.mkIf config.tools.editor.neovim.enable { + config = + let + plugins = import ./plugins { inherit config pkgs lib; }; + in lib.mkIf config.tools.editor.neovim.enable { programs.neovim.enable = true; programs.neovim.viAlias = true; programs.neovim.vimAlias = true; programs.neovim.vimdiffAlias = true; programs.neovim.defaultEditor = true; - programs.neovim.extraPackages = with pkgs; [ - gcc # Required for treesitter - ]; + home.packages = plugins.requirements; programs.neovim.extraLuaConfig = '' ${import ./config} -${import ./plugins { inherit config; }} +${plugins.configuration} ''; - programs.neovim.plugins = with pkgs.vimPlugins; [ - comment-nvim - lualine-nvim - nvim-treesitter - nvim-web-devicons - nvim-tree-lua - (base16-vim.overrideAttrs (old: { - patchPhase = "ln -s ${config.scheme base16-vim} colors/base16-scheme.vim"; - })) - ]; + programs.neovim.plugins = plugins.list; }; } |
