" lsp_saga function! s:nvim_lsp_show_documentation() abort if index(['vim', 'help'], &filetype) >= 0 execute 'h ' . expand('') else lua require('lspsaga.hover').render_hover_doc() endif endfunction nnoremap ck call nvim_lsp_show_documentation() nnoremap cf Lspsaga code_action nnoremap cr Lspsaga rename lua << EOF require("mason").setup() require("mason-lspconfig").setup() require('lspsaga').setup({ error_sign = " ", warn_sign = " ", hint_sign = " ", infor_sign = " ", }) -- keyboard shortcut vim.keymap.set('n', 'cf', 'lua vim.lsp.buf.formatting()') vim.keymap.set('n', 'cr', 'lua vim.lsp.buf.references()') vim.keymap.set('n', 'cd', 'lua vim.lsp.buf.definition()') vim.keymap.set('n', 'cD', 'lua vim.lsp.buf.declaration()') vim.keymap.set('n', 'ci', 'lua vim.lsp.buf.implementation()') vim.keymap.set('n', 'ct', 'lua vim.lsp.buf.type_definition()') vim.keymap.set('n', 'cn', 'lua vim.lsp.buf.rename()') vim.keymap.set('n', 'ca', 'lua vim.lsp.buf.code_action()') vim.keymap.set('n', 'ce', 'lua vim.diagnostic.open_float()') vim.keymap.set('n', 'c]', 'lua vim.diagnostic.goto_next()') vim.keymap.set('n', 'c[', 'lua vim.diagnostic.goto_prev()') EOF