mirror of
https://github.com/LazyVim/LazyVim.git
synced 2026-07-23 13:01:08 +00:00
Merge ac9c6d67a9 into 459a4c3b10
This commit is contained in:
commit
8ff822dadf
2 changed files with 39 additions and 7 deletions
|
|
@ -164,6 +164,28 @@ if vim.lsp.inlay_hint then
|
||||||
Snacks.toggle.inlay_hints():map("<leader>uh")
|
Snacks.toggle.inlay_hints():map("<leader>uh")
|
||||||
end
|
end
|
||||||
|
|
||||||
|
if vim.fn.has("nvim-0.12") == 1 then
|
||||||
|
if Snacks.toggle.codelens then
|
||||||
|
Snacks.toggle.codelens():map("<leader>cC")
|
||||||
|
else
|
||||||
|
-- TODO: remove this after codelens toggler is added to Snacks
|
||||||
|
Snacks.toggle.new({
|
||||||
|
id = "codelens",
|
||||||
|
name = "Codelens",
|
||||||
|
get = function()
|
||||||
|
return vim.lsp.codelens.is_enabled({ bufnr = 0 })
|
||||||
|
end,
|
||||||
|
set = function(state)
|
||||||
|
vim.lsp.codelens.enable(state, { bufnr = 0 })
|
||||||
|
end,
|
||||||
|
}):map("<leader>cC")
|
||||||
|
end
|
||||||
|
else
|
||||||
|
require("lazyvim.plugins.lsp.keymaps").set({}, {
|
||||||
|
{ "<leader>cC", vim.lsp.codelens.refresh, desc = "Refresh & Display Codelens", mode = { "n" }, has = "codeLens" },
|
||||||
|
})
|
||||||
|
end
|
||||||
|
|
||||||
-- lazygit
|
-- lazygit
|
||||||
if vim.fn.executable("lazygit") == 1 then
|
if vim.fn.executable("lazygit") == 1 then
|
||||||
map("n", "<leader>gg", function() Snacks.lazygit( { cwd = LazyVim.root.git() }) end, { desc = "Lazygit (Root Dir)" })
|
map("n", "<leader>gg", function() Snacks.lazygit( { cwd = LazyVim.root.git() }) end, { desc = "Lazygit (Root Dir)" })
|
||||||
|
|
|
||||||
|
|
@ -45,6 +45,7 @@ return {
|
||||||
-- provide the code lenses.
|
-- provide the code lenses.
|
||||||
codelens = {
|
codelens = {
|
||||||
enabled = false,
|
enabled = false,
|
||||||
|
exclude = {}, -- filetypes for which you don't want to enable codelens
|
||||||
},
|
},
|
||||||
-- Enable this to enable the builtin LSP folding on Neovim.
|
-- Enable this to enable the builtin LSP folding on Neovim.
|
||||||
-- Be aware that you also will need to properly configure your LSP server to
|
-- Be aware that you also will need to properly configure your LSP server to
|
||||||
|
|
@ -87,7 +88,6 @@ return {
|
||||||
{ "<c-k>", function() return vim.lsp.buf.signature_help() end, mode = "i", desc = "Signature Help", has = "signatureHelp" },
|
{ "<c-k>", function() return vim.lsp.buf.signature_help() end, mode = "i", desc = "Signature Help", has = "signatureHelp" },
|
||||||
{ "<leader>ca", vim.lsp.buf.code_action, desc = "Code Action", mode = { "n", "x" }, has = "codeAction" },
|
{ "<leader>ca", vim.lsp.buf.code_action, desc = "Code Action", mode = { "n", "x" }, has = "codeAction" },
|
||||||
{ "<leader>cc", vim.lsp.codelens.run, desc = "Run Codelens", mode = { "n", "x" }, has = "codeLens" },
|
{ "<leader>cc", vim.lsp.codelens.run, desc = "Run Codelens", mode = { "n", "x" }, has = "codeLens" },
|
||||||
{ "<leader>cC", vim.lsp.codelens.refresh, desc = "Refresh & Display Codelens", mode = { "n" }, has = "codeLens" },
|
|
||||||
{ "<leader>cR", function() Snacks.rename.rename_file() end, desc = "Rename File", mode ={"n"}, has = { "workspace/didRenameFiles", "workspace/willRenameFiles" } },
|
{ "<leader>cR", function() Snacks.rename.rename_file() end, desc = "Rename File", mode ={"n"}, has = { "workspace/didRenameFiles", "workspace/willRenameFiles" } },
|
||||||
{ "<leader>cr", vim.lsp.buf.rename, desc = "Rename", has = "rename" },
|
{ "<leader>cr", vim.lsp.buf.rename, desc = "Rename", has = "rename" },
|
||||||
{ "<leader>cA", LazyVim.lsp.action.source, desc = "Source Action", has = "codeAction" },
|
{ "<leader>cA", LazyVim.lsp.action.source, desc = "Source Action", has = "codeAction" },
|
||||||
|
|
@ -199,13 +199,23 @@ return {
|
||||||
end
|
end
|
||||||
|
|
||||||
-- code lens
|
-- code lens
|
||||||
if opts.codelens.enabled and vim.lsp.codelens then
|
if opts.codelens.enabled then
|
||||||
Snacks.util.lsp.on({ method = "textDocument/codeLens" }, function(buffer)
|
Snacks.util.lsp.on({ method = "textDocument/codeLens" }, function(buffer)
|
||||||
vim.lsp.codelens.refresh()
|
if
|
||||||
vim.api.nvim_create_autocmd({ "BufEnter", "CursorHold", "InsertLeave" }, {
|
vim.api.nvim_buf_is_valid(buffer)
|
||||||
buffer = buffer,
|
and vim.bo[buffer].buftype == ""
|
||||||
callback = vim.lsp.codelens.refresh,
|
and not vim.tbl_contains(opts.codelens.exclude, vim.bo[buffer].filetype)
|
||||||
})
|
then
|
||||||
|
if vim.fn.has("nvim-0.12") == 1 then
|
||||||
|
vim.lsp.codelens.enable(true, { bufnr = buffer })
|
||||||
|
else
|
||||||
|
vim.lsp.codelens.refresh()
|
||||||
|
vim.api.nvim_create_autocmd({ "BufEnter", "CursorHold", "InsertLeave" }, {
|
||||||
|
buffer = buffer,
|
||||||
|
callback = vim.lsp.codelens.refresh,
|
||||||
|
})
|
||||||
|
end
|
||||||
|
end
|
||||||
end)
|
end)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue