{ config, lib, pkgs, inputs, ... }: let inherit (lib) mkEnableOption mkIf readFile; in { home-manager.users.moritz.programs.nixvim = { plugins = { lspsaga = { enable = true; codeAction.keys.quit = "<esc>"; lightbulb.virtualText = false; }; web-devicons.enable = true; }; keymapsOnEvents = { LspAttach = [ { key = "<leader>q"; action = "<cmd>Lspsaga code_action<cr>"; options.desc = "Quickfix"; options.buffer = true; } { key = "gd"; action = "<cmd>Lspsaga goto_definition<cr>"; options.desc = "Goto Definition"; options.buffer = true; } { key = "<leader>r"; action = "<cmd>Lspsaga rename<cr>"; options.desc = "Rename"; options.buffer = true; } { key = "K"; action = "<cmd>Lspsaga hover_doc<cr>"; options.desc = "Hover"; options.buffer = true; } ]; }; }; }