local keymap = vim.keymap local opts = { noremap = true, silent = true } local function defaultOpts(desc) if desc == nil then return { noremap = true, silent = true } else return { noremap = true, silent = true, desc = desc } end end -- Buffer Navigation keymap.set("n", "bn", "bnext", defaultOpts("Next Buffer")) keymap.set("n", "bp", "bprevious", defaultOpts("Prev Buffer")) keymap.set("n", "bb", "e #", defaultOpts("Switch Buffer")) -- Directory Navigation keymap.set("n", "of", ":Neotree toggle", defaultOpts("Neotree")) -- Pane and Window Navigation keymap.set("n", "", "h", defaultOpts("Navigate Left")) keymap.set("n", "", "j", defaultOpts("Navigate Down")) keymap.set("n", "", "k", defaultOpts("Navigate Up")) keymap.set("n", "", "l", defaultOpts("Navigate Right")) -- Window Management keymap.set("n", "sv", ":vsplit", defaultOpts("Split Vertically")) keymap.set("n", "sh", ":split", defaultOpts("Split Horizontally")) -- Comments vim.api.nvim_set_keymap("n", "", "gcc", { noremap = false }) vim.api.nvim_set_keymap("v", "", "gcc", { noremap = false })