diff --git a/nvim/.config/nvim/lua/lsp.lua b/nvim/.config/nvim/lua/lsp.lua index 7fe290e..dbe762a 100644 --- a/nvim/.config/nvim/lua/lsp.lua +++ b/nvim/.config/nvim/lua/lsp.lua @@ -119,11 +119,13 @@ local on_attach = function(client, bufnr) vim.api.nvim_buf_set_keymap(bufnr, 'n', 'pd' , 'lua PeekDefinition()' , opts) vim.api.nvim_buf_set_keymap(bufnr, 'n', 'k', 'lua vim.lsp.buf.hover()' , opts) vim.api.nvim_buf_set_keymap(bufnr, 'n', 'S', 'lua vim.lsp.buf.signature_help()' , opts) - vim.api.nvim_buf_set_keymap(bufnr, 'n', 'ga' , 'lua vim.lsp.buf.code_action()' , opts) - vim.api.nvim_buf_set_keymap(bufnr, 'v', 'ga' , 'lua vim.lsp.buf.range_code_action()', opts) - vim.api.nvim_buf_set_keymap(bufnr, 'n', 'r', 'lua vim.lsp.buf.code_action{ only = \'refactor\' }' , opts) - vim.api.nvim_buf_set_keymap(bufnr, 'v', 'r', 'lua vim.lsp.buf.range_code_action{ only = \'refactor\' }', opts) + if client.resolved_capabilities.code_action then + vim.api.nvim_buf_set_keymap(bufnr, 'n', 'ga' , 'lua vim.lsp.buf.code_action()' , opts) + vim.api.nvim_buf_set_keymap(bufnr, 'v', 'ga' , 'lua vim.lsp.buf.range_code_action()', opts) + vim.api.nvim_buf_set_keymap(bufnr, 'n', 'r', 'lua vim.lsp.buf.code_action{ only = \'refactor\' }' , opts) + vim.api.nvim_buf_set_keymap(bufnr, 'v', 'r', 'lua vim.lsp.buf.range_code_action{ only = \'refactor\' }', opts) + end if client.resolved_capabilities.document_range_formatting then vim.api.nvim_buf_set_keymap(bufnr, 'x', 'gq', 'lua FormatRangeOperator()', opts)