diff options
| author | Arpit Chakladar <54011232+arpitchakladar@users.noreply.github.com> | 2025-12-13 23:45:45 +0530 |
|---|---|---|
| committer | Arpit Chakladar <54011232+arpitchakladar@users.noreply.github.com> | 2025-12-13 23:45:45 +0530 |
| commit | f0a384027b7765597ab7a3410a65e25673aa4835 (patch) | |
| tree | 10ad5d651e6cce984fb644df71671614f77799cb /modules/tools/nixvim | |
| parent | 80d9462da696d4143f63c5c0fdd29c3c799754b5 (diff) | |
| download | home-manager-config-f0a384027b7765597ab7a3410a65e25673aa4835.tar.gz home-manager-config-f0a384027b7765597ab7a3410a65e25673aa4835.zip | |
Added auto completion to nixvim
Diffstat (limited to 'modules/tools/nixvim')
| -rw-r--r-- | modules/tools/nixvim/default.nix | 1 | ||||
| -rw-r--r-- | modules/tools/nixvim/plugins/cmp.nix | 17 | ||||
| -rw-r--r-- | modules/tools/nixvim/plugins/default.nix | 2 | ||||
| -rw-r--r-- | modules/tools/nixvim/plugins/lsp.nix | 44 | ||||
| -rw-r--r-- | modules/tools/nixvim/plugins/notify.nix | 2 |
5 files changed, 65 insertions, 1 deletions
diff --git a/modules/tools/nixvim/default.nix b/modules/tools/nixvim/default.nix index 921dbe8..bca3451 100644 --- a/modules/tools/nixvim/default.nix +++ b/modules/tools/nixvim/default.nix @@ -30,6 +30,7 @@ in { list = true; laststatus = 3; foldlevel = 99; + clipboard = "unnamedplus"; }; clipboard.providers.xclip.enable = true; extraConfigLuaPre = with config.scheme.withHashtag; '' diff --git a/modules/tools/nixvim/plugins/cmp.nix b/modules/tools/nixvim/plugins/cmp.nix new file mode 100644 index 0000000..e74f468 --- /dev/null +++ b/modules/tools/nixvim/plugins/cmp.nix @@ -0,0 +1,17 @@ +{ config, lib, ... }: + +{ + config.programs.nixvim.plugins.cmp = lib.mkIf config.tools.nixvim.enable { + enable = true; + autoEnableSources = true; + settings = { + snippet.expand = "function(args) require('luasnip').lsp_expand(args.body) end"; + mapping = { + "<C-Space>" = "cmp.mapping.complete()"; + "<CR>" = "cmp.mapping.confirm({ select = true })"; + "<Tab>" = "cmp.mapping.select_next_item()"; + "<S-Tab>" = "cmp.mapping.select_prev_item()"; + }; + }; + }; +} diff --git a/modules/tools/nixvim/plugins/default.nix b/modules/tools/nixvim/plugins/default.nix index b1a9e04..65131fb 100644 --- a/modules/tools/nixvim/plugins/default.nix +++ b/modules/tools/nixvim/plugins/default.nix @@ -2,7 +2,9 @@ { imports = [ + ./cmp.nix ./comment.nix + ./lsp.nix ./lualine.nix ./noice.nix ./notify.nix diff --git a/modules/tools/nixvim/plugins/lsp.nix b/modules/tools/nixvim/plugins/lsp.nix new file mode 100644 index 0000000..be9cc15 --- /dev/null +++ b/modules/tools/nixvim/plugins/lsp.nix @@ -0,0 +1,44 @@ +{ config, lib, ... }: + +{ + config.programs.nixvim.plugins.lsp = lib.mkIf config.tools.nixvim.enable { + enable = true; + servers = { + nil_ls = { + enable = true; + }; + lua_ls = { + enable = true; + package = null; + }; + nixd = { + enable = true; + package = null; + }; + pyright = { + enable = true; + package = null; + }; + ts_ls = { + enable = true; + package = null; + }; + clangd = { + enable = true; + package = null; + }; + jsonls = { + enable = true; + package = null; + }; + yamlls = { + enable = true; + package = null; + }; + bash-language-server = { + enable = true; + package = null; + }; + }; + }; +} diff --git a/modules/tools/nixvim/plugins/notify.nix b/modules/tools/nixvim/plugins/notify.nix index cb19102..09ac9cb 100644 --- a/modules/tools/nixvim/plugins/notify.nix +++ b/modules/tools/nixvim/plugins/notify.nix @@ -2,6 +2,6 @@ { config.programs.nixvim.plugins.notify = lib.mkIf config.tools.nixvim.enable { - enable = true; + enable = false; }; } |
