about summary refs log tree commit diff
path: root/Completion/Debian/Command/_wajig
diff options
context:
space:
mode:
authorOliver Kiddle <opk@users.sourceforge.net>2005-08-01 16:26:28 +0000
committerOliver Kiddle <opk@users.sourceforge.net>2005-08-01 16:26:28 +0000
commitce743b792006c38a92108ea824eeaad37f333143 (patch)
treef167561e46ee67d61d000c4d9adec0e9d9c5431c /Completion/Debian/Command/_wajig
parentfb81e044f1baf0b8c6befdc837f7b9835936ac87 (diff)
downloadzsh-ce743b792006c38a92108ea824eeaad37f333143.tar.gz
zsh-ce743b792006c38a92108ea824eeaad37f333143.tar.xz
zsh-ce743b792006c38a92108ea824eeaad37f333143.zip
various cleanups: fix indentation and capitalisation of descriptions
Diffstat (limited to 'Completion/Debian/Command/_wajig')
-rw-r--r--Completion/Debian/Command/_wajig311
1 files changed, 70 insertions, 241 deletions
diff --git a/Completion/Debian/Command/_wajig b/Completion/Debian/Command/_wajig
index 861c909e5..350eee658 100644
--- a/Completion/Debian/Command/_wajig
+++ b/Completion/Debian/Command/_wajig
@@ -1,248 +1,77 @@
 #compdef wajig
 
-# $Id: _wajig,v 1.1 2005/01/09 06:23:58 clint Exp $
+local curcontext="$curcontext" state line cmds argno ret=1
 
-# quarl 2005-01-08 initial version
+_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
 
