-- ctrl + c for exiting insert mode vim.keymap.set("i", "", "", { desc = "Exit insert mode" }) -- Essential vim.keymap.set({ "n", "v" }, "w", "bd", { desc = "Quit buffer" }) -- Normal Mapkey vim.keymap.set("n", "", "bnext", { desc = "Next buffer" }) vim.keymap.set("n", "", ":bprev", { desc = "Previous buffer" }) vim.keymap.set("n", "", ":split", { desc = "Horizonal split" }) vim.keymap.set("n", "", ":vs", { desc = "Vertical split" }) vim.keymap.set("n", "", "ggVG", { desc = "Select all" }) -- Move lines vim.keymap.set("n", "", ":m .+1==", { desc = "Move down" }) vim.keymap.set("i", "", ":m .+1==gi", { desc = "Move down" }) vim.keymap.set("v", "J", ":m '>+1gv=gv", { desc = "Move down" }) vim.keymap.set("n", "", ":m .-2==", { desc = "Move up" }) vim.keymap.set("i", "", ":m .-2==gi", { desc = "Move up" }) vim.keymap.set("v", "K", ":m '<-2gv=gv", { desc = "Move up" }) -- Terminal vim.keymap.set("n", "v", ":vs +terminal | startinsert", { desc = "Vertical terminal" }) vim.keymap.set("n", "h", ":split +terminal | startinsert", { desc = "Horizontal terminal" }) -- save file vim.keymap.set({ "i", "v", "n", "s" }, "", "w", { desc = "Save file" }) -- Insert Map vim.keymap.set("i", "", "", { desc = "End of line" }) vim.keymap.set("i", "", "", { desc = "Beginning of line" }) -- next greatest remap ever : asbjornHaland vim.keymap.set({ "n", "v" }, "y", '"+y', { desc = "Copy to clipboard" }) vim.keymap.set({ "n", "v" }, "Y", '"+Y', { desc = "Copy line to clipboard" }) vim.keymap.set({ "n", "v" }, "d", '"_d', { desc = "Delete to void" }) -- Replace Map vim.keymap.set("n", "s", ":%s/\\<\\>//gI", { desc = "Replace word" }) -- Clear search results vim.keymap.set("n", "", "noh") -- Better indenting vim.keymap.set("v", "<", "", ">gv") -- better comment vim.keymap.set("n", "/", "(comment_toggle_linewise_current)") vim.keymap.set("v", "/", "(comment_toggle_linewise_visual)") -- toggles local utils = require("utils") vim.keymap.set("n", "tw", function() utils.toggle("wrap") end, { desc = "Toggle Word Wrap" }) vim.keymap.set("n", "ts", function() utils.toggle("spell") end, { desc = "Toggle Spelling" }) vim.keymap.set("n", "tl", function() utils.toggle("relativenumber") end, { desc = "Toggle Line Numbers" }) vim.keymap.set("n", "tc", function() utils.set_colorcolumn() end, { desc = "toggle colorcolumn" }) vim.keymap.set("n", "td", utils.toggle_diagnostics, { desc = "Toggle Diagnostics" })