" " VIM " " Viminfo let &viminfofile = "~/.cache/vim/viminfo" " Theme colorscheme industry " Settings set autochdir autoindent autoread set clipboard=unnamed,unnamedplus set history=100 set hlsearch set keywordprg=:help set listchars=eol:↴,tab:➔\ ,trail:~,extends:»,precedes:«,space:· set mouse=a set noexpandtab tabstop=4 softtabstop=4 shiftwidth=4 set nrformats=bin,hex set smartindent set spell spelllang=en_gb set timeout timeoutlen=500 ttimeoutlen=50 set wildmenu wildoptions=pum " Mappings noremap j noremap k noremap l noremap ; " Remap semi-colon noremap h ; " Use terminal keybindings in insert mode inoremap dB inoremap db inoremap de inoremap d$ inoremap p " Move line nnoremap mj :move -2 nnoremap mk :move +1 vnoremap mj :move '<-2gv=gv vnoremap mk :move '>+2gv=gv " Leader key let mapleader = "\" " Command noremap : " Focus window nnoremap j nnoremap k nnoremap l nnoremap ; " Move window nnoremap J K nnoremap K J nnoremap L H nnoremap : L " Split window nnoremap - s nnoremap \ v " Exit vim nnoremap x :xit nnoremap a :qall " Buffer nnoremap b :buffers:buffer nnoremap [ :bprevious nnoremap ] :bnext nnoremap d :bdelete nnoremap w :write nnoremap q :quit " Tab nnoremap t :tabnew nnoremap :tabnext " Line numbers nnoremap n :set number! relativenumber! " Cursor highlight nnoremap c :set cursorcolumn! nnoremap h :set cursorline! " Toggle spellcheck nnoremap s :set spell! " Toggle whitespace nnoremap :set list! " Toggle tab/space formatting nnoremap = :set noexpandtab! \| %retab! " Remove search highlight on escape nnoremap :nohlsearch " Match trailing whitespace autocmd BufWinEnter * match ExtraWhitespace /\s\+$/ autocmd InsertEnter * match ExtraWhitespace /\s\+\%#\@ft :!column -t -s '\|' -o '\|'