" Ñ master race nnoremap ñ ; nnoremap Ñ , nnoremap {q :cprev nnoremap }q :cnext nnoremap {Q :cfirst nnoremap }Q :clast nnoremap {h :lprevious nnoremap }l :lnext nnoremap }o :call append(line('.'), '') nnoremap {o :call append(line('.')-1, '') " Find nnoremap F :find =expand('%:h').'/*' nnoremap S :sfind =expand('%:h').'/*' nnoremap V :vert sfind =expand('%:h').'/*' nnoremap T :tabfind =expand('%:h').'/*' " Rearrange Splits nnoremap H nnoremap L nnoremap K nnoremap J " Resize splits nnoremap :vertical resize -1 nnoremap :vertical resize +1 nnoremap :resize -1 nnoremap :resize +1 " Alt to switch between splits nnoremap nnoremap nnoremap nnoremap " Make splits nnoremap v :vnew nnoremap h :new " Gotta Go Fast (save, buffers, quit, messages, indent, SOF, EOF) nnoremap s :w! nnoremap c :close nnoremap q :q! nnoremap Q :qa! nnoremap m :messages nnoremap = gg=G nnoremap G gqap nnoremap gg nnoremap ¿ G " Centering nnoremap n nzzzv nnoremap N nzzzv nnoremap J mzJ`z " Shift lines up and down nnoremap :m .+1== nnoremap :m .-2== " j = gj :: k = gk while preserving numbered jumps ie. 12j or 30k nnoremap j v:count ? (v:count > 5 ? "m'" . v:count : '') . 'j' : 'gj' nnoremap k v:count ? (v:count > 5 ? "m'" . v:count : '') . 'k' : 'gk' " Line movements nnoremap g nnoremap g nnoremap y y$ nnoremap Y yg_ " Tab movement nnoremap tn :tabnew nnoremap th :tabfirst nnoremap tl :tablast nnoremap tx :tabclose " Replace words nnoremap cn *``cgn nnoremap cN *``cgN " What about the Q nnoremap Q map q " Paths cnoremap =expand("%:p:h") . "/" " Run the last command nnoremap C :