local opts = { noremap = true, silent = true } opts.desc = "Show Cheatsheet" vim.keymap.set("n", "\\", "Cheatsheet", opts) -- toggle file explorer opts.desc = "Show Keymap" vim.keymap.set("n", "?", "Telescope keymaps", opts) -- toggle file explorer opts.desc = "Select All" vim.keymap.set("n", "", "gg0vG$", opts) -- select all -- Move selected line / block of text in visual mode up opts.desc = "Move selected line / block of text in visual mode up" vim.keymap.set("v", "J", ":m '>+1gv=gv", opts) -- Move selected line / block of text in visual mode down opts.desc = "Move selected line / block of text in visual mode down" vim.keymap.set("v", "K", ":m '<-2gv=gv", opts) -- Join current line with the line below it opts.desc = "Join current line with the line below it" vim.keymap.set("n", "J", "mzJ`z", opts) -- Move half page down opts.desc = "Move half page down" vim.keymap.set("n", "", "zz", opts) -- Move half page up opts.desc = "Move half page up" vim.keymap.set("n", "", "zz", opts) -- Navigate to next search result, center screen and expand folded text opts.desc = "Navigate to next search result, center screen and expand folded text" vim.keymap.set("n", "n", "nzzzv", opts) -- Navigate to previous search result, center screen and expand folded text, opts.desc = "Navigate to previous search result, center screen and expand folded text" vim.keymap.set("n", "N", "Nzzzv", opts) -- Delete selected text and paste from register opts.desc = "Delete selected text and paste from register" vim.keymap.set("x", "p", [["_dP]], opts) -- Copy selected text into system clipboard opts.desc = "Copy selected text into system clipboard" vim.keymap.set({ "n", "v" }, "y", [["+y]], opts) -- Copy current line into system clipboard opts.desc = "Copy current line into system clipboard" vim.keymap.set("n", "Y", [["+Y]], opts) -- Delete (blackhole) opts.desc = "Delete current line (blackhole)" vim.keymap.set({ "n", "v" }, "d", [["_d]], opts) -- Alternate Escape (Easy to Reach) opts.desc = "Alternate Escape (Easy to Reach)" vim.keymap.set("i", "", "", opts) -- Disable Q - Nothing Good Ever Happens -- Q is normally used to enable Ex mode. We dont want that opts.desc = "Disable Q - Nothing Good Ever Happens" vim.keymap.set("n", "Q", "", opts) -- Format document with LSP Formatter opts.desc = "Format document with LSP Formatter" vim.keymap.set("n", "f", vim.lsp.buf.format, opts) -- Navigation Quick Fixes -- -- vim.keymap.set("n", "", "cnextzz", opts) -- vim.keymap.set("n", "", "cprevzz", opts) -- vim.keymap.set("n", "k", "lnextzz", opts) -- vim.keymap.set("n", "j", "lprevzz", opts) -- -- Search Regex Keymap opts.desc = "Regex Replace" vim.keymap.set("n", "sr", [[:%s/\<\>//gI]], opts) opts.desc = "Replace selected text" vim.keymap.set("v", "ss", [[:s/\<\>//gI]], opts) -- Source File Keymap opts.desc = "Source File" vim.keymap.set("n", "", function() vim.cmd("so") end, opts) -- Manage VIM Maximizer opts.desc = "Toggle TMUX Pane" vim.keymap.set("n", "`", "NvimTreeToggle", opts)