diff options
author | Felipe Contreras <felipe.contreras@gmail.com> | 2020-10-27 20:07:05 -0600 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2020-10-28 14:30:59 -0700 |
commit | 9d760527addc576c87e9b0e66b63376e580b434a (patch) | |
tree | 7476e3c7c2156f847c78bb798244bf308a3fb77b /contrib/completion/git-completion.zsh | |
parent | completion: zsh: refactor command completion (diff) | |
download | tgif-9d760527addc576c87e9b0e66b63376e580b434a.tar.xz |
completion: zsh: improve command tags
There's no need to use _alternative and repeat a lot of the code.
Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'contrib/completion/git-completion.zsh')
-rw-r--r-- | contrib/completion/git-completion.zsh | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/contrib/completion/git-completion.zsh b/contrib/completion/git-completion.zsh index 858864f3fb..22d8e58fcc 100644 --- a/contrib/completion/git-completion.zsh +++ b/contrib/completion/git-completion.zsh @@ -235,10 +235,13 @@ __git_zsh_main () case $state in (command) - _alternative \ - 'alias-commands:alias:__git_zsh_cmd_alias' \ - 'common-commands:common:__git_zsh_cmd_common' \ - 'all-commands:all:__git_zsh_cmd_all' && _ret=0 + _tags common-commands alias-commands all-commands + while _tags; do + _requested common-commands && __git_zsh_cmd_common + _requested alias-commands && __git_zsh_cmd_alias + _requested all-commands && __git_zsh_cmd_all + let _ret || break + done ;; (arg) local command="${words[1]}" __git_dir |