diff options
| author | Marek Muzyka <marek@muzyka.dev> | 2025-11-14 19:26:59 +0100 |
|---|---|---|
| committer | Marek Muzyka <marek@muzyka.dev> | 2025-11-14 19:26:59 +0100 |
| commit | 9e69e3554ee1dd56f055423de09a0a575fbe73b0 (patch) | |
| tree | 095c62ec326a338a57b18921caaebe663eab86e1 /lua/plugins/lsp.lua | |
Basic config
Diffstat (limited to 'lua/plugins/lsp.lua')
| -rw-r--r-- | lua/plugins/lsp.lua | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/lua/plugins/lsp.lua b/lua/plugins/lsp.lua new file mode 100644 index 0000000..e0340bd --- /dev/null +++ b/lua/plugins/lsp.lua @@ -0,0 +1,24 @@ +return { + "neovim/nvim-lspconfig", + opts = { + servers = { + clangd = {}, + ocamllsp = {}, + pylsp = {} + } + }, + config = function(_, opts) + local lspconfig = require("lspconfig") + local on_attach = function(client, bufnr) + local opts = { buffer = bufnr } + vim.keymap.set("n", "gd", vim.lsp.buf.definition, opts) + vim.keymap.set("n", "<leader>cr", vim.lsp.buf.rename, opts) + end + for server, config in pairs(opts.servers) do + config.on_attach = on_attach + config.capabilities = require("blink.cmp").get_lsp_capabilities(config.capabilities) + vim.lsp.config(server, config) + vim.lsp.enable(server) + end + end +} |