-# local curcontext="$curcontext" state line cmds ret=1
+case $state in
+  cmds)
+    cmds=( ${${(M)${(f)"$(wajig commands 2>/dev/null)"}:# [^-]*}/(#b) ([^ ]#) #(*)/$match[1]:$match[2]:l} )
 
-_wajig_commands=(
-    'addcdrom:add a CD-ROM to the list of available sources of packages'
-    'autoalts:mark the alternative to be auto set (using set priorities)'
-    'autoclean:remove superseded deb files from the download cache'
-    'autodownload:do an update followed by a download of all updated packages'
-    'autoinstall:perform an install without asking questions (non-interactive)'
-    'available:list versions of packages available for installation'
-    'bug:check reported bugs in package using the Debian Bug Tacker'
-    'build:retrieve/unpack sources and build .deb for the named packages'
-    'builddepend:retrieve packages required to build listed packages'
-    'changelog:retrieve latest changelog for the package'
-    'clean:remove all deb files from the download cache'
-    'commands:list all the JIG commands and one line descriptions for each'
-    'dailyupgrade:perform an update then a dist-upgrade'
-    'dependents:list of packages which depend/recommend/suggest the package'
-    'describe:one line description of packages (-v and -vv for more detail)'
-    'describenew:one line description of new packages'
-    'detail:provide a detailed description of package (describe -vv)'
-    'detailnew:provide a detailed description of new packages (describe -vv)'
-    'distupgrade:upgrade to new distribution (installed and new rqd packages)'
-    'docs:equivalent to help with -verbose=2'
-    'download:download package files ready for an install'
-    'filedownload:download packages listed in file ready for an install'
-    'fileinstall:install packages listed in a file'
-    'fileremove:remove packages listed in a file'
-    'findfile:search for a file within installed packages'
-    'findpkg:search for an unofficial Debian package at apt-get.org'
-    'fixconfigure:perform dpkg --configure -a (to fix interrupted configure)'
-    'fixinstall:perform apt-get -f install (to fix broken dependencies)'
-    'fixmissing:perform apt-get --fix-missing upgrade'
-    'force:install packages and ignore file overwrites and depends'
-    'help:print documentation (detail depends on --verbose)'
-    'hold:place listed packages on hold so they are not upgraded'
-    'init:initialise or reset the JIG archive files'
-    'install:install (or upgrade) one or more packages or .deb files'
-    'installr:install package and associated recommended packages'
-    'installrs:install package and recommended and suggested packages'
-    'installs:install package and associated suggested packages'
-    'install/dist:install packages from specified distribution'
-    'integrity:check the integrity of installed packages (through checksums)'
-    'large:list size of all large (>10MB) installed packages'
-    'lastupdate:identify when an update was last performed'
-    'list:list the status and description of installed packages'
-    'listall:list a one line description of every known package'
-    'listalts:list the objects that can have alternatives configured'
-    'listcache:list the contents of the download cache'
-    'listcommands:list all the JIG commands and one line descriptions for each'
-    'listdaemons:list the daemons that JIG can start/stop/restart'
-    'listfiles:list the files that are supplied by the named package'
-    'listhold:list those packages on hold'
-    'listinstalled:List packages (with optional argument substring) installed'
-    'listnames:list all known packages or those containing supplied string'
-    'listorphans:list libraries not required by any installed package'
-    'liststatus:same as list but only prints first two columns, not truncated'
-    'listwide:same as list but avoids truncating package names'
-    'localdist-upgrade:dist-upgrade using packages already downloaded'
-    'localupgrade:upgrade using packages already downloaded, but not any others'
-    'move:move packages in the download cache to a local Debian mirror'
-    'new:list packages that became available since last update'
-    'news:obtain the latest news about the package'
-    'newupgrades:list packages newly available for upgrading'
-    'nonfree:list installed packages that do not meet the DFSG'
-    'orphans:list libraries not required by any installed package'
-    'package:generate a .deb file for an installed package'
-    'policy:from preferences file show priorities/policy (available)'
-    'purge:remove one or more packages and configuration files'
-    'purgedepend:purge package and those it depend on and not required by others'
-    'purgeorphans:purge orphaned libraries (not required by installed packages)'
-    "readme:display the package's README file from /usr/share/doc"
-    'recdownload:download package and any it depends on'
-    'recommended:install package and associated recommended packages'
-    'reconfigure:reconfigure the named installed packages or run gkdebconf'
-    'reinstall:reinstall each of the named packages'
-    'reload:reload daemon configs, e.g., gdm, apache (see list-daemons)'
-    'remove:remove one or more packages (see also purge)'
-    'removedepend:remove package and its dependees not required by others'
-    'removeorphans Remove orphaned libraries (not required by installed packages)'
-    'repackage:generate a .deb file for an installed package'
-    'reset:initialise or reset the JIG archive files'
-    'restart:stop then start a daemon, e.g., gdm, apache (see list-daemons)'
-    'rpm2deb:convert a RedHat .rpm file to a Debian .deb file'
-    'rpminstall:install a RedHat .rpm package'
-    'rpmtodeb:convert a RedHat .rpm file to a Debian .deb file'
-    'search:search for packages containing listed words'
-    'searchapt:find local Debian archives suitable for sources.list'
-    'setup:configure the sources.list file which locates Debian archives'
-    'show:provide a detailed description of package [same as detail]'
-    'showdistupgrade:trace the steps that a dist-upgrade would perform'
-    'showinstall:trace the steps that an install would perform'
-    'showremove:trace the steps that a remove would perform'
-    'showupgrade:trace the steps that an upgrade would perform'
-    'sizes:print out the size (in K) of all, or listed, installed packages'
-    'snapshot:generates list of package=version for all installed packages'
-    'source:retrieve and unpack sources for the named packages'
-    'start:start a daemon, e.g., gdm, apache (see list-daemons)'
-    'status:show the version and available version of packages'
-    'statusmatch:show the version and available version of matching packages'
-    'statussearch:show the version and available version of matching packages'
-    'stop:stop a daemon, e.g., gdm, apache (see list-daemons)'
-    'suggested:install package and associated suggested packages'
-    'tasksel:run the Gnome task selector to install groups of packages'
-    'toupgrade:list packages with newer versions available for upgrading'
-    'unhold:remove listed packages from hold so they are again upgraded'
-    'unofficial:search for an unofficial Debian package at apt-get.org'
-    'update:update the list of down-loadable packages'
-    'updatealts:update default alternative for things like x-window-manager'
-    'upgrade:upgrade all of the installed packages or just those listed'
-    'whatis:a synonym for describe'
-    'whichpkg:find the package that supplies the given command or file'
-)
-
-_wajig_command() {
-    _describe -t commands 'aptitude command' _wajig_commands
-}
-
-_wajig_alternatives() {
-    _files -W /var/lib/dpkg/alternatives
-}
-
-_wajig_services() {
-    _files -W /etc/init.d
-}
-
-_wajig_subcommand() {
-    ((argno = CURRENT-2))
-    case ${words[2]:gs/-/} in
-        addcdrom) ;;
-        autoalts | autoalternatives) ((argno==1)) && _wajig_alternatives ;;
-        autoclean) ;;
-        autodownload) ;;
-        autoinstall) _deb_packages uninstalled ;;
-        available) _deb_packages available ;;
-        bug | bugs) ((argno==1)) && _deb_packages available ;;
-        build) _deb_packages available ;;
-        builddepend) _deb_packages available ;;
-        changelog) _deb_packages available ;;
-        clean) ;;
-        dailyupgrade) ;;
-        dependents) ((argno==1)) && _deb_packages available ;;
-        describe | whatis) _deb_packages available ;;
-        describenew) ;;
-        detail | details | show) _deb_packages available ;;
-        detailnew | newdetail) ;;
-        distupgrade) ;;
-        doc | docs) ;;
-        download) _deb_packages available ;;
-        filedownload | downloadfile) ((argno==1)) && _files ;;
-        fileinstall | installfile) ((argno==1)) && _files ;;
-        fileremove | removefile) ((argno==1)) && _files ;;
-        findfile) ((argno==1)) && _files ;;
-        findpkg | unofficial) ;; # no completion available
-        fixconfigure) ;;
-        fixinstall) ;;
-        fixmissing) ;;
-        force) _deb_packages uninstalled ;;
-        geturl) ((argno==1)) && _deb_packages available ;;
-        help) ;;
-        hold) _deb_packages installed ;;
-        init) ;;
-        install) _deb_packages uninstalled ; _files -g '*.deb' ;;
-        installr | recommended) _deb_packages uninstalled ;;
-        installrs) _deb_packages uninstalled ;;
-        installs | suggested) _deb_packages uninstalled ;;
-        install/*) _deb_packages uninstalled ;;
-        integrity) ;;
-        large) _deb_packages installed ;;
-        lastupdate) ;;
-        list | listwide) ;; # no completion available
-        listall) ;;
-        listalts | listalternatives) ;;
-        listcache) ;; # no completion available
-        listcommands | commands) ;;
-        listdaemons) ;;
-        listfiles) ((argno==1)) && _deb_packages installed ;;
-        listhold) ;;
-        listinstalled) ;; # no completion available
-        listnames) ;; # no completion available
-        listorphans | orphans) ;;
-        liststatus) ;; # no completion available
-        localdistupgrade) ;;
-        localupgrade) ;;
-        move) ;;
-        new) ;;
-        news) _deb_packages available ;;
-        newupgrades) ;;
-        nonfree) ;;
-        policy) _deb_packages available ;;
-        purge) _deb_packages xinstalled ;;
-        purgedepend) ((argno==1)) && _deb_packages xinstalled ;;
-        purgeorphans) ;;
-        readme) _deb_packages installed ;;
-        recdownload) _deb_packages available ;;
-        reconfigure) _deb_packages installed ;;
-        reinstall) _deb_packages installed ;;
-        reload) ((argno==1)) && _wajig_services ;;
-        remove) _deb_packages installed ;;
-        removedepend) _deb_packages installed ;;
-        removeorphans) ;;
-        repackage | package) ((argno==1)) && _deb_packages installed ;;
-        reset) ;;
-        restart)  ((argno==1)) && _wajig_services ;;
-        rpminstall) ((argno==1)) && _files -g '*.rpm' ;;
-        rpmtodeb | rpm2deb) ((argno==1)) && _files -g '*.rpm' ;;
-        search) ;; # no completions available
-        searchapt) compadd stable testing unstable ;;
-        setup | editsources) ;;
-        showdistupgrade) ;;
-        showinstall) _deb_packages uninstalled ;;
-        showremove) _deb_packages installed ;;
-        showupgrade) ;;
-        size | sizes) _deb_packages installed ;;
-        snapshot) ;;
-        source)  _deb_packages available ;;
-        start) ((argno==1)) && _wajig_services ;;
-        status) _deb_packages available ;;
-        statusmatch | satussearch) ;; # no completion available
-        stop) ((argno==1)) && _wajig_services ;;
-        tasksel) ;;
-        toupgrade) ;;
-        unhold) _deb_packages held ;;
-        update) ;;
-        updatealts) ((argno==1)) && _wajig_alternatives ;;
-        upgrade) _deb_packages installed ;;
-        whichpkg) _files ;;
+    _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
-}
-
-_wajig() {
-    _arguments -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: :_wajig_command' \
-        '*: :_wajig_subcommand'
-}
+  ;;
+esac
 
-_wajig $@
+return ret