-- set leader key to space vim.g.mapleader = " " local keymap = vim.keymap -- for conciseness --------------------- -- General Keymaps ------------------- -- use jk to exit insert mode keymap.set("i", "jk", "", { desc = "Exit insert mode with jk" }) -- clear search highlights keymap.set("n", "nh", ":nohl", { desc = "Clear search highlights" }) -- delete single character without copying into register -- keymap.set("n", "x", '"_x') -- increment/decrement numbers keymap.set("n", "+", "", { desc = "Increment number" }) -- increment keymap.set("n", "-", "", { desc = "Decrement number" }) -- decrement -- window management keymap.set("n", "sv", "v", { desc = "Split window vertically" }) -- split window vertically keymap.set("n", "sh", "s", { desc = "Split window horizontally" }) -- split window horizontally keymap.set("n", "se", "=", { desc = "Make splits equal size" }) -- make split windows equal width & height keymap.set("n", "sx", "close", { desc = "Close current split" }) -- close current split window keymap.set("n", "to", "tabnew", { desc = "Open new tab" }) -- open new tab keymap.set("n", "tx", "tabclose", { desc = "Close current tab" }) -- close current tab keymap.set("n", "tn", "tabn", { desc = "Go to next tab" }) -- go to next tab keymap.set("n", "tp", "tabp", { desc = "Go to previous tab" }) -- go to previous tab keymap.set("n", "tf", "tabnew %", { desc = "Open current buffer in new tab" }) -- move current buffer to new tab -- no neck pain (simple narrow view) -- keymap.set("n", "nn", ":NoNeckPain", { desc = "View with wide margin" }) -- wrap mode keymap.set("n", "w", ":ToggleWrapMode", { desc = "Toggle wrap mode" }) -- bufferline keymap.set("n", "", ":BufferLineCycleNext", { desc = "Go to next tab" }) keymap.set("n", "", ":BufferLineCyclePrev", { desc = "Go to previous tab" }) keymap.set("n", "x", ":BufDel", { desc = "Close Current Tab" }) -- Fterm keymap.set("n", "q", "lua require'FTerm'.toggle()", { desc = "Open floating term" }) -- Comment keymap.set("n", "/", function() require("Comment.api").toggle.linewise.current() end, { desc = "Toggle comment" }) keymap.set( "v", "/", "lua require('Comment.api').toggle.linewise(vim.fn.visualmode())", { desc = "Toggle comment" } ) -- Indents for visual selection keymap.set("v", ">", ">gv", { desc = "Indent Visual Selection" }) keymap.set("v", "<", "