-- Set as the leader key vim.g.mapleader = " " vim.g.maplocalleader = " " -- Clear highlights on search when pressing in normal mode -- See `:help hlsearch` vim.keymap.set("n", "", "nohlsearch") -- Diagnostic keymaps vim.keymap.set("n", "q", vim.diagnostic.setloclist, { desc = "Open diagnostic [Q]uickfix list" }) -- Open Explorer -- vim.keymap.set("n", "pv", vim.cmd.Ex, { desc = "Open explorer" }) -- Move Selection vim.keymap.set("v", "J", ":m '>+1gv=gv", { desc = "Move selection down" }) vim.keymap.set("v", "K", ":m '<-2gv=gv", { desc = "Move selection up" }) -- Append Line vim.keymap.set("n", "J", "mzJ`z", { desc = "Append to line with a space" }) -- Move Page Down vim.keymap.set("n", "", "zz", { desc = "Half-page jump down" }) -- Move Page Up vim.keymap.set("n", "", "zz", { desc = "Half-page jump up" }) -- Insert Line vim.keymap.set("n", "oo", "call append(line('.'), repeat([''], v:count1))", { desc = "Insert line below" }) vim.keymap.set("n", "OO", "call append(line('.')-1, repeat([''], v:count1))", { desc = "Insert line above" }) -- Search RegEx vim.keymap.set("n", "n", "nzzzv", { desc = "Search next" }) vim.keymap.set("n", "N", "Nzzzv", { desc = "Search previous" }) -- Replace Selection Without Losing buffer vim.keymap.set("x", "p", [["_dP]], { desc = "Replace selection" }) -- System Clipboard Yank : asbjornHaland vim.keymap.set({ "n", "v" }, "y", [["+y]], { desc = "Yank to system clipboard" }) vim.keymap.set("n", "Y", [["+Y]], { desc = "Yank to system clipboard" }) -- Delete to Void Register vim.keymap.set({ "n", "v" }, "d", [["_d]], { desc = "Delete to void" }) -- The Cancel Remap vim.keymap.set("i", "", "") -- Don't press Capital Q vim.keymap.set("n", "Q", "") -- Format vim.keymap.set("n", "f", vim.lsp.buf.format, { desc = "Format" }) -- Quickfix vim.keymap.set("n", "", "cnextzz", { desc = "Quickfix next" }) vim.keymap.set("n", "", "cprevzz", { desc = "Quickfix previous" }) vim.keymap.set("n", "k", "lnextzz", { desc = "Quickfix next" }) vim.keymap.set("n", "j", "lprevzz", { desc = "Quickfix previous" }) -- Replace Highlight vim.keymap.set( "n", "s", [[:%s/\<\>//gI]], { desc = "Refactor selection" } ) -- Create Executable vim.keymap.set("n", "x", "!chmod +x %", { silent = true, desc = "Make executable" })