108 lines
3.5 KiB
Lua
108 lines
3.5 KiB
Lua
local wk = require("which-key")
|
|
|
|
local mappings = {
|
|
f = {
|
|
name = "Telescope", --optional group name
|
|
b = { "<cmd>Telescope buffers<cr>", "Find Buffer" },
|
|
f = { "<cmd>Telescope find_files<cr>", "Find File" },
|
|
s = { "<cmd>Telescope live_grep<cr>", "Live Grep" },
|
|
h = { "<cmd>Telescope help_tags<cr>", "Find Help" },
|
|
r = { "<cmd>Telescope oldfiles<cr>", "Open Recent File", noremap = false },
|
|
w = { "<cmd>Telescope grep_string<cr>", "Find string under cursor" },
|
|
d = { "<cmd>Telescope lsp_document_symbols<cr>", "Find LSP Symbols" },
|
|
-- does not work as of now: --i = { "<cmd>AdvancedGitSearch<cr>", "Git Search" },
|
|
--n = { "New File" }, --just a label, don't create any mapping
|
|
--e = "Edit File", --same as above
|
|
},
|
|
t = {
|
|
name = "tabs",
|
|
n = { "<cmd>tabnext<cr>", "Next Tab" },
|
|
p = { "<cmd>tabprevious<cr>", "Previous Tab" },
|
|
f = { "<cmd>tabfirst<cr>", "First Tab" },
|
|
l = { "<cmd>tablast<cr>", "Last Tab" },
|
|
a = { "<cmd>tabnew<cr>", "Add new Tab" },
|
|
c = { "<cmd>tabclose<cr>", "Close Tab" },
|
|
m = {
|
|
name = "Move Tab",
|
|
f = { "<cmd>tabmove 0<cr>", "Move Tab to First" },
|
|
l = { "<cmd>tabmove $<cr>", "Move Tab to Last" },
|
|
i = { ":tabmove ", "Input position to move Tab to" },
|
|
}
|
|
},
|
|
K = { "Show definition" },
|
|
u = { "Toggle undo-tree" },
|
|
i = { "Auto format file with linter(?), also on F3" },
|
|
r = {
|
|
name = "Rename",
|
|
r = { "Rename Variable" }
|
|
},
|
|
l = {
|
|
e = { "Open diagnostic float" }
|
|
},
|
|
w = {
|
|
name = "Workspaces + Whichkey",
|
|
a = { "Add workspace folder" },
|
|
r = { "Remove workspace folder" },
|
|
w = { "<cmd>WhichKey<cr>", "Show keybindings" },
|
|
},
|
|
s = {
|
|
name = "Sessions",
|
|
n = { "New Session" },
|
|
u = { "Update Session" },
|
|
d = { "Delete Session" },
|
|
l = { "Load Session" },
|
|
},
|
|
g = {
|
|
name = "Gitsigns",
|
|
b = { "<cmd>Gitsigns blameline<cr>", "Show Blame Inline" },
|
|
B = { "<cmd>Gitsigns blame<cr>", "Toggle Blame Sidebar" },
|
|
s = {
|
|
name = "stage",
|
|
h = { "<cmd>Gitsigns stage_hunk<cr>", "Stage Hunk"},
|
|
b = { "<cmd>Gitsigns stage_buffer<cr>", "Stage Buffer"},
|
|
},
|
|
h = {
|
|
name = "hunks",
|
|
l = { "<cmd>Gitsigns setloclist<cr>", "List file Changes" },
|
|
n = { "<cmd>Gitsigns nav_hunk<cr>", "Nav Hunk"},
|
|
},
|
|
r = {
|
|
name = "reset",
|
|
h = { "<cmd>Gitsigns reset_hunk<cr>", "Reset Hunk"},
|
|
b = { "<cmd>Gitsigns reset_buffer<cr>", "Reset Buffer"},
|
|
},
|
|
u = { "<cmd>Gitsigns undo_stage_hunk<cr>", "Undo Stage Hunk"},
|
|
},
|
|
n = { "<cmd>nohl<cr>", "Stop highlighting search results" },
|
|
}
|
|
|
|
local opts = {
|
|
mode = "n",
|
|
prefix = '<leader>'
|
|
}
|
|
|
|
wk.register({ mappings, opts, prefix = "<leader>" })
|
|
local mappings_leaderless = {
|
|
K = { "Show definition" },
|
|
g = {
|
|
name = "lsp functions",
|
|
d = { "go to definition" },
|
|
D = { "go to declaration" },
|
|
i = { "show implementations" },
|
|
r = { "list all references to symbol under cursor" },
|
|
},
|
|
["["] = {
|
|
name = "jump backward",
|
|
d = "Previous Diagnostic",
|
|
c = "Previous diff change",
|
|
h = { "<cmd>Gitsigns prev_hunk<cr><cr>", "Previous changed git block" },
|
|
},
|
|
["]"] = {
|
|
name = "jump forward",
|
|
d = "Next Diagnostic",
|
|
c = "Next diff change",
|
|
h = { "<cmd>Gitsigns next_hunk<cr><cr>", "Next changed git block" },
|
|
},
|
|
}
|
|
wk.register({ mappings_leaderless, opts })
|