From 5596e63efdc7b5bb7a77b1ad614860746a7df5d8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Moritz=20B=C3=B6hme?= Date: Thu, 31 Jul 2025 16:19:36 +0200 Subject: [PATCH] feat!(nvim): replace lspsaga with builtins --- modules/moritz/programs/nvim/plugins/lsp.nix | 61 ++++++++++++------- .../moritz/programs/nvim/plugins/lspsaga.nix | 40 ------------ 2 files changed, 39 insertions(+), 62 deletions(-) delete mode 100644 modules/moritz/programs/nvim/plugins/lspsaga.nix diff --git a/modules/moritz/programs/nvim/plugins/lsp.nix b/modules/moritz/programs/nvim/plugins/lsp.nix index 7cb5bc9..4669edd 100644 --- a/modules/moritz/programs/nvim/plugins/lsp.nix +++ b/modules/moritz/programs/nvim/plugins/lsp.nix @@ -32,33 +32,50 @@ plugins.lsp = { enable = true; inlayHints = true; - servers.rust_analyzer = { - enable = true; - installRustc = false; - installCargo = false; - settings.files.watcher = "server"; - }; - servers.lexical.enable = true; - servers.lua_ls.enable = true; - servers.nil_ls.enable = true; - servers.nixd.enable = true; - servers.nixd.extraOptions.settings.nixd = { - nixpkgs = { - expr = "import { }"; + servers = { + rust_analyzer = { + enable = true; + installRustc = false; + installCargo = false; + settings.files.watcher = "server"; }; - options = { - nixos = { - expr = ''builtins.head (builtins.attrValues ((builtins.getFlake ("git+file://" + toString ./.)).nixosConfigurations).options''; + lexical.enable = true; + lua_ls.enable = true; + nil_ls.enable = true; + nixd.enable = true; + nixd.extraOptions.settings.nixd = { + nixpkgs = { + expr = "import { }"; }; - "flake-parts" = { - expr = ''(builtins.getFlake ("git+file://" + toString ./.)).debug.options''; - }; - "flake-parts2" = { - expr = ''(builtins.getFlake ("git+file://" + toString ./.)).currentSystem.options''; + options = { + nixos = { + expr = ''builtins.head (builtins.attrValues ((builtins.getFlake ("git+file://" + toString ./.)).nixosConfigurations).options''; + }; + "flake-parts" = { + expr = ''(builtins.getFlake ("git+file://" + toString ./.)).debug.options''; + }; + "flake-parts2" = { + expr = ''(builtins.getFlake ("git+file://" + toString ./.)).currentSystem.options''; + }; }; }; + tinymist.enable = true; + }; + keymaps = { + diagnostic = { + "]j" = "goto_next"; + "[k" = "goto_prev"; + }; + lspBuf = { + K = "hover"; + gD = "references"; + gd = "definition"; + gi = "implementation"; + gt = "type_definition"; + "r" = "rename"; + "q" = "code_action"; + }; }; - servers.tinymist.enable = true; }; }; } diff --git a/modules/moritz/programs/nvim/plugins/lspsaga.nix b/modules/moritz/programs/nvim/plugins/lspsaga.nix deleted file mode 100644 index a93702b..0000000 --- a/modules/moritz/programs/nvim/plugins/lspsaga.nix +++ /dev/null @@ -1,40 +0,0 @@ -{...}: { - home-manager.users.moritz.programs.nixvim = { - plugins = { - lspsaga = { - enable = true; - codeAction.keys.quit = ""; - lightbulb.virtualText = false; - }; - web-devicons.enable = true; - }; - keymapsOnEvents = { - LspAttach = [ - { - key = "q"; - action = "Lspsaga code_action"; - options.desc = "Quickfix"; - options.buffer = true; - } - { - key = "gd"; - action = "Lspsaga goto_definition"; - options.desc = "Goto Definition"; - options.buffer = true; - } - { - key = "r"; - action = "Lspsaga rename"; - options.desc = "Rename"; - options.buffer = true; - } - { - key = "K"; - action = "Lspsaga hover_doc"; - options.desc = "Hover"; - options.buffer = true; - } - ]; - }; - }; -}