feat(nvim): simplify lsp config

dev-docs
Moritz Böhme 2023-08-11 17:38:26 +02:00
parent 44adf70862
commit 92b9ac1233
Signed by: moritz
GPG Key ID: 970C6E89EB0547A9
5 changed files with 22 additions and 132 deletions

View File

@ -55,38 +55,6 @@
"type": "github" "type": "github"
} }
}, },
"cmp-async-path": {
"flake": false,
"locked": {
"lastModified": 1673896803,
"narHash": "sha256-dgAiVbdMiKjiKWk+dJf/Zz8T20+D4OalGH5dTzYi5aM=",
"owner": "FelipeLema",
"repo": "cmp-async-path",
"rev": "d8229a93d7b71f22c66ca35ac9e6c6cd850ec61d",
"type": "github"
},
"original": {
"owner": "FelipeLema",
"repo": "cmp-async-path",
"type": "github"
}
},
"copilot-lua": {
"flake": false,
"locked": {
"lastModified": 1688190439,
"narHash": "sha256-lD9FdbKKZ6d/BjIfqp0Ust2hqSYNLpCFWxuaKUO9qLs=",
"owner": "zbirenbaum",
"repo": "copilot.lua",
"rev": "e48bd7020a98be217d85c006a298656294fd6210",
"type": "github"
},
"original": {
"owner": "zbirenbaum",
"repo": "copilot.lua",
"type": "github"
}
},
"darwin": { "darwin": {
"inputs": { "inputs": {
"nixpkgs": [ "nixpkgs": [
@ -470,22 +438,6 @@
"type": "github" "type": "github"
} }
}, },
"leap-spooky-nvim": {
"flake": false,
"locked": {
"lastModified": 1687792124,
"narHash": "sha256-EPqbsG7KFHdnbW430+BSrPeOoVy99KtIC8OpFbV1ycw=",
"owner": "ggandor",
"repo": "leap-spooky.nvim",
"rev": "e003f2aa376190148f2e7731a60c89239335013c",
"type": "github"
},
"original": {
"owner": "ggandor",
"repo": "leap-spooky.nvim",
"type": "github"
}
},
"lowdown-src": { "lowdown-src": {
"flake": false, "flake": false,
"locked": { "locked": {
@ -502,22 +454,6 @@
"type": "github" "type": "github"
} }
}, },
"lspsaga-nvim": {
"flake": false,
"locked": {
"lastModified": 1689849495,
"narHash": "sha256-tD3UxJUtYoxUMTFF4gfKChVfI5SxZQ2C12WRF73Ahc4=",
"owner": "glepnir",
"repo": "lspsaga.nvim",
"rev": "0c20101ac826961a7052c4ad9d5f7f791b4adab1",
"type": "github"
},
"original": {
"owner": "glepnir",
"repo": "lspsaga.nvim",
"type": "github"
}
},
"master": { "master": {
"locked": { "locked": {
"lastModified": 1689880801, "lastModified": 1689880801,
@ -848,15 +784,11 @@
"agenix": "agenix", "agenix": "agenix",
"arkenfox-userjs": "arkenfox-userjs", "arkenfox-userjs": "arkenfox-userjs",
"asus-touchpad-numpad-driver": "asus-touchpad-numpad-driver", "asus-touchpad-numpad-driver": "asus-touchpad-numpad-driver",
"cmp-async-path": "cmp-async-path",
"copilot-lua": "copilot-lua",
"flake-utils": "flake-utils", "flake-utils": "flake-utils",
"home-manager": "home-manager_2", "home-manager": "home-manager_2",
"hypr-contrib": "hypr-contrib", "hypr-contrib": "hypr-contrib",
"hyprland": "hyprland", "hyprland": "hyprland",
"hyprpaper": "hyprpaper", "hyprpaper": "hyprpaper",
"leap-spooky-nvim": "leap-spooky-nvim",
"lspsaga-nvim": "lspsaga-nvim",
"master": "master", "master": "master",
"neovim-nightly-overlay": "neovim-nightly-overlay", "neovim-nightly-overlay": "neovim-nightly-overlay",
"nil": "nil", "nil": "nil",

View File

@ -35,24 +35,12 @@
# Neovim # Neovim
neovim-nightly-overlay.url = "github:nix-community/neovim-nightly-overlay"; neovim-nightly-overlay.url = "github:nix-community/neovim-nightly-overlay";
cmp-async-path.url = "github:FelipeLema/cmp-async-path";
cmp-async-path.flake = false;
copilot-lua.flake = false;
copilot-lua.url = "github:zbirenbaum/copilot.lua";
lspsaga-nvim.flake = false;
lspsaga-nvim.url = "github:glepnir/lspsaga.nvim";
nvim-treesitter-textsubjects.flake = false; nvim-treesitter-textsubjects.flake = false;
nvim-treesitter-textsubjects.url = "github:RRethy/nvim-treesitter-textsubjects"; nvim-treesitter-textsubjects.url = "github:RRethy/nvim-treesitter-textsubjects";
smartcolumn-nvim.flake = false; smartcolumn-nvim.flake = false;
smartcolumn-nvim.url = "github:m4xshen/smartcolumn.nvim"; smartcolumn-nvim.url = "github:m4xshen/smartcolumn.nvim";
leap-spooky-nvim.flake = false;
leap-spooky-nvim.url = "github:ggandor/leap-spooky.nvim";
telekasten-nvim.flake = false; telekasten-nvim.flake = false;
telekasten-nvim.url = "github:renerocksai/telekasten.nvim"; telekasten-nvim.url = "github:renerocksai/telekasten.nvim";

View File

@ -132,13 +132,6 @@ with builtins;
{ plugin = which-key-nvim; } { plugin = which-key-nvim; }
{ plugin = lspkind-nvim; } { plugin = lspkind-nvim; }
{ plugin = lsp_lines-nvim; } { plugin = lsp_lines-nvim; }
{
plugin = lspsaga-nvim-original;
dependencies = [
{ plugin = nvim-web-devicons; }
{ plugin = nvim-treesitter.withAllGrammars; }
];
}
{ {
plugin = nvim-ufo; plugin = nvim-ufo;
dependencies = [ dependencies = [

View File

@ -53,51 +53,50 @@ capabilities.textDocument.foldingRange = {
} }
require("ufo").setup() require("ufo").setup()
require("lspsaga").setup({
symbol_in_winbar = {
enable = false,
},
lightbulb = {
enable = false,
enable_in_insert = false,
},
})
local lspconfig = require("lspconfig") local lspconfig = require("lspconfig")
local on_attach_def = function(_, bufnr) local on_attach_def = function(_, bufnr)
require("which-key").register({ require("which-key").register({
K = { "<cmd>Lspsaga hover_doc ++quiet<cr>", "show info" }, K = { vim.lsp.buf.hover, "Hover" },
["<leader>"] = { ["<leader>"] = {
l = { l = {
d = { "<cmd>Lspsaga show_cursor_diagnostics<cr>", "open diagnostic window" }, d = { vim.diagnostic.open_float, "Open diagnostic window" },
c = { "<cmd>Lspsaga code_action<cr>", "code action" }, c = { vim.lsp.buf.code_action, "Code action" },
r = { "<cmd>Lspsaga rename<cr>", "rename" }, r = { vim.lsp.buf.rename, "Rename" },
i = { "<cmd>Lspsaga hover_doc ++keep<cr>", "show info (sticky)" },
f = { f = {
function() function()
vim.lsp.buf.format({ async = true }) vim.lsp.buf.format({ async = true })
end, end,
"format (lsp)", "Format (lsp)",
mode = { "n", "v" }, mode = { "n", "v" },
}, },
}, },
t = { t = {
l = { lsp_lines.toggle, "lsp lines" }, l = { lsp_lines.toggle, "Lsp lines" },
}, },
}, },
g = { g = {
d = { "<cmd>Lspsaga peek_definition<cr>", "Goto definition" }, d = {
t = { "<cmd>Lspsaga peek_type_definition<cr>", "Goto type defininition" }, function()
h = { "<cmd>Lspsaga lsp_finder<CR>", "Lsp finder" }, require("telescope.builtin").lsp_definitions({ reuse_win = true })
r = { "<cmd>Telescope lsp_references<cr>", "Goto reference" }, end,
"Goto definition",
},
t = {
function()
require("telescope.builtin").lsp_type_definitions({ reuse_win = true })
end,
"Goto type defininition",
},
r = { "<cmd>Telescope lsp_references<cr>", "Goto references" },
D = { vim.lsp.buf.declaration, "Goto declaration" }, D = { vim.lsp.buf.declaration, "Goto declaration" },
I = { "<cmd>Telescope lsp_implementations<cr>", "Goto implementation" }, I = { "<cmd>Telescope lsp_implementations<cr>", "Goto implementation" },
K = { vim.lsp.buf.signature_help, "Signature help" },
}, },
["["] = { ["["] = {
d = { "<cmd>Lspsaga diagnostic_jump_prev<cr>", "Previous diagnostic" }, d = { vim.diagnostic.goto_prev, "Previous diagnostic" },
}, },
["]"] = { ["]"] = {
d = { "<cmd>Lspsaga diagnostic_jump_next<cr>", "Next diagnostic" }, d = { vim.diagnostic.goto_next, "Next diagnostic" },
}, },
}, { buffer = bufnr, silent = true }) }, { buffer = bufnr, silent = true })
end end

View File

@ -16,28 +16,6 @@ with lib.my;
src = inputs.smartcolumn-nvim; src = inputs.smartcolumn-nvim;
}; };
copilot-lua = prev.vimPlugins.copilot-lua.overrideAttrs (_: {
version = mkVersionInput inputs.copilot-lua;
src = inputs.copilot-lua;
});
lspsaga-nvim-original = prev.vimPlugins.lspsaga-nvim-original.overrideAttrs (_: {
version = mkVersionInput inputs.lspsaga-nvim;
src = inputs.lspsaga-nvim;
});
cmp-async-path = prev.vimPlugins.cmp-path.overrideAttrs (_: {
pname = "cmp-async-path";
version = mkVersionInput inputs.cmp-async-path;
src = inputs.cmp-async-path;
});
leap-spooky-nvim = prev.vimUtils.buildVimPluginFrom2Nix {
pname = "leap-spooky-nvim";
version = mkVersionInput inputs.leap-spooky-nvim;
src = inputs.leap-spooky-nvim;
};
telekasten-nvim = prev.vimUtils.buildVimPluginFrom2Nix { telekasten-nvim = prev.vimUtils.buildVimPluginFrom2Nix {
pname = "telekasten-nvim"; pname = "telekasten-nvim";
version = mkVersionInput inputs.telekasten-nvim; version = mkVersionInput inputs.telekasten-nvim;