diff options
Diffstat (limited to 'lua/lsp/keybinds.lua')
-rw-r--r-- | lua/lsp/keybinds.lua | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/lua/lsp/keybinds.lua b/lua/lsp/keybinds.lua new file mode 100644 index 00000000..2ca930c7 --- /dev/null +++ b/lua/lsp/keybinds.lua @@ -0,0 +1,29 @@ +local M = {} + +function M.setup() + function M.setup_default_bindings() + if lvim.lsp.default_keybinds then + vim.cmd "nnoremap <silent> gd <cmd>lua vim.lsp.buf.definition()<CR>" + vim.cmd "nnoremap <silent> gD <cmd>lua vim.lsp.buf.declaration()<CR>" + vim.cmd "nnoremap <silent> gr <cmd>lua vim.lsp.buf.references()<CR>" + vim.cmd "nnoremap <silent> gi <cmd>lua vim.lsp.buf.implementation()<CR>" + vim.api.nvim_set_keymap( + "n", + "gl", + '<cmd>lua vim.lsp.diagnostic.show_line_diagnostics({ show_header = false, border = "single" })<CR>', + { noremap = true, silent = true } + ) + + vim.cmd "nnoremap <silent> gp <cmd>lua require'lsp.utils'.PeekDefinition()<CR>" + vim.cmd "nnoremap <silent> K :lua vim.lsp.buf.hover()<CR>" + vim.cmd "nnoremap <silent> <C-p> :lua vim.lsp.diagnostic.goto_prev({popup_opts = {border = lvim.lsp.popup_border}})<CR>" + vim.cmd "nnoremap <silent> <C-n> :lua vim.lsp.diagnostic.goto_next({popup_opts = {border = lvim.lsp.popup_border}})<CR>" + -- vim.cmd "nnoremap <silent> <tab> <cmd>lua vim.lsp.buf.signature_help()<CR>" + -- scroll down hover doc or scroll in definition preview + -- scroll up hover doc + -- vim.cmd 'command! -nargs=0 LspVirtualTextToggle lua require("lsp/virtual_text").toggle()' + end + end +end + +return M |