diff --git a/.config/nvim/lua/my/keymaps.lua b/.config/nvim/lua/my/keymaps.lua index d5be4be..ff6b97e 100644 --- a/.config/nvim/lua/my/keymaps.lua +++ b/.config/nvim/lua/my/keymaps.lua @@ -4,22 +4,20 @@ end vim.g.mapleader = ' ' -- +local format = string.format + -- buffers map('n', 'b', ':buffers:buffer') -map('n', '', ':bprevious') -map('n', '', ':bnext') -map('i', '', ':bprevious') -map('i', '', ':bnext') +for key, cmd in pairs({ Left = 'bprevious', Right = 'bnext' }) do + map('n', format('', key), format(':%s', cmd)) + map('i', format('', key), format(':%s', cmd)) +end --windows -map('n', '', ':wincmd h') -map('n', '', ':wincmd j') -map('n', '', ':wincmd k') -map('n', '', ':wincmd l') -map('i', '', ':wincmd h') -map('i', '', ':wincmd j') -map('i', '', ':wincmd k') -map('i', '', ':wincmd l') +for key, letter in pairs({ Left = 'h', Down = 'j', Up = 'k', Right = 'l' }) do + map('n', format('', key), format(':wincmd %s', letter)) + map('i', format('', key), format(':wincmd %s', letter)) +end -- remove word map('n', '', 'db') @@ -77,7 +75,6 @@ map('n', '', '==') -- re-indent line -- select text with shift + arrow for _, key in ipairs({ 'Left', 'Up', 'Down', 'Right' }) do - local format = string.format map({ 'n', 'i' }, format('', key), format('v<%s>', key)) map({ 'v' }, format('', key), format('<%s>', key)) end