diff --git a/lua/setup/lspinstall.lua b/lua/setup/lspinstall.lua index f3878ff..498ad57 100644 --- a/lua/setup/lspinstall.lua +++ b/lua/setup/lspinstall.lua @@ -26,9 +26,6 @@ OpenDiagFloat = function () end local on_attach = function(client, bufnr) - local function buf_set_keymap(...) - vim.api.nvim_buf_set_keymap(bufnr, ...) - end local function buf_set_option(...) vim.api.nvim_buf_set_option(bufnr, ...) end @@ -37,33 +34,34 @@ local on_attach = function(client, bufnr) vim.api.nvim_buf_set_option(0, 'formatexpr', 'v:lua.vim.lsp.formatexpr()') -- Mappings. - local opts = { noremap = true, silent = true } - buf_set_keymap('n', ',', 'lua vim.lsp.diagnostic.goto_prev()', opts) - buf_set_keymap('n', ';', 'lua vim.lsp.diagnostic.goto_next()', opts) - buf_set_keymap('n', 'a', 'lua vim.lsp.buf.code_action()', opts) - buf_set_keymap('n', 'd', 'lua vim.lsp.buf.definition()', opts) - buf_set_keymap('n', 'e', 'lua vim.lsp.buf.declaration()', opts) - buf_set_keymap('n', 'h', 'lua vim.lsp.buf.hover()', opts) - buf_set_keymap('n', 'c', 'lua vim.lsp.buf.outgoing_calls()', opts) - buf_set_keymap('n', 'C', 'lua vim.lsp.buf.incoming_calls()', opts) - buf_set_keymap('n', 'm', 'lua vim.lsp.buf.rename()', opts) - -- buf_set_keymap('n', 'r', 'lua vim.lsp.buf.references()') - buf_set_keymap('n', '', 'Telescope lsp_dynamic_workspace_symbols', opts) - buf_set_keymap('n', 'D', 'lua vim.lsp.buf.type_definition()', opts) - buf_set_keymap('n', '', 'lua vim.lsp.buf.signature_help()', opts) - buf_set_keymap('n', 'r', 'Telescope lsp_references', opts) - buf_set_keymap('n', '', 'Telescope aerial', opts) - buf_set_keymap('n', 'v', 'Telescope diagnostics bufnr=0', opts) - buf_set_keymap('n', '', ':ClangdSwitchSourceHeader', opts) + local opts ={ noremap = true, silent = true, buffer = true } + vim.keymap.set('n', ',', vim.lsp.diagnostic.goto_prev, opts ) + vim.keymap.set('n', ';', vim.lsp.diagnostic.goto_next, opts) + vim.keymap.set('n', 'a', vim.lsp.buf.code_action, opts) + vim.keymap.set('n', 'd', vim.lsp.buf.definition, opts) + vim.keymap.set('n', 'e', vim.lsp.buf.declaration, opts) + vim.keymap.set('n', 'h', vim.lsp.buf.hover, opts) + vim.keymap.set('n', 'c', vim.lsp.buf.outgoing_calls, opts) + vim.keymap.set('n', 'C', vim.lsp.buf.incoming_calls, opts) + vim.keymap.set('n', 'm', vim.lsp.buf.rename, opts) + local tele_builtins = require('telescope.builtin') + vim.keymap.set('n', '', tele_builtins.lsp_dynamic_workspace_symbols, opts) + vim.keymap.set('n', 'D', vim.lsp.buf.type_definition, opts) + vim.keymap.set('n', '', vim.lsp.buf.signature_help, opts) + vim.keymap.set('n', 'r', tele_builtins.lsp_references, opts) + local aerial = require('aerial') + vim.keymap.set('n', '', aerial.toggle, opts) + vim.keymap.set('n', 'v', function () tele_builtins.diagnostics({bufnr = 0}) end, opts) + vim.keymap.set('n', '', 'ClangdSwitchSourceHeader', opts) vim.cmd([[autocmd CursorHold lua OpenDiagFloat()]]) -- Set some keybinds conditional on server capabilities if client.server_capabilities.documentFormattingProvider then - buf_set_keymap('n', 'f', 'lua vim.lsp.buf.format{async=true}', opts) + vim.keymap.set('n', 'f', vim.lsp.buf.format, opts) end if client.server_capabilities.documentRangeFormattingProvider then - buf_set_keymap('v', 'f', 'lua vim.lsp.buf.range_formatting()', opts) + vim.keymap.set('v', 'f', vim.lsp.buf.range_formatting, opts) end -- Set autocommands conditional on server_capabilities