NeoVimConfiguration/lua/plugins/which-key.lua
2026-03-03 11:22:58 +00:00

50 lines
1.5 KiB
Lua

return {
"folke/which-key.nvim",
event = "VeryLazy",
keys = {
{
"<leader>?",
function()
require("which-key").show({ global = false })
end,
desc = "Buffer Local Keymaps (which-key)",
},
},
init = function()
vim.o.timeout = true
vim.o.timeoutlen = 0
local wk = require('which-key')
wk.setup({
hide_statusline = false,
default_keymap_settings = {
silent = true,
noremap = true,
},
default_mode = 'n',
})
-- Map window keys to leader w
vim.cmd [[nmap <leader>w <C-w>]]
wk.add({
{ "<leader>w", group = "window" },
{ "<leader>w+", desc = "Increase height" },
{ "<leader>w-", desc = "Decrease height" },
{ "<leader>w<", desc = "Decrease width" },
{ "<leader>w=", desc = "Equally high and wide" },
{ "<leader>w>", desc = "Increase width" },
{ "<leader>wT", desc = "Break out into a new tab" },
{ "<leader>wh", desc = "Go to the left window" },
{ "<leader>wj", desc = "Go to the down window" },
{ "<leader>wk", desc = "Go to the up window" },
{ "<leader>wl", desc = "Go to the right window" },
{ "<leader>wq", desc = "Quit a window" },
{ "<leader>ws", desc = "Split window" },
{ "<leader>wv", desc = "Split window vertically" },
{ "<leader>ww", desc = "Pick Window" },
{ "<leader>wx", desc = "Swap current with next" },
{ "<leader>w|", desc = "Max out the width" },
})
end
}