local map = vim.keymap.set -- better navigation for wrapped lines map('n', 'j', 'gj') map('n', 'k', 'gk') -- retain selection when indenting/unindenting in visual mode map('v', '>', '>gv') map('v', '<', '<gv') -- more intuitive increment/decrement map('n', '+', '') map('n', '-', '') map('v', '+', 'g') map('v', '-', 'g') -- select all map('n', '', 'ggG') -- easier window navigation map('n', '', 'j') map('n', '', 'k') map('n', '', 'h') map('n', '', 'l') -- window resizing map('n', '', 'resize +1') map('n', '', 'resize -1') map('n', '', 'vertical resize -1') map('n', '', 'vertical resize +1') -- easy tab navigation map('n', '.', 'tabnext', { silent = true }) map('n', ',', 'tabprevious', { silent = true }) -- move lines up and down map('n', '', [[:move .+1==]], { silent = true }) map('n', '', [[:move .-2==]], { silent = true }) map('v', '', [[:move '>+1gv=gv]], { silent = true }) map('v', '', [[:move '<-2gv=gv]], { silent = true }) map('i', '', [[:move .+1==gi]], { silent = true }) map('i', '', [[:move .-2==gi]], { silent = true }) -- move to begin/end of line in insert mode map('i', '', '^') map('i', '', '$') -- navigate items in quickfix list map('n', 'j', 'cnext',{ silent = true }) map('n', 'k', 'cprevious', { silent = true }) -- cycle through line numbering modes map('n', 'ln', 'set nonumber norelativenumber', { silent = true }) map('n', 'll', 'set number norelativenumber', { silent = true }) map('n', 'lr', 'set number relativenumber', { silent = true }) -- show/hide listchars map('n', 'sl', 'set list!', { silent = true }) -- quickly change background map('n', 'bg', [[let &background = &background ==? 'light' ? 'dark' : 'light']]) -- disable highlight until next search map('n', 'h', 'nohlsearch') -- more convenient way of entering normal mode from terminal mode map('t', [[]], [[]]) -- edit configuration files map('n', 'eg', 'tabedit ~/.config/git/config') map('n', 'et', 'tabedit ~/.config/tmux/tmux.conf') map('n', 'ev', 'tabedit ~/.config/nvim/init.lua') map('n', 'es', 'tabedit ~/.config/nvim/spell/en.utf-8.add') map('n', 'ez', 'tabedit ~/.config/zsh/.zshrc')