mirror of
https://github.com/pojokcodeid/nvim-lazy.git
synced 2025-06-22 08:53:31 +02:00
add lsp saga
This commit is contained in:
parent
4645605892
commit
64fd286322
4 changed files with 82 additions and 1 deletions
|
@ -20,6 +20,7 @@
|
||||||
"jaq-nvim": { "branch": "master", "commit": "236296aae555657487d1bb4d066cbde9d79d8cd4" },
|
"jaq-nvim": { "branch": "master", "commit": "236296aae555657487d1bb4d066cbde9d79d8cd4" },
|
||||||
"lazy.nvim": { "branch": "main", "commit": "9b208696e139a404d159963b975a5b90af38439b" },
|
"lazy.nvim": { "branch": "main", "commit": "9b208696e139a404d159963b975a5b90af38439b" },
|
||||||
"live-server": { "branch": "main", "commit": "ecd7c1418823b65dd2bca710587c80afe42c973e" },
|
"live-server": { "branch": "main", "commit": "ecd7c1418823b65dd2bca710587c80afe42c973e" },
|
||||||
|
"lspsaga.nvim": { "branch": "main", "commit": "ac134041da57f7592a46775f235ed84880bc0b27" },
|
||||||
"lualine.nvim": { "branch": "master", "commit": "a52f078026b27694d2290e34efa61a6e4a690621" },
|
"lualine.nvim": { "branch": "master", "commit": "a52f078026b27694d2290e34efa61a6e4a690621" },
|
||||||
"lunar.nvim": { "branch": "master", "commit": "29eedf78c430ad9acebdcba814d77619edbe2bac" },
|
"lunar.nvim": { "branch": "master", "commit": "29eedf78c430ad9acebdcba814d77619edbe2bac" },
|
||||||
"markdown-preview.nvim": { "branch": "master", "commit": "9becceee5740b7db6914da87358a183ad11b2049" },
|
"markdown-preview.nvim": { "branch": "master", "commit": "9becceee5740b7db6914da87358a183ad11b2049" },
|
||||||
|
|
|
@ -482,4 +482,16 @@ return {
|
||||||
require("user.indent-o-matic")
|
require("user.indent-o-matic")
|
||||||
end,
|
end,
|
||||||
},
|
},
|
||||||
|
-- Lsp Saga
|
||||||
|
{
|
||||||
|
"glepnir/lspsaga.nvim",
|
||||||
|
event = "BufRead",
|
||||||
|
config = function()
|
||||||
|
require("lspsaga").setup({})
|
||||||
|
end,
|
||||||
|
dependencies = { { "kyazdani42/nvim-web-devicons" } },
|
||||||
|
init = function()
|
||||||
|
require("user.lspsaga_config")
|
||||||
|
end,
|
||||||
|
},
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
local status_ok, impatient = pcall(require, "impatient")
|
local status_ok, impatient = pcall(require, "impatient")
|
||||||
if not status_ok then
|
if not status_ok then
|
||||||
return
|
return
|
||||||
end
|
end
|
||||||
|
|
||||||
impatient.enable_profile()
|
impatient.enable_profile()
|
||||||
|
|
68
lua/user/lspsaga_config.lua
Normal file
68
lua/user/lspsaga_config.lua
Normal file
|
@ -0,0 +1,68 @@
|
||||||
|
local keymap = vim.keymap.set
|
||||||
|
-- Lsp finder find the symbol definition implement reference
|
||||||
|
-- if there is no implement it will hide
|
||||||
|
-- when you use action in finder like open vsplit then you can
|
||||||
|
-- use <C-t> to jump back
|
||||||
|
keymap("n", "gh", "<cmd>Lspsaga lsp_finder<CR>")
|
||||||
|
|
||||||
|
-- Code action
|
||||||
|
keymap({ "n", "v" }, "<leader>ca", "<cmd>Lspsaga code_action<CR>")
|
||||||
|
|
||||||
|
-- Rename
|
||||||
|
keymap("n", "gr", "<cmd>Lspsaga rename<CR>")
|
||||||
|
|
||||||
|
-- Rename word in whole project
|
||||||
|
keymap("n", "gr", "<cmd>Lspsaga rename ++project<CR>")
|
||||||
|
|
||||||
|
-- Peek Definition
|
||||||
|
-- you can edit the definition file in this float window
|
||||||
|
-- also support open/vsplit/etc operation check definition_action_keys
|
||||||
|
-- support tagstack C-t jump back
|
||||||
|
keymap("n", "gd", "<cmd>Lspsaga peek_definition<CR>")
|
||||||
|
|
||||||
|
-- Go to Definition
|
||||||
|
keymap("n", "gd", "<cmd>Lspsaga goto_definition<CR>")
|
||||||
|
|
||||||
|
-- Show line diagnostics you can pass argument ++unfocus to make
|
||||||
|
-- show_line_diagnostics float window unfocus
|
||||||
|
keymap("n", "<leader>sl", "<cmd>Lspsaga show_line_diagnostics<CR>")
|
||||||
|
|
||||||
|
-- Show cursor diagnostic
|
||||||
|
-- also like show_line_diagnostics support pass ++unfocus
|
||||||
|
keymap("n", "<leader>sc", "<cmd>Lspsaga show_cursor_diagnostics<CR>")
|
||||||
|
|
||||||
|
-- Show buffer diagnostic
|
||||||
|
keymap("n", "<leader>sb", "<cmd>Lspsaga show_buf_diagnostics<CR>")
|
||||||
|
|
||||||
|
-- Diagnostic jump can use `<c-o>` to jump back
|
||||||
|
keymap("n", "[e", "<cmd>Lspsaga diagnostic_jump_prev<CR>")
|
||||||
|
keymap("n", "]e", "<cmd>Lspsaga diagnostic_jump_next<CR>")
|
||||||
|
|
||||||
|
-- Diagnostic jump with filter like Only jump to error
|
||||||
|
keymap("n", "[E", function()
|
||||||
|
require("lspsaga.diagnostic"):goto_prev({ severity = vim.diagnostic.severity.ERROR })
|
||||||
|
end)
|
||||||
|
keymap("n", "]E", function()
|
||||||
|
require("lspsaga.diagnostic"):goto_next({ severity = vim.diagnostic.severity.ERROR })
|
||||||
|
end)
|
||||||
|
|
||||||
|
-- Toggle Outline
|
||||||
|
keymap("n", "<leader>o", "<cmd>Lspsaga outline<CR>")
|
||||||
|
|
||||||
|
-- Hover Doc
|
||||||
|
-- if there has no hover will have a notify no information available
|
||||||
|
-- to disable it just Lspsaga hover_doc ++quiet
|
||||||
|
-- press twice it will jump into hover window
|
||||||
|
keymap("n", "K", "<cmd>Lspsaga hover_doc<CR>")
|
||||||
|
-- if you want keep hover window in right top you can use ++keep arg
|
||||||
|
-- notice if you use hover with ++keep you press this keymap it will
|
||||||
|
-- close the hover window .if you want jump to hover window must use
|
||||||
|
-- wincmd command <C-w>w
|
||||||
|
keymap("n", "K", "<cmd>Lspsaga hover_doc ++keep<CR>")
|
||||||
|
|
||||||
|
-- Callhierarchy
|
||||||
|
keymap("n", "<Leader>ci", "<cmd>Lspsaga incoming_calls<CR>")
|
||||||
|
keymap("n", "<Leader>co", "<cmd>Lspsaga outgoing_calls<CR>")
|
||||||
|
|
||||||
|
-- Float terminal
|
||||||
|
keymap({ "n", "t" }, "<A-d>", "<cmd>Lspsaga term_toggle<CR>")
|
Loading…
Add table
Add a link
Reference in a new issue