imap("jk", "") vim.api.nvim_exec("inoremap ", false) -- Navigate splits nmap("h", ":wincmd h") nmap("j", ":wincmd j") nmap("k", ":wincmd k") nmap("l", ":wincmd l") -- Just some laziness nmap("w", ":w") nmap("q", ":q") -- As I don't use arrow keys for navigation, I use them for resizing nmap("", ":resize +5") nmap("", ":resize -5") nmap("", ":vertical resize +5") nmap("", ":vertical resize -5") nmap("", ":resize +1") nmap("", ":resize -1") nmap("", ":vertical resize +1") nmap("", ":vertical resize -1") -- Disable arrow keys in editing & visual mode, as I have no need for them imap("", "") imap("", "") imap("", "") imap("", "") vmap("", "") vmap("", "") vmap("", "") vmap("", "") -- These bindings I use for managing tabs nmap("ee", ":$tabnew") nmap("eL", ":tabnew") nmap("eH", ":-tabnew") nmap("ed", ":tabclose") nmap("el", ":tabnext") nmap("eh", ":tabprevious") nmap("er", ":tabnew:e term://$SHELLi") -- TODO add config editing keybinds nmap("a", "") tmap("jk", "") -- nmap("rr", ":e term://$SHELL") -- nmap("rh", ":vsp:wincmd h:e term://$SHELL") -- nmap("rl", ":vsp:e term://$SHELL") -- nmap("rk", ":sp:wincmd k:e term://$SHELL") -- nmap("rj", ":sp:e term://$SHELL") nmap("fh", ":vsp:wincmd h") nmap("fj", ":sp") nmap("fk", ":sp:wincmd k") nmap("fl", ":vsp") vim.api.nvim_set_keymap("n", "gb", "", {})