dotfiles/nvim/.config/nvim/after/plugin/fugitive.vim

44 lines
1.8 KiB
VimL

nnoremap <Leader>ga :Git add %<CR>
nnoremap <Leader>gA :Git reset HEAD %<CR>
xnoremap <Leader>gb :Git blame<CR>
nnoremap <Leader>gb :Git branch -a<CR>
nnoremap <Leader>gB :Git branch<SPACE>
nnoremap <Leader>gc :Git checkout -b<SPACE>
nnoremap <Leader>gC :Git checkout<SPACE>
nnoremap <Leader>gd :Gtabedit<Bar>Git diff %<Bar>only<CR>
nnoremap <Leader>gD :Gtabedit<Bar>Git diff<Bar>only<CR>
nnoremap <Leader>ge :sp<CR>:Gedit HEAD~:%<Left><Left>
nnoremap <Leader>gE :sp<CR>:Gedit :%:p<Left><Left><Left><Left>
nnoremap <Leader>gf :Git fetch --all --tags -f<CR>
nnoremap <Leader>gF :call git#git_fetch_origin_merge()<CR>
nnoremap <Leader>gg :Git<CR>
nnoremap <Leader>gh :Git log --grep=
nnoremap <Leader>gH :<C-U>Git log -G<C-r><C-w>
nnoremap <Leader>gl :Git log --stat %<CR>
nnoremap <Leader>gL :Git log --stat -n 100<CR>
xnoremap <Leader>gl :<C-U>call git#git_log_range()<CR>
xnoremap <Leader>gL :call git#git_log_named_block()<CR>
nnoremap <Leader>gm :0,3Git blame<CR>
nnoremap <Leader>gM :call git#git_merge_origin()<CR>
nnoremap <Leader>gn :Git branch -m<SPACE>
nnoremap <Leader>go :call git#git_log_compare()<CR>
nnoremap <Leader>gr :call git#git_rebase_origin()<CR>
nnoremap <Leader>gR :call git#git_review()<CR>
nnoremap <Leader>g- :call git#git_stash()<CR>:e<CR>
nnoremap <Leader>g+ :Git stash pop stash@
nnoremap <Leader>gs :Git stash list<CR>
nnoremap <Leader>gS :Git stash -- %<CR>
nnoremap <Leader>gt :Git reflog<CR>
nnoremap <Leader>gw :Gwrite<CR>
nnoremap <Leader>G :Git<SPACE>
nnoremap <Leader>gp :call git#git_push_to_upstream()<CR>
nnoremap <expr> <Leader>gP git#git_push()
augroup custom_fugitive
autocmd!
autocmd FileType fugitive,fugitiveblame nnoremap <buffer><silent> q :bwipeout!<CR>
autocmd BufReadPost fugitive:// setlocal bufhidden=wipe
autocmd User FugitiveIndex nmap <buffer> dt :Gtabedit <Plug><cfile><Bar>Gdiffsplit!<CR>
augroup END