From 7f02f3d7ecdda983f229b16f80e7c494fb2d3510 Mon Sep 17 00:00:00 2001 From: Felipe Contreras Date: Sat, 19 May 2012 04:41:34 +0200 Subject: [PATCH 1/2] completion: rename internal helpers _git and _gitk Would be useful to provide backwards compatibility for _git. Also, zsh completion uses _git, and it cannot be changed. Signed-off-by: Felipe Contreras Signed-off-by: Junio C Hamano --- contrib/completion/git-completion.bash | 10 +++++----- t/t9902-completion.sh | 2 +- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/contrib/completion/git-completion.bash b/contrib/completion/git-completion.bash index d60bb8ac8f..5d608a125b 100755 --- a/contrib/completion/git-completion.bash +++ b/contrib/completion/git-completion.bash @@ -2599,7 +2599,7 @@ _git_whatchanged () _git_log } -_git () +_main_git () { local i c=1 command __git_dir @@ -2650,7 +2650,7 @@ _git () fi } -_gitk () +_main_gitk () { __git_has_doubledash && return @@ -2702,13 +2702,13 @@ __git_complete () || complete -o default -o nospace -F $wrapper $1 } -__git_complete git _git -__git_complete gitk _gitk +__git_complete git _main_git +__git_complete gitk _main_gitk # The following are necessary only for Cygwin, and only are needed # when the user has tab-completed the executable name and consequently # included the '.exe' suffix. # if [ Cygwin = "$(uname -o 2>/dev/null)" ]; then -__git_complete git.exe _git +__git_complete git.exe _main_git fi diff --git a/t/t9902-completion.sh b/t/t9902-completion.sh index 0f09fd6109..9a80c60945 100755 --- a/t/t9902-completion.sh +++ b/t/t9902-completion.sh @@ -63,7 +63,7 @@ run_completion () local _cword _words=( $1 ) (( _cword = ${#_words[@]} - 1 )) - __git_wrap_git && print_comp + __git_wrap_main_git && print_comp } test_completion () From b0a4b2d2570974f2050b5d43828dd8146505753e Mon Sep 17 00:00:00 2001 From: Felipe Contreras Date: Sat, 19 May 2012 04:41:35 +0200 Subject: [PATCH 2/2] completion: add support for backwards compatibility Some people might be relying on _git and _gitk to define custom aliases, unfortunately, commit 6b179ad (completion: add new __git_complete helper) broke that support. "bash: [: 1: unary operator expected" This can be easily fixed by using __git_complete, but it's not meant to be public. Although _git and _gitk are probably not meant to be public, it's easy to keep having support for them by having a wrapper to the proper new function that is fully functional. Signed-off-by: Felipe Contreras Signed-off-by: Junio C Hamano --- contrib/completion/git-completion.bash | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/contrib/completion/git-completion.bash b/contrib/completion/git-completion.bash index 5d608a125b..ac29193b0c 100755 --- a/contrib/completion/git-completion.bash +++ b/contrib/completion/git-completion.bash @@ -2702,6 +2702,18 @@ __git_complete () || complete -o default -o nospace -F $wrapper $1 } +# wrapper for backwards compatibility +_git () +{ + __git_wrap_main_git +} + +# wrapper for backwards compatibility +_gitk () +{ + __git_wrap_main_gitk +} + __git_complete git _main_git __git_complete gitk _main_gitk