diff --git a/nvim/.config/nvim/lua/lsp.lua b/nvim/.config/nvim/lua/lsp.lua index 013b33c..3d0a9cb 100644 --- a/nvim/.config/nvim/lua/lsp.lua +++ b/nvim/.config/nvim/lua/lsp.lua @@ -51,24 +51,36 @@ local on_attach = function(client, bufnr) end local opts = { noremap=true, silent=true } + vim.api.nvim_buf_set_keymap(bufnr, 'n', 'gd', 'lua vim.lsp.buf.definition()', opts) + vim.api.nvim_buf_set_keymap(bufnr, 'n', 'gD', 'lua vim.lsp.buf.declaration()', opts) vim.api.nvim_buf_set_keymap(bufnr, 'n', 'K', 'lua vim.lsp.buf.hover()', opts) vim.api.nvim_buf_set_keymap(bufnr, 'n', 'gr', 'lua vim.lsp.buf.references()', opts) vim.api.nvim_buf_set_keymap(bufnr, 'n', 'ga', 'lua vim.lsp.buf.code_action()', opts) vim.api.nvim_buf_set_keymap(bufnr, 'n', 'gi', 'lua vim.lsp.buf.implementation()', opts) vim.api.nvim_buf_set_keymap(bufnr, 'n', 'gs', 'lua vim.lsp.buf.signature_help()', opts) - vim.api.nvim_buf_set_keymap(bufnr, 'n', 'gt', 'lua vim.lsp.buf.type_definition()', opts) - vim.api.nvim_buf_set_keymap(bufnr, 'n', 'g0', 'lua vim.lsp.buf.document_symbol()', opts) - vim.api.nvim_buf_set_keymap(bufnr, 'n', 'gW', 'lua vim.lsp.buf.workspace_symbol()', opts) - vim.api.nvim_buf_set_keymap(bufnr, 'n', 'de', 'lua vim.lsp.buf.declaration()', opts) - vim.api.nvim_buf_set_keymap(bufnr, 'n', 'rn', 'lua vim.lsp.buf.rename()', opts) + vim.api.nvim_buf_set_keymap(bufnr, 'n', '', 'lua vim.lsp.buf.type_definition()', opts) + vim.api.nvim_buf_set_keymap(bufnr, 'n', '1gd', 'lua vim.lsp.buf.document_symbol()', opts) + vim.api.nvim_buf_set_keymap(bufnr, 'n', '1gD', 'lua vim.lsp.buf.workspace_symbol()', opts) + vim.api.nvim_buf_set_keymap(bufnr, 'n', 'gR', 'lua vim.lsp.buf.rename()', opts) vim.api.nvim_buf_set_keymap(bufnr, 'n', 'pd', 'lua peek_definition()', opts) + vim.api.nvim_buf_set_keymap(bufnr, 'n', '[d', 'lua vim.lsp.diagnostic.goto_prev { wrap = false }', opts) vim.api.nvim_buf_set_keymap(bufnr, 'n', ']d', 'lua vim.lsp.diagnostic.goto_next { wrap = false }', opts) vim.api.nvim_buf_set_keymap(bufnr, 'n', '[D', 'lua vim.lsp.diagnostic.goto_prev()', opts) vim.api.nvim_buf_set_keymap(bufnr, 'n', ']D', 'lua vim.lsp.diagnostic.goto_next()', opts) vim.api.nvim_buf_set_keymap(bufnr, 'n', 'do', 'lua vim.lsp.diagnostic.set_loclist()', opts) - vim.api.nvim_buf_set_keymap(bufnr, 'n', 'gD', 'lua vim.lsp.diagnostic.show_line_diagnostics()', opts) + vim.api.nvim_buf_set_keymap(bufnr, 'n', ',d', 'lua vim.lsp.diagnostic.show_line_diagnostics()', opts) + + vim.api.nvim_buf_set_keymap(bufnr, 'n', 'pa', 'lua vim.lsp.buf.add_workspace_folder()', opts) + vim.api.nvim_buf_set_keymap(bufnr, 'n', 'pr', 'lua vim.lsp.buf.remove_workspace_folder()', opts) + vim.api.nvim_buf_set_keymap(bufnr, 'n', 'pl', 'lua print(vim.inspect(vim.lsp.buf.list_workspace_folders()))', opts) + + if client.resolved_capabilities.document_formatting then + vim.api.nvim_buf_set_keymap(bufnr, 'n', 'gq', 'lua vim.lsp.buf.formatting()', opts) + elseif client.resolved_capabilities.document_range_formatting then + vim.api.nvim_buf_set_keymap(bufnr, 'n', 'gq', 'lua vim.lsp.buf.formatting()', opts) + end protocol.CompletionItemKind = { ' '; -- text