From c48282e0812befca372ff91b5b53642f69caf112 Mon Sep 17 00:00:00 2001 From: Joe Date: Fri, 22 Sep 2023 16:23:43 +0200 Subject: up --- .config/nvim/after/plugin/lsp.lua | 41 ++++++++++++++++++++++----------------- 1 file changed, 23 insertions(+), 18 deletions(-) (limited to '.config/nvim/after') diff --git a/.config/nvim/after/plugin/lsp.lua b/.config/nvim/after/plugin/lsp.lua index 66d4ad8..e63c38e 100644 --- a/.config/nvim/after/plugin/lsp.lua +++ b/.config/nvim/after/plugin/lsp.lua @@ -2,18 +2,38 @@ local lsp = require('lsp-zero') lsp.preset('recommended') +lsp.on_attach(function(client, bufnr) + local opts = { buffer = bufnr, remap = false } + + vim.keymap.set('n', 'gd', function() vim.lsp.buf.definition() end, opts) + vim.keymap.set('n', 'K', function() vim.lsp.buf.hover() end, opts) + vim.keymap.set('n', 'vws', function() vim.lsp.buf.workspace_symbol() end, opts) + vim.keymap.set('n', 'vd', function() vim.diagnostic.open_float() end, opts) + vim.keymap.set('n', '[d', function() vim.diagnostic.goto_prev() end, opts) + vim.keymap.set('n', ']d', function() vim.diagnostic.goto_next() end, opts) + vim.keymap.set('n', 'vca', function() vim.lsp.buf.code_actions() end, opts) + vim.keymap.set('n', 'vrr', function() vim.lsp.buf.references() end, opts) + vim.keymap.set('n', 'vrn', function() vim.lsp.buf.rename() end, opts) + vim.keymap.set('i', '', function() vim.lsp.buf.signature_help() end, opts) +end) + require('mason').setup({}) require('mason-lspconfig').setup({ ensure_installed = { 'tsserver', 'eslint', - 'sumneko_lua', + 'rust_analyzer', + 'lua_ls', 'ccls', 'gopls', - 'rust_analyzer', + 'arduino_language_server', + 'bashls', + 'cmake', + 'marksman', + 'ltex', }, handlers = { - lsp_zero.default_setup, + lsp.default_setup, }, }) @@ -29,18 +49,3 @@ local cmp_mappings = lsp.defaults.cmp_mappings({ -- lsp.set_preferences({ -- sign_icons = { } -- }) - -lsp.on_attach(function(client, bufnr) - local opts = { buffer = bufnr, remap = false } - - vim.keymap.set('n', 'gd', function() vim.lsp.buf.definition() end, opts) - vim.keymap.set('n', 'K', function() vim.lsp.buf.hover() end, opts) - vim.keymap.set('n', 'vws', function() vim.lsp.buf.workspace_symbol() end, opts) - vim.keymap.set('n', 'vd', function() vim.diagnostic.open_float() end, opts) - vim.keymap.set('n', '[d', function() vim.diagnostic.goto_next() end, opts) - vim.keymap.set('n', ']d', function() vim.diagnostic.goto_prev() end, opts) - vim.keymap.set('n', 'vca', function() vim.lsp.buf.code_actions() end, opts) - vim.keymap.set('n', 'vrr', function() vim.lsp.buf.references() end, opts) - vim.keymap.set('n', 'vrn', function() vim.lsp.buf.rename() end, opts) - vim.keymap.set('i', '', function() vim.lsp.buf.signature_help() end, opts) -end) -- cgit v1.2.3