From 727a6edc7545f6c47a8433c8c8cd9bc0423d0103 Mon Sep 17 00:00:00 2001 From: Joe Date: Fri, 22 Sep 2023 15:07:14 +0200 Subject: up --- .config/nvim/after/plugin/lsp.lua | 46 ++++++++++++++++++++++++++++++++++ .config/nvim/after/plugin/whichkey.lua | 14 +++++------ 2 files changed, 52 insertions(+), 8 deletions(-) create mode 100644 .config/nvim/after/plugin/lsp.lua (limited to '.config/nvim/after') diff --git a/.config/nvim/after/plugin/lsp.lua b/.config/nvim/after/plugin/lsp.lua new file mode 100644 index 0000000..66d4ad8 --- /dev/null +++ b/.config/nvim/after/plugin/lsp.lua @@ -0,0 +1,46 @@ +local lsp = require('lsp-zero') + +lsp.preset('recommended') + +require('mason').setup({}) +require('mason-lspconfig').setup({ + ensure_installed = { + 'tsserver', + 'eslint', + 'sumneko_lua', + 'ccls', + 'gopls', + 'rust_analyzer', + }, + handlers = { + lsp_zero.default_setup, + }, +}) + +local cmp = require('cmp') +local cmp_select = { behavior = cmp.SelectBehavior.Select } +local cmp_mappings = lsp.defaults.cmp_mappings({ + [''] = cmp.mapping.select_prev_item(cmp_select), + [''] = cmp.mapping.select_next_item(cmp_select), + [''] = cmp.mapping.confirm({ select = true }), + [''] = cmp.mapping.complete(), +}) + +-- 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) diff --git a/.config/nvim/after/plugin/whichkey.lua b/.config/nvim/after/plugin/whichkey.lua index 7b74e73..de726b6 100644 --- a/.config/nvim/after/plugin/whichkey.lua +++ b/.config/nvim/after/plugin/whichkey.lua @@ -15,13 +15,10 @@ wk.register({ G = { ':FloatermNew lazygit', 'lazygit', noremap = true, silent = true }, h = { ':Startify', 'startify', noremap = true, silent = true }, k = { ':w:bp:bd #', 'write and close buffer', noremap = true, silent = false }, - p = { ':CocList -A --normal yank', 'CoC paste', noremap = true, silent = true }, - u = { ':UndotreeShow', 'undotree', noremap = true, silent = true }, + u = { vim.cmd.UndotreeToggle, 'undotree', noremap = true, silent = true }, v = { ':FloatermNew vifm', 'vifm', noremap = true, silent = true }, w = { ':w', 'write buffer', noremap = true, silent = false }, x = { ':w:bp:bd #', 'write and close buffer', noremap = true, silent = false }, - q = { name = '+coc-fix-current' }, - r = { name = '+coc-rename' }, f = { name = 'telescope', -- f = { ':Telescope find_files', 'find files', noremap = true, silent = true }, @@ -32,10 +29,11 @@ wk.register({ end, 'grep string', noremap = true, silent = true }, }, g = { - name = 'grep', - a = { ':Ag', 'the_silver_searcher', noremap = true, silent = true }, - g = { ':Grep', 'grep', noremap = true, silent = true }, - r = { ':Rg', 'ripgrep', noremap = true, silent = true }, + name = 'git', + s = { vim.cmd.Git, 'git' }, + -- a = { ':Ag', 'the_silver_searcher', noremap = true, silent = true }, + -- g = { ':Grep', 'grep', noremap = true, silent = true }, + -- r = { ':Rg', 'ripgrep', noremap = true, silent = true }, }, v = { name = 'nvim', -- cgit v1.2.3