about summary refs log tree commit diff
path: root/Completion/Debian/Command/_reprepro
diff options
context:
space:
mode:
authorOliver Kiddle <opk@zsh.org>2014-10-11 01:28:10 +0200
committerOliver Kiddle <opk@zsh.org>2014-10-11 01:28:10 +0200
commit98ce8a658ec86cbd115c41e4167bd7002ce63816 (patch)
treee5dae0283537fbea452dad2ba72f7f8a0f94bb93 /Completion/Debian/Command/_reprepro
parent19f038b5fae9b1bec64495eaf8f1a1926716d0a9 (diff)
downloadzsh-98ce8a658ec86cbd115c41e4167bd7002ce63816.tar.gz
zsh-98ce8a658ec86cbd115c41e4167bd7002ce63816.tar.xz
zsh-98ce8a658ec86cbd115c41e4167bd7002ce63816.zip
33424: use common function for completing Debian architectures
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