vim.keymap.set('n', '', 'zz') -- Center after half-page down vim.keymap.set('n', '', 'zz') -- Center after half-page up vim.keymap.set('n', 'n', 'nzzzv') -- Center after next result vim.keymap.set('n', 'N', 'Nzzzv') -- Center after previous result vim.keymap.set('x', 'p', [["_dP]]) -- Paste without losing register vim.keymap.set({ 'n', 'v' }, 'y', [["+y]]) -- Yank to OS clipboard vim.keymap.set('n', 'Y', [["+Y]]) -- ???? vim.keymap.set({ 'n', 'v' }, 'd', [["_d]]) -- Delete without overwriting register vim.keymap.set('n', 'cm', vim.cmd.ZenMode, { desc = '[Z]en [M]ode' }) -- Toggle ZenMode -- Harpoon vim.keymap.set('n', 'hm', require('harpoon.mark').add_file, { desc = '[m]ark file' }) vim.keymap.set('n', 'ht', require('harpoon.ui').toggle_quick_menu, { desc = '[t]oggle quick menu' }) vim.keymap.set('n', 'hd', require('harpoon.mark').rm_file, { desc = '[d]elete file' }) vim.keymap.set('n', '', function() require('harpoon.ui').nav_file(1) end, { desc = 'harpoon 1' }) vim.keymap.set('n', '', function() require('harpoon.ui').nav_file(2) end, { desc = 'harpoon 2' }) vim.keymap.set('n', '', function() require('harpoon.ui').nav_file(3) end, { desc = 'harpoon 3' }) vim.keymap.set('n', '', function() require('harpoon.ui').nav_file(4) end, { desc = 'harpoon 4' }) require('which-key').register { ['h'] = { name = '[H]arpoon', _ = 'which_key_ignore' }, } -- Delete buffer vim.keymap.set('n', 'b', ':bd', { desc = 'Delete [b]uffer' }) -- Adjust split size vim.keymap.set('n', '', ':vertical resize +3', { desc = 'Resize Pane Vertically <-' }) vim.keymap.set('n', '', ':vertical resize -3', { desc = 'Resize Pane Vertically ->' }) -- Move line up and down vim.keymap.set('v', '', ":m '>+1gv=gv", { desc = 'Move line up' }) vim.keymap.set('v', '', ":m '>-2gv=gv", { desc = 'Move line down' })