diff options
author | Raymaekers Luca <raymaekers.luca@gmail.com> | 2023-09-01 00:38:59 +0200 |
---|---|---|
committer | Raymaekers Luca <raymaekers.luca@gmail.com> | 2023-09-01 00:38:59 +0200 |
commit | d94e878591beed81db514cd429fc638f3c296785 (patch) | |
tree | bded143aa5a6ce0326f52ed68f4f03d904e9a600 /config/essentials/nvim/lua/user/cmp | |
parent | d0ae21d18c24fa0c4e7d39d3e57e6613501b697d (diff) | |
parent | 2d4be6b13ee3f3154e308d09ba54f0f61e4d5b2f (diff) |
Merge branch 'main' of /var/git/dotfiles
Diffstat (limited to 'config/essentials/nvim/lua/user/cmp')
-rw-r--r-- | config/essentials/nvim/lua/user/cmp/setup.lua | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/config/essentials/nvim/lua/user/cmp/setup.lua b/config/essentials/nvim/lua/user/cmp/setup.lua index 8f8291e..36d55e3 100644 --- a/config/essentials/nvim/lua/user/cmp/setup.lua +++ b/config/essentials/nvim/lua/user/cmp/setup.lua @@ -42,3 +42,27 @@ cmp.setup.cmdline(':', { { name = 'cmdline', keyword_length = 4 } }), }) + +local function nnoremap(rhs, lhs, bufopts, desc) + bufopts.desc = desc + vim.keymap.set("n", rhs, lhs, bufopts) +end + +-- Regular Neovim LSP client keymappings +local bufopts = { noremap=true, silent=true } +nnoremap('gD', vim.lsp.buf.declaration, bufopts, "Go to declaration") +nnoremap('gd', vim.lsp.buf.definition, bufopts, "Go to definition") +nnoremap('gi', vim.lsp.buf.implementation, bufopts, "Go to implementation") +nnoremap('K', vim.lsp.buf.hover, bufopts, "Hover text") +nnoremap('<C-k>', vim.lsp.buf.signature_help, bufopts, "Show signature") +nnoremap('<leader>wa', vim.lsp.buf.add_workspace_folder, bufopts, "Add workspace folder") +nnoremap('<leader>wr', vim.lsp.buf.remove_workspace_folder, bufopts, "Remove workspace folder") +nnoremap('<leader>wl', function() +print(vim.inspect(vim.lsp.buf.list_workspace_folders())) +end, bufopts, "List workspace folders") +nnoremap('<leader>D', vim.lsp.buf.type_definition, bufopts, "Go to type definition") +nnoremap('<leader>rn', vim.lsp.buf.rename, bufopts, "Rename") +nnoremap('<leader><Return>', vim.lsp.buf.code_action, bufopts, "Code actions") +vim.keymap.set('v', "<leader><Return>", "<ESC><CMD>lua vim.lsp.buf.range_code_action()<CR>", +{ noremap=true, silent=true, desc = "Code actions" }) +nnoremap('<leader>f', function() vim.lsp.buf.format { async = true } end, bufopts, "Format file") |