fix(gitfast): update to git-completion 1.3.6 (#10633)

This commit is contained in:
Felipe Contreras 2022-01-28 06:45:05 -06:00 committed by GitHub
parent 3c5367d272
commit 6f9650d940
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 518 additions and 544 deletions

View File

@ -33,8 +33,9 @@ if [ -z "$script" ]; then
bash_completion='/usr/share/bash-completion/completions/' bash_completion='/usr/share/bash-completion/completions/'
locations=( locations=(
"$(dirname ${funcsourcetrace[1]%:*})"/git-completion.bash "${${funcsourcetrace[1]%:*}:A:h}"/git-completion.bash
"$HOME/.local/share/bash-completion/completions/git" "$HOME/.local/share/bash-completion/completions/git"
'/usr/local/share/bash-completion/completions/git'
"$bash_completion/git" "$bash_completion/git"
'/etc/bash_completion.d/git' # old debian '/etc/bash_completion.d/git' # old debian
) )
@ -51,13 +52,20 @@ functions[complete]="$old_complete"
__gitcompadd () __gitcompadd ()
{ {
compadd -Q -p "${2-}" -S "${3- }" ${@[4,-1]} -- ${=1} && _ret=0 compadd -p "${2-}" -S "${3- }" -q -- ${=1} && _ret=0
} }
__gitcomp () __gitcomp ()
{ {
emulate -L zsh emulate -L zsh
IFS=$' \t\n' __gitcompadd "$1" "${2-}" "${4- }"
}
__gitcomp_opts ()
{
emulate -L zsh
local cur_="${3-$cur}" local cur_="${3-$cur}"
[[ "$cur_" == *= ]] && return [[ "$cur_" == *= ]] && return
@ -70,7 +78,7 @@ __gitcomp ()
break break
fi fi
if [[ -z "${4-}" ]]; then if [[ -z "${4+set}" ]]; then
case $c in case $c in
*=) c="${c%=}"; sfx="=" ;; *=) c="${c%=}"; sfx="=" ;;
*.) sfx="" ;; *.) sfx="" ;;
@ -79,7 +87,7 @@ __gitcomp ()
else else
sfx="$4" sfx="$4"
fi fi
__gitcompadd "$c" "${2-}" "$sfx" -q __gitcompadd "$c" "${2-}" "$sfx"
done done
} }
@ -87,7 +95,10 @@ __gitcomp_nl ()
{ {
emulate -L zsh emulate -L zsh
IFS=$'\n' __gitcompadd "$1" "${2-}" "${4- }" # words that don't end up in space
compadd -p "${2-}" -S "${4- }" -q -- ${${(f)1}:#*\ } && _ret=0
# words that end in space
compadd -p "${2-}" -S " ${4- }" -q -- ${${(M)${(f)1}:#*\ }% } && _ret=0
} }
__gitcomp_file () __gitcomp_file ()
@ -107,21 +118,6 @@ __gitcomp_file_direct ()
__gitcomp_file "$1" "" __gitcomp_file "$1" ""
} }
__gitcomp_nl_append ()
{
__gitcomp_nl "$@"
}
__gitcomp_direct_append ()
{
__gitcomp_direct "$@"
}
_git_zsh ()
{
__gitcomp "v1.2"
}
__git_complete_command () __git_complete_command ()
{ {
emulate -L zsh emulate -L zsh
@ -206,9 +202,7 @@ __git_zsh_main ()
{ {
local curcontext="$curcontext" state state_descr line local curcontext="$curcontext" state state_descr line
typeset -A opt_args typeset -A opt_args
local -a orig_words __git_C_args local -a __git_C_args
orig_words=( ${words[@]} )
_arguments -C \ _arguments -C \
'(-p --paginate -P --no-pager)'{-p,--paginate}'[pipe all output into ''less'']' \ '(-p --paginate -P --no-pager)'{-p,--paginate}'[pipe all output into ''less'']' \
@ -245,7 +239,7 @@ __git_zsh_main ()
emulate ksh -c __git_complete_config_variable_name_and_value emulate ksh -c __git_complete_config_variable_name_and_value
;; ;;
(arg) (arg)
local command="${words[1]}" __git_dir local command="${words[1]}" __git_dir __git_cmd_idx=1
if (( $+opt_args[--bare] )); then if (( $+opt_args[--bare] )); then
__git_dir='.' __git_dir='.'
@ -259,7 +253,7 @@ __git_zsh_main ()
(( $+opt_args[--help] )) && command='help' (( $+opt_args[--help] )) && command='help'
words=( ${orig_words[@]} ) words=( git ${words[@]} )
__git_zsh_bash_func $command __git_zsh_bash_func $command
;; ;;
@ -269,7 +263,7 @@ __git_zsh_main ()
_git () _git ()
{ {
local _ret=1 local _ret=1
local cur cword prev local cur cword prev __git_cmd_idx=0
cur=${words[CURRENT]} cur=${words[CURRENT]}
prev=${words[CURRENT-1]} prev=${words[CURRENT-1]}

File diff suppressed because it is too large Load Diff

View File

@ -138,6 +138,7 @@ __git_ps1_show_upstream ()
done <<< "$output" done <<< "$output"
# parse configuration values # parse configuration values
local option
for option in ${GIT_PS1_SHOWUPSTREAM}; do for option in ${GIT_PS1_SHOWUPSTREAM}; do
case "$option" in case "$option" in
git|svn) upstream="$option" ;; git|svn) upstream="$option" ;;
@ -432,8 +433,8 @@ __git_ps1 ()
fi fi
local sparse="" local sparse=""
if [ -z "${GIT_PS1_COMPRESSSPARSESTATE}" ] && if [ -z "${GIT_PS1_COMPRESSSPARSESTATE-}" ] &&
[ -z "${GIT_PS1_OMITSPARSESTATE}" ] && [ -z "${GIT_PS1_OMITSPARSESTATE-}" ] &&
[ "$(git config --bool core.sparseCheckout)" = "true" ]; then [ "$(git config --bool core.sparseCheckout)" = "true" ]; then
sparse="|SPARSE" sparse="|SPARSE"
fi fi
@ -542,7 +543,7 @@ __git_ps1 ()
u="%${ZSH_VERSION+%}" u="%${ZSH_VERSION+%}"
fi fi
if [ -n "${GIT_PS1_COMPRESSSPARSESTATE}" ] && if [ -n "${GIT_PS1_COMPRESSSPARSESTATE-}" ] &&
[ "$(git config --bool core.sparseCheckout)" = "true" ]; then [ "$(git config --bool core.sparseCheckout)" = "true" ]; then
h="?" h="?"
fi fi

View File

@ -1,7 +1,7 @@
#!/bin/sh #!/bin/sh
url="https://raw.githubusercontent.com/felipec/git-completion" url="https://raw.githubusercontent.com/felipec/git-completion"
version="1.2" version="1.3.6"
curl -s -o _git "${url}/v${version}/git-completion.zsh" && curl -s -o _git "${url}/v${version}/git-completion.zsh" &&
curl -s -o git-completion.bash "${url}/v${version}/git-completion.bash" && curl -s -o git-completion.bash "${url}/v${version}/git-completion.bash" &&