mirror of
git://git.code.sf.net/p/zsh/code
synced 2025-09-02 10:01:11 +02:00
unposted: Completion/Unix/Command/_git: Update git-add completion to not
complete already given file arguments and also to not list file completions if an option is being completed.
This commit is contained in:
parent
d37eda52f3
commit
3eb0846645
2 changed files with 15 additions and 8 deletions
|
@ -9,6 +9,10 @@
|
|||
* unposted: Completion/Unix/Command/_git: Fix bug in git-add completion
|
||||
that prevented -f option from being used correctly.
|
||||
|
||||
* unposted: Completion/Unix/Command/_git: Update git-add completion to
|
||||
not complete already given file arguments and also to not list file
|
||||
completions if an option is being completed.
|
||||
|
||||
2011-07-19 Peter Stephenson <pws@csr.com>
|
||||
|
||||
* 29555: Src/exec.c: fix problem that shell failed to use file
|
||||
|
@ -15131,5 +15135,5 @@
|
|||
|
||||
*****************************************************
|
||||
* This is used by the shell to define $ZSH_PATCHLEVEL
|
||||
* $Revision: 1.5401 $
|
||||
* $Revision: 1.5402 $
|
||||
*****************************************************
|
||||
|
|
|
@ -57,21 +57,20 @@ _git-add () {
|
|||
'--refresh[do not add files, but refresh their stat() info in index]' \
|
||||
'--ignore-errors[continue adding if an error occurs]' \
|
||||
$ignore_missing \
|
||||
'*:: :->file' && ret=0
|
||||
'*:: :->file' && return
|
||||
|
||||
case $state in
|
||||
(file)
|
||||
# TODO: Use __git_ignore_line_inside_arguments.
|
||||
declare -a ignored_files_alternatives
|
||||
if [[ -n ${opt_args[(I)-f|--force]} ]]; then
|
||||
ignored_files_alternatives=(
|
||||
'ignored-modified-files:ignored modified files:__git_modified_files --ignored'
|
||||
'ignored-other-files:ignored other files:__git_other_files --ignored')
|
||||
'ignored-modified-files:ignored modified files:__git_ignore_line_inside_arguments __git_modified_files --ignored'
|
||||
'ignored-other-files:ignored other files:__git_ignore_line_inside_arguments __git_other_files --ignored')
|
||||
fi
|
||||
|
||||
_alternative \
|
||||
'modified-files::__git_modified_files' \
|
||||
'other-files::__git_other_files' \
|
||||
'modified-files::__git_ignore_line_inside_arguments __git_modified_files' \
|
||||
'other-files::__git_ignore_line_inside_arguments __git_other_files' \
|
||||
$ignored_files_alternatives && ret=0
|
||||
;;
|
||||
esac
|
||||
|
@ -4524,7 +4523,11 @@ __git_ignore_line () {
|
|||
|
||||
(( $+functions[__git_ignore_line_inside_arguments] )) ||
|
||||
__git_ignore_line_inside_arguments () {
|
||||
__git_ignore_line ${*[-1]} ${*[1,-2]}
|
||||
declare -a compadd_opts
|
||||
|
||||
zparseopts -D -E -a compadd_opts V: J: 1 2 n f X: M: P: S: r: R: q F:
|
||||
|
||||
__git_ignore_line $* $compadd_opts
|
||||
}
|
||||
|
||||
# Common Argument Types
|
||||
|
|
Loading…
Reference in a new issue