67 lines
1.8 KiB
VimL
67 lines
1.8 KiB
VimL
" search/substitute
|
|
nnoremap <silent> <Leader>h :nohlsearch<CR>
|
|
nnoremap %s :%s/\v
|
|
nnoremap <C-s> :s/\v
|
|
vnoremap <C-s> :s/\v
|
|
nnoremap / /\v
|
|
nnoremap ? ?\v
|
|
|
|
" splits
|
|
nnoremap <Space>Q :wa<CR><C-w>o<C-w>q
|
|
nnoremap <Space> <C-w>
|
|
nnoremap <Space>S <C-w>s<C-w>j
|
|
nnoremap <Space>V <C-w>v<C-w>l
|
|
|
|
" fugitive
|
|
nnoremap <Space>G :tab G<CR>
|
|
nnoremap <Space>g :G<CR>
|
|
|
|
" 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!<CR>
|
|
augroup END
|
|
|
|
" netrw
|
|
nnoremap - :e %:p:h<CR>
|
|
|
|
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 <buffer> / /\V
|
|
autocmd FileType netrw nnoremap <buffer> ? ?\V
|
|
|
|
autocmd FileType netrw silent! unmap <buffer> f
|
|
autocmd FileType netrw silent! unmap <buffer> F
|
|
autocmd FileType netrw silent! unmap <buffer> ;
|
|
autocmd FileType netrw silent! unmap <buffer> ,
|
|
|
|
autocmd FileType netrw nnoremap <buffer> f :call NetrwJumpToCharRepeat(0, 0)<CR>
|
|
autocmd FileType netrw nnoremap <buffer> F :call NetrwJumpToCharRepeat(1, 0)<CR>
|
|
autocmd FileType netrw nnoremap <buffer> ; :call NetrwJumpToCharRepeat(0, 1)<CR>
|
|
autocmd FileType netrw nnoremap <buffer> , :call NetrwJumpToCharRepeat(1, 1)<CR>
|
|
augroup END
|
|
|
|
" singlechar
|
|
let g:singlechar_keylen_warning = 0
|
|
let g:singlechar_static_cursor = 1
|