function map(mode, shortcut, command) vim.api.nvim_set_keymap(mode, shortcut, command, { noremap = true, silent = true }) end function nmap(shortcut, command) map('n', shortcut, command) end function imap(shortcut, command) map('i', shortcut, command) end function vmap(shortcut, command) map('v', shortcut, command) end vim.g.mapleader = " " nmap("", "]s") nmap("", "[s") nmap("Z", "Y") nmap("-", "i•") nmap("", "k") nmap("", "j") nmap("", "h") nmap("", "l") nmap("i", "a'\" << << \"' 6hi") nmap("a", "a'{}' 2hi") nmap("A", "a'\"+ +\"' 4hi") nmap("fd", "msgg=G`s") imap("kj", "") nmap("j", ":bprev") nmap("k", ":bnext") nmap("", "l") vmap("c", "\"*y") nmap("v", "\"*p") nmap("", ":m .-2==") vmap("", ":m '<-2gv=gv") nmap("", ":m .+1==") vmap("", ":m '>+1gv=gv") nmap("", ">>") vmap("", ":>gv") vmap("", " :<gv") nmap("", "<<") nmap("w", ":w") nmap("wj", ":wa") nmap("wk", ":xall") vmap(".", ":normal.") -- vmap("tt", ":Tabular /^[^-+=]*\zs\S*=/l1l1") -- vmap("t,", ":Tabular /,\zs/l1l1") -- vmap("t", " :Tabular /\s\+\zs/l1l0") -- vmap("t:", " :Tabular /:\zs/l1l0") -- vmap("t(", " :Tabular /(/l1l0") nmap("s", "yiw//\\|\"") vmap("s", "y//\\|\"") nmap("ll", "iprint_log(\"\");V=0f(la") nmap("", ":Files") imap("", ":Explore") nmap("", ":Explore") nmap("r", ":Reload:echom 'config relaoded!'") nmap("e", ":tabedit $MYVIMRC:lcd %:p:h") vim.keymap.set('n', "r", function () for k in pairs(package.loaded) do package.loaded[k] = nil end vim.cmd [[ :source $MYVIMRC ]] print ('config reloaded!') end ) -- telescope local builtin = require('telescope.builtin') vim.keymap.set('n', 'ff', builtin.find_files, {}) vim.keymap.set('n', 'fg', builtin.live_grep, {}) vim.keymap.set('n', 'fb', builtin.buffers, {}) vim.keymap.set('n', 'fh', builtin.help_tags, {})