" search/substitute nnoremap h :nohlsearch nnoremap %s :%s/\v nnoremap :s/\v vnoremap :s/\v nnoremap / /\v nnoremap ? ?\v " splits nnoremap Q :waoq nnoremap nnoremap S sj nnoremap V vl " fugitive nnoremap G :tab G nnoremap g :G " terminal / tab commands command -nargs=0 Vt execute "vertical term" command -nargs=0 Nt execute "tabnew %:p:h" " man augroup man autocmd! autocmd FileType man nnoremap q :q! augroup END " netrw nnoremap - :e %:p:h let g:netrw_last_char = '' let g:netrw_last_reverse = 0 function! NetrwJumpToCharRepeat(reverse, repeat) if a:repeat && g:netrw_last_char != '' let l:ch = g:netrw_last_char let l:rev = (a:reverse ? !g:netrw_last_reverse : g:netrw_last_reverse) else let l:ch = nr2char(getchar()) let l:rev = a:reverse let g:netrw_last_char = l:ch let g:netrw_last_reverse = a:reverse endif let l:pattern = '\c^' . escape(l:ch, '\~[]') call search(l:pattern, l:rev ? 'bW' : 'W') endfunction augroup netrw_search autocmd! autocmd FileType netrw nnoremap / /\V autocmd FileType netrw nnoremap ? ?\V autocmd FileType netrw silent! unmap f autocmd FileType netrw silent! unmap F autocmd FileType netrw silent! unmap ; autocmd FileType netrw silent! unmap , autocmd FileType netrw nnoremap f :call NetrwJumpToCharRepeat(0, 0) autocmd FileType netrw nnoremap F :call NetrwJumpToCharRepeat(1, 0) autocmd FileType netrw nnoremap ; :call NetrwJumpToCharRepeat(0, 1) autocmd FileType netrw nnoremap , :call NetrwJumpToCharRepeat(1, 1) augroup END " singlechar let g:singlechar_keylen_warning = 0 let g:singlechar_static_cursor = 1