about summary refs log tree commit diff
path: root/Completion/Debian
diff options
context:
space:
mode:
authorPaul Ackersviller <packersv@users.sourceforge.net>2007-06-04 02:43:04 +0000
committerPaul Ackersviller <packersv@users.sourceforge.net>2007-06-04 02:43:04 +0000
commit8ee5f077fce392449742234cece8d103d488b556 (patch)
tree34fd0b004137ae8055b4c92dfc2f15a47de7e6b1 /Completion/Debian
parent1ea4393573fd12ba0e5ddc69032527cf2a376b43 (diff)
downloadzsh-8ee5f077fce392449742234cece8d103d488b556.tar.gz
zsh-8ee5f077fce392449742234cece8d103d488b556.tar.xz
zsh-8ee5f077fce392449742234cece8d103d488b556.zip
Merge of revision 1.2.
Diffstat (limited to 'Completion/Debian')
-rw-r--r--Completion/Debian/Command/_wajig77
1 files changed, 77 insertions, 0 deletions
diff --git a/Completion/Debian/Command/_wajig b/Completion/Debian/Command/_wajig
new file mode 100644
index 000000000..350eee658
--- /dev/null
+++ b/Completion/Debian/Command/_wajig
@@ -0,0 +1,77 @@
+#compdef wajig
+
+local curcontext="$curcontext" state line cmds argno ret=1
+
+_arguments -C -s \
+  '(- 1 *)'{-h,--help}'[print usage message]' \
+  '(- 1 *)--version[display version information]' \
+  '(-q --quiet)'{-q,--quiet}'[do everything quietly]' \
+  '(-s --simulate)'{-s,--simulate}"[trace but don't execute]" \
+  '(-t --teaching)'{-t,--teaching}'[trace the sequence of commands performed]' \
+  '(-v --verbose)'{-v,--verbose}'[increase (or set) the level of verbosity]' \
+  '1: :->cmds' \
+  '*: :->args' && ret=0
+
+case $state in
+  cmds)
+    cmds=( ${${(M)${(f)"$(wajig commands 2>/dev/null)"}:# [^-]*}/(#b) ([^ ]#) #(*)/$match[1]:$match[2]:l} )
+
+    _describe -t commands 'wajig command' cmds && ret=0
+  ;;
+  args)
+    (( argno = $#line-1 ))
+    case ${line[1]:gs/-/} in
+      autoalts|autoalternatives|updatealts)
+	((argno==1)) && _wanted alternatives expl alternative \
+	    _files -W /var/lib/dpkg/alternatives && ret=0
+      ;;
+      listfiles|repackage|package)
+	((argno==1)) || break
+      ;&
+      hold|large|readme|reconfigure|reinstall|remove|removedepend|showremove|size?|upgrade)
+	_wanted package expl 'package' _deb_packages installed && ret=0
+      ;;
+      purgedepend)
+	((argno==1)) && _wanted package expl 'package' _deb_packages xinstalled && ret=0
+      ;;
+      purge)
+	_wanted package expl 'package' _deb_packages xinstalled && ret=0
+      ;;
+      autoinstall|force|showinstall|installr|recommended|installrs|installs|suggested|install/*)
+	_wanted package expl 'package' _deb_packages uninstalled && ret=0
+      ;;
+      install)
+	_alternative \
+	  'packages:package:_deb_packages uninstalled' \
+	  'files:package file:_files -g "*.deb(-.)"' && ret=0
+      ;;
+      bug|bugs|dependents|geturl)
+	((argno==1)) || break
+      ;&
+      available|build|builddepend|changelog|describe|whatis|detail|details|show|news|policy|download|source|status|recdownload)
+	_wanted package expl 'package' _deb_packages available && ret=0
+      ;;
+      unhold)
+	_wanted package expl 'package' _deb_packages held && ret=0
+      ;;
+      filedownload|downloadfile|fileinstall|installfile|fileremove|removefile|indfile)
+	((argno==1)) && _files && ret=0
+      ;;
+      whichpkg)
+	_files
+      ;;
+      rpminstall|rpmtodeb|rpm2deb)
+	((argno==1)) && _files -g '*.rpm(-.)' && ret=0
+      ;;
+      searchapt)
+	_wanted distributions expl distribution \
+	    compadd stable testing unstable && ret=0
+      ;;
+      reload|restart|start|stop)
+	((argno==1)) && _services && ret=0
+      ;;
+    esac
+  ;;
+esac
+
+return ret