local function expr(mode, from, to) vim.api.nvim_set_keymap(mode, from, to, { noremap = true, expr = true }) end local function map(mode, from, to) vim.api.nvim_set_keymap(mode, from, to, { noremap = true, silent = true }) end -- Mappings map("n", "", "write!") map("i", "", "write!") map("i", "jk", "") map("n", "", "bp!") map("n", "", "bn!") map("n", "ps", "PackerSync") expr("i", "", 'pumvisible() ? "\\" : "\\"') expr("i", "", 'pumvisible() ? "\\" : "\\"') expr("c", "", 'pumvisible() ? "\\" : "\\"') expr("c", "", 'pumvisible() ? "\\" : "\\"') map("n", "", "vertical resize -2") map("n", "", "resize +2") map("n", "resize -1") map("n", "", "vertical resize +2") for _, key in ipairs { "h", "j", "k", "l" } do map("n", string.format("", key), string.format("wincmd %s", key)) map("t", string.format("", key), string.format("%s", key)) end map("i", "", ":m .+1==gi") map("i", "", ":m .-2==gi") map("v", "K", ":move '<-2gv-gv") map("v", "J", ":move '>+1gv-gv") map("n", "", ":m .+1==") map("n", "", ":m .-2==")