-- Normal mode mappings vim.keymap.set('n', 'gd', vim.lsp.buf.hover, { noremap = true }) vim.keymap.set('n', 'tw', function() MiniTrailspace.trim() end, { noremap = true }) -- Terminal and buffer mappings vim.keymap.set('n', 'tt', 'terminal', { noremap = true }) vim.keymap.set('t', '', '', { noremap = true }) vim.keymap.set('n', '', 'bprev', { noremap = true }) -- Move selected text up/down in visual mode vim.keymap.set('v', 'J', "m '>+1gv=gv", { noremap = true }) vim.keymap.set('v', 'K', "m '<-2gv=gv", { noremap = true }) -- Keep cursor in the middle when jumping or joining lines vim.keymap.set('n', 'J', 'mzJ`z', { noremap = true }) vim.keymap.set('n', '', 'zz', { noremap = true }) vim.keymap.set('n', '', 'zz', { noremap = true }) vim.keymap.set('n', 'n', 'nzzzv', { noremap = true }) vim.keymap.set('n', 'N', 'Nzzzv', { noremap = true }) vim.keymap.set('n', 'ff', 'Pick files') vim.keymap.set('n', 'fb', 'Pick buffers') vim.keymap.set('n', 'h', 'Pick help') vim.keymap.set('n', 'e', 'Oil') vim.keymap.set('n', 'lf', vim.lsp.buf.format) vim.keymap.set('n', 'o', 'update source') vim.keymap.set('n', 'w', 'write') vim.keymap.set('n', 'q', 'quit') vim.keymap.set({ 'n', 'v', 'x' }, 'y', "'+y") vim.keymap.set({ 'n', 'v', 'x' }, 'd', "'+d") vim.keymap.set('n', 'cc', 'ClaudeCode', { desc = 'Toggle Claude Code' })