local function map(mode, lhs, rhs) vim.keymap.set(mode, lhs, rhs, { silent = true }) end -- (conflict with pw) keep copied stuffs in the buffer when pasting it -- map("n", "p", "\"_dP") -- Save map("n", "w", "update") map("n", "q", "q") -- Quit -- Exit insert mode map("i", "jj", "") -- Window split map("n", "sv", "vsplit") map("n", "sh", "split") -- Window resize map("n", "", "<") map("n", "", ">") map("n", "", "+") map("n", "", "-") -- Move selected line / block of text in visual mode map("v", "J", ":m '>+1gv=gv") map("v", "K", ":m '<-2gv-gv") map("n", "J", "mzJ`z") map("n", "", "zz") map("n", "", "zz") map("n", "n", "nzzzv") map("n", "N", "Nzzzv") -- Buffer map("n", "", "bnext") map("n", "", "bprevious") map("n", "Q", "") map("n", "", "silent !tmux new tmux-sessionizer") -- LSP format map("n", "f", function() vim.lsp.buf.format() end) -- Search and replace map("n", "s", [[:%s/\<\>//gI]]) -- Reset highlight map("n", "", "noh") -- Hover documentation map("n", "K", "lua vim.lsp.buf.hover()") vim.keymap.set("n", '', vim.lsp.buf.signature_help, { desc = '[S]ignature [D]ocumentation' }) -- spell check vim.keymap.set("n", "", "set spell!", { silent = true, desc = 'Toggle spell check' }) vim.keymap.set("i", "", ":set spell!", { silent = true, desc = 'Toggle spell check' }) -- Hide windows vim.keymap.set("n", "hw", "only", { silent = true, desc = 'Hide windows' }) -- delete buffer vim.api.nvim_set_keymap('n', 'db', ':bdelete!', { noremap = true, silent = true, desc = '[D]elete current [B]uffer' })