diff options
| author | Arpit Chakladar <arpitchakladar@proton.me> | 2026-04-24 01:55:05 +0530 |
|---|---|---|
| committer | Arpit Chakladar <arpitchakladar@proton.me> | 2026-04-24 01:55:05 +0530 |
| commit | 5ee261b4b7b054b758080afbb0bbfcb3ce26fb88 (patch) | |
| tree | 98313f0fef78a77470feb1db4b4eb359f810263b /modules/programs/nixvim | |
| parent | 3e232a2bc7f5c8ea33804be1ea071a91c5f98055 (diff) | |
| download | home-manager-config-5ee261b4b7b054b758080afbb0bbfcb3ce26fb88.tar.gz home-manager-config-5ee261b4b7b054b758080afbb0bbfcb3ce26fb88.zip | |
fixed infinite recusion caused due to nixvim configs
Diffstat (limited to 'modules/programs/nixvim')
| -rw-r--r-- | modules/programs/nixvim/default.nix | 37 | ||||
| -rw-r--r-- | modules/programs/nixvim/plugins/lsp.nix | 129 |
2 files changed, 79 insertions, 87 deletions
diff --git a/modules/programs/nixvim/default.nix b/modules/programs/nixvim/default.nix index 1a66b47..57c6697 100644 --- a/modules/programs/nixvim/default.nix +++ b/modules/programs/nixvim/default.nix @@ -8,11 +8,7 @@ ./plugins ]; - options.programs.nixvim = { - enable = lib.mkEnableOption "Enables nixvim."; - }; - - config = lib.mkIf config.programs.nixvim.enable { + config = { programs.nixvim = { defaultEditor = true; opts = { @@ -26,6 +22,7 @@ laststatus = 3; foldlevel = 99; clipboard = "unnamedplus"; + updatetime = 500; }; clipboard.providers.xclip.enable = true; extraConfigLuaPre = with config.scheme.withHashtag; '' @@ -73,9 +70,37 @@ byteCompileLua.enable = true; combinePlugins.enable = true; }; + + diagnostic = { + settings = { + virtual_text = false; + signs = true; + underline = true; + update_in_insert = false; + float = { + border = "rounded"; + source = true; # Show which LSP the diagnostic is from + header = ""; + prefix = ""; + }; + }; + }; + + # Show diagnostics float on cursor hold + autoCmd = [ + { + event = [ "CursorHold" ]; + pattern = "*"; + callback.__raw = '' + function() + vim.diagnostic.open_float(nil, { focus = false }) + end + ''; + } + ]; }; - home.sessionVariables = { + home.sessionVariables = lib.mkIf config.programs.nixvim.enable { EDITOR = lib.mkForce (lib.getExe config.programs.nixvim.package); MANPAGER = "${lib.getExe config.programs.nixvim.package} +Man!"; }; diff --git a/modules/programs/nixvim/plugins/lsp.nix b/modules/programs/nixvim/plugins/lsp.nix index dbe66a8..7069b97 100644 --- a/modules/programs/nixvim/plugins/lsp.nix +++ b/modules/programs/nixvim/plugins/lsp.nix @@ -2,90 +2,57 @@ # LSP - Language Server Protocol configuration (nvim-lspconfig) { - config.programs.nixvim = lib.mkIf config.programs.nixvim.enable { - plugins.lsp = { - enable = true; - inlayHints = true; - autoLoad = true; - keymaps.lspBuf = { - K = "hover"; - gD = "references"; - gd = "definition"; - gi = "implementation"; - gt = "type_definition"; + config.programs.nixvim.plugins.lsp = lib.mkIf config.programs.nixvim.enable { + enable = true; + inlayHints = true; + autoLoad = true; + keymaps.lspBuf = { + K = "hover"; + gD = "references"; + gd = "definition"; + gi = "implementation"; + gt = "type_definition"; + }; + servers = { + nil_ls = { + 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; - }; - gopls = { - enable = true; - package = null; - }; + lua_ls = { + enable = true; + package = null; }; - }; - - diagnostic = { - settings = { - virtual_text = false; - signs = true; - underline = true; - update_in_insert = false; - float = { - border = "rounded"; - source = true; # Show which LSP the diagnostic is from - header = ""; - prefix = ""; - }; + 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; + }; + gopls = { + enable = true; + package = null; }; }; - - # Show diagnostics float on cursor hold - autoCmd = [ - { - event = [ "CursorHold" ]; - pattern = "*"; - callback.__raw = '' - function() - vim.diagnostic.open_float(nil, { focus = false }) - end - ''; - } - ]; - - # How long before CursorHold fires (in ms) - opts.updatetime = 500; }; } |
