diff options
| author | Robert Günzler <r@gnzler.io> | 2022-06-15 04:47:34 +0200 |
|---|---|---|
| committer | Robert Günzler <r@gnzler.io> | 2022-06-15 04:47:34 +0200 |
| commit | 844606b0c499926afa8a7f473433cd5b6bd73562 (patch) | |
| tree | a939f1ab141bc70dbed6ad0561b76a4931fa2940 /.vim/lua/lsp.lua | |
| parent | d0c018dceb6d3056936c9cdfdd4e9e807cde0ff9 (diff) | |
vim/lsp: make all keymaps local to the attached buffer
Diffstat (limited to '')
| -rw-r--r-- | .vim/lua/lsp.lua | 45 |
1 files changed, 21 insertions, 24 deletions
diff --git a/.vim/lua/lsp.lua b/.vim/lua/lsp.lua index d1da1b3..530a49e 100644 --- a/.vim/lua/lsp.lua +++ b/.vim/lua/lsp.lua @@ -33,33 +33,33 @@ local my_attach = function(client, bufnr) end if client.supports_method('textDocument/definition') then - vim.keymap.set('n', '<C-]>' , vim.lsp.buf.definition) - vim.keymap.set('n', 'gd' , vim.lsp.buf.definition) - vim.keymap.set('n', 'gR' , vim.lsp.buf.references) + vim.keymap.set('n', '<C-]>' , vim.lsp.buf.definition, {buffer = bufnr}) + vim.keymap.set('n', 'gd' , vim.lsp.buf.definition, {buffer = bufnr}) + vim.keymap.set('n', 'gR' , vim.lsp.buf.references, {buffer = bufnr}) wk_register({ ['gd'] = {'goto definition'}, ['gR'] = {'goto references'}, - }, { buffer = bufnr }) + }, {buffer = bufnr}) end if client.supports_method('textDocument/hover') then - vim.keymap.set('n', 'K' , vim.lsp.buf.hover) + vim.keymap.set('n', 'K' , vim.lsp.buf.hover, {buffer = bufnr}) end if client.supports_method('textDocument/rename') then - vim.keymap.set('n', 'grr' , vim.lsp.buf.rename) + vim.keymap.set('n', 'grr' , vim.lsp.buf.rename, {buffer = bufnr}) wk_register({ ['grr'] = {'rename'}, - }, { buffer = bufnr }) + }, {buffer = bufnr}) end if client.supports_method('signatureHelp') then - vim.keymap.set('n', '<c-h>' , vim.lsp.buf.signature_help) - -- vim.keymap.set('n', ';s ' , vim.lsp.buf.signature_help) + vim.keymap.set('n', '<c-h>' , vim.lsp.buf.signature_help, {buffer = bufnr}) + -- vim.keymap.set('n', ';s ' , vim.lsp.buf.signature_help, {buffer = bufnr}) end if client.supports_method('textDocument/formatting') then vim.api.nvim_buf_set_option(bufnr, 'formatexpr', 'v:lua.vim.lsp.formatexpr()') - vim.keymap.set('n', '<leader>f' , vim.lsp.buf.format) + vim.keymap.set('n', '<leader>f' , vim.lsp.buf.format, {buffer = bufnr}) wk_register({ ['<leader>f'] = {'format'}, - }, { buffer = bufnr }) + }, {buffer = bufnr}) vim.api.nvim_create_autocmd('BufWritePre', { buffer = bufnr, group = group, @@ -67,34 +67,34 @@ local my_attach = function(client, bufnr) }) end if client.supports_method('textDocument/typeDefinition') then - vim.keymap.set('n', 'gT' , vim.lsp.buf.type_definition) + vim.keymap.set('n', 'gT' , vim.lsp.buf.type_definition, {buffer = bufnr}) wk_register({ ['gT'] = {'goto typedef'}, - }, { buffer = bufnr }) + }, {buffer = bufnr}) end if client.supports_method('textDocument/declaration') then - vim.keymap.set('n', 'gD' , vim.lsp.buf.declaration) + vim.keymap.set('n', 'gD' , vim.lsp.buf.declaration, {buffer = bufnr}) wk_register({ ['gD'] = {'goto declaration'}, - }, { buffer = bufnr }) + }, {buffer = bufnr}) end if client.supports_method('textDocument/implementation') then - vim.keymap.set('n', 'gI' , vim.lsp.buf.implementation) + vim.keymap.set('n', 'gI' , vim.lsp.buf.implementation, {buffer = bufnr}) wk_register({ ['gI'] = {'goto implementation'}, - }, { buffer = bufnr }) + }, {buffer = bufnr}) end if client.supports_method('workspace/symbol') then - vim.keymap.set('n', 'gW' , vim.lsp.buf.workspace_symbol) + vim.keymap.set('n', 'gW' , vim.lsp.buf.workspace_symbol, {buffer = bufnr}) wk_register({ ['gW'] = {'goto symbol'}, - }, { buffer = bufnr }) + }, {buffer = bufnr}) end -- if client.resolved_capabilities.document_symbol then - -- vim.keymap.set('n', 'g0', vim.lsp.buf.document_symbol) + -- vim.keymap.set('n', 'g0', vim.lsp.buf.document_symbol, {buffer = bufnr}) -- end if client.supports_method('textDocument/codeAction') then - vim.keymap.set('n', 'ga', vim.lsp.buf.code_action) + vim.keymap.set('n', 'ga', vim.lsp.buf.code_action, {buffer = bufnr}) wk_register({['ga'] = {'code action'}}, {buffer = bufnr}) end end @@ -118,9 +118,6 @@ local capabilities = function() return caps end --- vim.lsp.handlers['textDocument/hover'] = vim.lsp.with(vim.lsp.handlers.hover, {border = border}), --- vim.lsp.handlers['textDocument/signatureHelp'] = vim.lsp.with(vim.lsp.handlers.signatureHelp, {border = border}), - local servers = { ccls = { disabled = true, root_dir = lsp.util.root_pattern('.ccls','meson.build','.git'), |