vim.g.mapleader = " " -- Splits keybindings vim.keymap.set("n", "s", ":vsplit") vim.keymap.set("n", "vs", ":split") -- Splits shortcuts vim.keymap.set("n", "j", "") vim.keymap.set("n", "k", "") vim.keymap.set("n", "l", "") vim.keymap.set("n", "h", "") -- Horizontal window resizing vim.keymap.set("n", ".", ">") vim.keymap.set("n", ",", "<") -- Copy to system clipboard vim.keymap.set("n", "y", '"+y') vim.keymap.set("v", "y", '"+y') vim.keymap.set("n", "d", '"+d') vim.keymap.set("v", "d", '"+d') -- Terminal mode -- au TerminalOpen * setlocal nospell vim.keymap.set('t', "", "") vim.keymap.set('t', "", "") -- Tabs vim.keymap.set("n", "tn", ":tabnew") vim.keymap.set("n", "tt", ":tabnew | term") vim.keymap.set("n", "th", ":tabprevious") vim.keymap.set("n", "tl", ":tabnext") vim.keymap.set("n", "tc", ":tabclose") vim.keymap.set("n", "t,", ":tabmove -1") vim.keymap.set("n", "t.", ":tabmove +1") -- Trailing whitespace trimmer function trim_whitespace() local view = vim.fn.winsaveview() vim.cmd.retab() vim.cmd[[keeppatterns %s/\s\+$//e]] vim.fn.winrestview(view) end vim.keymap.set("n", "f", trim_whitespace)