summaryrefslogtreecommitdiff
path: root/Completion/Debian/Command/_reprepro
diff options
context:
space:
mode:
Diffstat (limited to 'Completion/Debian/Command/_reprepro')
-rw-r--r--Completion/Debian/Command/_reprepro25
1 files changed, 13 insertions, 12 deletions
diff --git a/Completion/Debian/Command/_reprepro b/Completion/Debian/Command/_reprepro
index 44ed1548c..d1e124eef 100644
--- a/Completion/Debian/Command/_reprepro
+++ b/Completion/Debian/Command/_reprepro
@@ -1,10 +1,10 @@
#compdef reprepro
-local context state line distfile
+local curcontext="$curcontext" state line expl distfile ret=1
typeset -A opt_args
local -a codenames
-_arguments \
+_arguments -C \
'(-h --help)'{-h,--help}'[display help]' \
'*'{-v,-V,--verbose}'[be more verbose]' \
'--silent[be less verbose]' \
@@ -17,7 +17,7 @@ _arguments \
'--listdir:list dir:_files -/' \
'--methoddir:method dir:_files -/' \
'(-C --component)'{-C,--component}':component:(component1 component2)' \
- '(-A --architecture)'{-A,--architecture}':architecture:(amd64 sparc)' \
+ '(-A --architecture)'{-A,--architecture}':architecture:_sequence -s "|" _deb_architectures -' \
'(-T --type)'{-T,--type}':file type:(dsc deb udeb)' \
'(-S --section)'{-S,--section}':section:(section1 section2)' \
'(-P --priority)'{-P,--priority}':priority:(high low)' \
@@ -40,12 +40,11 @@ _arguments \
rereference dumpreferences dumpunreferenced deleteunreferenced
reoverride dumptracks retrack removealltracks removetrack tidytracks
copy clearvanished gensnapshot rerunnotifiers)' \
- '*::subcmd:->subcmd' && return 0
+ '*::subcmd:->subcmd' && ret=0
case "$state" in
- (subcmd)
-
- case "$words[1]" in
+ subcmd)
+ case "$words[1]" in
(export|update|iteratedupdate|checkupdate|predelete|pull|checkpull|check)
if [[ -n "$opt_args[--confdir]" ]]; then
distfile=${opt_args[--confdir]}/distributions
@@ -60,11 +59,13 @@ case "$state" in
fi
codenames=($(awk '/^[Cc][Oo][Dd][Ee][Nn][Aa][Mm][Ee]: / {$1="";print}' "$distfile"))
- _wanted -V 'codenames' expl 'codename' compadd -a codenames
- ;;
+ _wanted -V 'codenames' expl 'codename' compadd -a codenames && ret=0
+ ;;
(*)
- _files
- ;;
- esac
+ _files && ret=0
+ ;;
+ esac
;;
esac
+
+return ret