feat(neovim): add which-key mappings
This commit is contained in:
parent
af37d88f90
commit
51f2778efc
5 changed files with 120 additions and 63 deletions
|
@ -1,16 +1,33 @@
|
|||
vim.keymap.set("n", "gd", vim.lsp.buf.definition, { silent = true })
|
||||
vim.keymap.set("n", "gp", peek_definition, { silent = true })
|
||||
vim.keymap.set("n", "gy", vim.lsp.buf.type_definition, { silent = true })
|
||||
vim.keymap.set("n", "gi", vim.lsp.buf.implementation, { silent = true })
|
||||
vim.keymap.set("n", "gr", vim.lsp.buf.references, { silent = true })
|
||||
vim.keymap.set("n", "gD", vim.lsp.buf.declaration, { silent = true })
|
||||
vim.keymap.set("n", "K", vim.lsp.buf.hover, { silent = true })
|
||||
vim.keymap.set("n", "<c-k>", vim.lsp.buf.signature_help, { silent = true })
|
||||
vim.keymap.set("n", "<leader>sd", vim.lsp.buf.document_symbol, { silent = true })
|
||||
vim.keymap.set("n", "<leader>sw", vim.lsp.buf.workspace_symbol, { silent = true })
|
||||
vim.keymap.set("n", "<leader>f", function()
|
||||
vim.lsp.buf.formatting_seq_sync(nil, nil, { "tsserver", "diagnosticls" })
|
||||
end, { silent = true })
|
||||
vim.keymap.set("n", "<leader>a", vim.lsp.buf.code_action, { silent = true })
|
||||
vim.keymap.set("n", "<leader>r", vim.lsp.buf.rename, { silent = true })
|
||||
vim.keymap.set("n", "<leader>l", vim.lsp.codelens.run, { silent = true })
|
||||
local wk = require("which-key")
|
||||
|
||||
wk.register({
|
||||
g = {
|
||||
name = "Go to",
|
||||
d = { vim.lsp.buf.definition, "Go to definition" },
|
||||
p = { vim.lsp.buf.peek_definition, "Show definition" },
|
||||
y = { vim.lsp.buf.type_definition, "Go to type definition" },
|
||||
|
||||
i = { vim.lsp.buf.implementation, "Go to implementation" },
|
||||
r = { vim.lsp.buf.references, "Show references" },
|
||||
D = { vim.lsp.buf.declaration, "Show declarations" },
|
||||
},
|
||||
K = { vim.lsp.buf.hover, "Show info" },
|
||||
["<c-k>"] = { vim.lsp.buf.signature_help, "Show signature" },
|
||||
}, { mode = "n" })
|
||||
|
||||
wk.register({
|
||||
s = {
|
||||
name = "Symbols",
|
||||
d = { vim.lsp.buf.document_symbol, "Document symbol" },
|
||||
w = { vim.lsp.buf.workspace_symbol, "Workspace symbol" },
|
||||
},
|
||||
f = {
|
||||
function()
|
||||
vim.lsp.buf.formatting_seq_sync(nil, nil, { "tsserver", "diagnosticls" })
|
||||
end,
|
||||
"Format file",
|
||||
},
|
||||
a = { vim.lsp.buf.code_action, "Code actions" },
|
||||
r = { vim.lsp.buf.rename, "Rename" },
|
||||
l = { vim.lsp.codelens.run, "Run codelens" },
|
||||
}, { mode = "n", prefix = "<leader>" })
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue