-- 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' }) -- Exit terminal mode in the builtin terminal with a shortcut that is a bit easier -- for people to discover. Otherwise, you normally need to press , which -- is not what someone will guess without a bit more experience. -- -- NOTE: This won't work in all terminal emulators/tmux/etc. Try your own mapping -- or just use to exit terminal mode vim.keymap.set('t', '', '', { desc = 'Exit terminal mode' }) -- disable help button vim.keymap.set({ 'n', 'v', 't', 'i' }, '', '') -- disable space vim.keymap.set({ 'n', 'v' }, '', '') -- disable cmd mode (as best we can) vim.keymap.set('n', 'q:', '') vim.keymap.set('n', 'Q', '') -- center the cursor on big jumps vim.keymap.set('n', '', 'zz') vim.keymap.set('n', '', 'zz') vim.keymap.set('n', 'n', 'nzz') vim.keymap.set('n', 'N', 'Nzz') -- better handling of wrapped lines 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('n', 'j', 'bprev', { desc = 'Previous buffer' }) vim.keymap.set('n', 'k', 'bnext', { desc = 'Next buffer' }) vim.keymap.set('n', 'x', 'bd', { desc = 'Delete buffer' }) vim.keymap.set('n', 'b', 'b#', { desc = 'Last buffer' }) vim.keymap.set('n', 'b', 'w%dbe#bd#', { desc = 'Delete all buffers apart from current' }) -- better visual mode pasting vim.keymap.set('v', 'p', 'pgvy', { silent = true }) vim.keymap.set('v', 'P', 'Pgvy', { silent = true }) vim.keymap.set({ 'n', 'v' }, 'x', '"_x', { silent = true }) vim.keymap.set({ 'n', 'v' }, 'X', '"_X', { silent = true }) vim.keymap.set('n', 'v', 'vsplit', { desc = 'Create vertical split' })