Enable -
on headings in :Gstatus
This commit is contained in:
parent
a71120ca8f
commit
3366704c8f
@ -53,11 +53,13 @@ that are part of Git repositories).
|
|||||||
:Gstatus Bring up the output of git-status in the preview
|
:Gstatus Bring up the output of git-status in the preview
|
||||||
window. In addition to standard motions, you can
|
window. In addition to standard motions, you can
|
||||||
use <C-N> and <C-P> to jump from filename to
|
use <C-N> and <C-P> to jump from filename to
|
||||||
filename. Press D to |:Gdiff| the file on the cursor
|
filename. Press C to invoke |:Gcommit|. Press D to
|
||||||
line, or ds to |:Gsdiff|. Press - to stage or unstage
|
|:Gdiff| the file on the cursor line, or ds to
|
||||||
the file on the cursor line. Press p to do so on a
|
|:Gsdiff|. Press - to stage or unstage the file on
|
||||||
per hunk basis (--patch). Press C to invoke
|
the cursor line. Press p to do so on a per hunk basis
|
||||||
|:Gcommit|.
|
(--patch). All of D, -, and p have a different,
|
||||||
|
sensible (and hopefully intuitive) behavior when
|
||||||
|
invoked on a heading rather than a file name.
|
||||||
|
|
||||||
*fugitive-:Gcommit*
|
*fugitive-:Gcommit*
|
||||||
:Gcommit [args] A wrapper around git-commit. If there is nothing
|
:Gcommit [args] A wrapper around git-commit. If there is nothing
|
||||||
|
@ -592,8 +592,30 @@ function! s:StageToggle(lnum1,lnum2) abort
|
|||||||
let output = ''
|
let output = ''
|
||||||
for lnum in range(a:lnum1,a:lnum2)
|
for lnum in range(a:lnum1,a:lnum2)
|
||||||
let line = getline(lnum)
|
let line = getline(lnum)
|
||||||
if getline('.') == '# Changes to be committed:'
|
if line ==# '# Changes to be committed:'
|
||||||
return 'Gcommit'
|
call s:repo().git_chomp_in_tree('reset','-q')
|
||||||
|
silent! edit!
|
||||||
|
1
|
||||||
|
if !search('^# Untracked files:$','W')
|
||||||
|
call search('^# Change','W')
|
||||||
|
endif
|
||||||
|
return ''
|
||||||
|
elseif line =~# '^# Change\%(d but not updated\|s not staged for commit\):$'
|
||||||
|
call s:repo().git_chomp_in_tree('add','-u')
|
||||||
|
silent! edit!
|
||||||
|
1
|
||||||
|
if !search('^# Untracked files:$','W')
|
||||||
|
call search('^# Change','W')
|
||||||
|
endif
|
||||||
|
return ''
|
||||||
|
elseif line ==# '# Untracked files:'
|
||||||
|
call s:repo().git_chomp_in_tree('add','-N','.')
|
||||||
|
silent! edit!
|
||||||
|
1
|
||||||
|
if !search('^# Change\%(d but not updated\|s not staged for commit\):$','W')
|
||||||
|
call search('^# Change','W')
|
||||||
|
endif
|
||||||
|
return ''
|
||||||
endif
|
endif
|
||||||
let filename = matchstr(line,'^#\t\%([[:alpha:] ]\+: *\)\=\zs.\{-\}\ze\%( (new commits)\)\=$')
|
let filename = matchstr(line,'^#\t\%([[:alpha:] ]\+: *\)\=\zs.\{-\}\ze\%( (new commits)\)\=$')
|
||||||
if filename ==# ''
|
if filename ==# ''
|
||||||
|
Loading…
Reference in New Issue
Block a user