-- Keymaps for better default experience -- See `:help vim.keymap.set()` vim.keymap.set({ 'n', 'v' }, '', '', { silent = true }) -- Remap for dealing with word wrap vim.keymap.set('n', 'k', "v:count == 0 ? 'gk' : 'k'", { expr = true, silent = true }) vim.keymap.set('n', 'j', "v:count == 0 ? 'gj' : 'j'", { expr = true, silent = true }) vim.keymap.set("i", "jk", "") vim.keymap.set('n', 'w', 'w!', { desc = 'Save File' }) vim.keymap.set('n', 'q', "confirm q", { desc = 'Quit File' }) vim.keymap.set('v', '', '"*y', { desc = 'Copy to system clipboard' }) vim.keymap.set('v', 'p', [["_dP]], { desc = 'Paste and retain paste in clipboard' }) vim.keymap.set("n", "s", [[:%s/\<\>//gI]], { desc = 'Search and Replace Highlighted Word' }) vim.keymap.set("n", "J", "mzJ`z", { desc = 'Keep cusor in index position on J' }) -- Keep cusor in middle of buffer vim.keymap.set('n', '', "zz", { desc = '⬇ middle of buffer and keep cusor in middle of buffer' }) vim.keymap.set('n', '', 'zz', { desc = '⬆ middle of buffer and keep cusor in middle of buffer' }) vim.keymap.set('n', 'N', 'nzzzv', { desc = 'next search and keep cusor in middle of buffer' }) vim.keymap.set('n', 'n', 'Nzzzv', { desc = 'previous search and keep cusor in middle of buffer' }) -- Move highlighted up or down vim.keymap.set("v", "J", ":m '>+1gv=gv", { desc = 'Move highlighted up' }) vim.keymap.set("v", "K", ":m '<-2gv=gv", { desc = 'Move highlighted down' }) -- Map c to close and save the buffer vim.api.nvim_set_keymap('n', 'c', [[:w | bd]], { noremap = true, silent = true })