diff --git a/ChangeLog b/ChangeLog index 65efafda0..b6cf2888e 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2002-04-30 Clint Adams + + * 17057: Completion/Debian/Command/.distfiles, + Completion/Debian/Command/_debfoster: completion for debfoster. + 2002-04-29 Clint Adams * 17055: zshconfig.ac: shared object linkage on the Hurd. diff --git a/Completion/Debian/Command/.distfiles b/Completion/Debian/Command/.distfiles index ef104c787..cfcdff20f 100644 --- a/Completion/Debian/Command/.distfiles +++ b/Completion/Debian/Command/.distfiles @@ -3,5 +3,5 @@ DISTFILES_SRC=' _apt _apt-show-versions _bts _bug _debchange _dpkg _dpkg_source _dput _dupload -_update-alternatives _make-kpkg +_update-alternatives _make-kpkg _debfoster ' diff --git a/Completion/Debian/Command/_debfoster b/Completion/Debian/Command/_debfoster new file mode 100644 index 000000000..8663a95b8 --- /dev/null +++ b/Completion/Debian/Command/_debfoster @@ -0,0 +1,93 @@ +#compdef debfoster + +_arguments \ +'(--verbose)-v[Be a loudmouth]' \ +'(-v)--verbose[Be a loudmouth]' \ +'(--version)-V[Show version and copyright information]' \ +'(-V)--version[Show version and copyright information]' \ +'(--help)-h[Show this message]' \ +'(-h)--help[Show this message]' \ +'(--quiet)-q[Silently build keeper file]' \ +'(-q)--quiet[Silently build keeper file]' \ +'(--force)-f[Force system to conform to keeper file]' \ +'(-f)--force[Force system to conform to keeper file]' \ +'(--mark-only)-m[Do not install or delete packages]' \ +'(-m)--mark-only[Do not install or delete packages]' \ +'(--upgrade)-u[Try to upgrade dependencies]' \ +'(-u)--upgrade[Try to upgrade dependencies]' \ +'(--config FILE)-c[Specify configuration file]' \ +'(-c)--config FILE[Specify configuration file]' \ +'(--keeperfile FILE)-k[Specify keeper file]' \ +'(-k)--keeperfile FILE[Specify keeper file]' \ +'(--no-keeperfile)-n[Do not read keeper file]' \ +'(-n)--no-keeperfile[Do not read keeper file]' \ +'(--ignore-default-rules)-i[Ignore default rules]' \ +'(-i)--ignore-default-rules[Ignore default rules]' \ +'(--show-keepers)-a[Show packages on keeper list]' \ +'(-a)--show-keepers[Show packages on keeper list]' \ +'(--show-orphans)-s[Show orphaned packages]' \ +'(-s)--show-orphans[Show orphaned packages]' \ +'(--show-depends)-d[Show all depends of PACKAGE]:package:_deb_packages avail' \ +'(-d)--show-depends[Show all depends of PACKAGE]:package:_deb_packages avail' \ +'(--show-dependents)-e[Show dependents of PACKAGE]:package:_deb_packages avail' \ +'(-e)--show-dependents[Show dependents of PACKAGE]:package:_deb_packages avail' \ +'(--show-providers)-p[Show packages providing PACKAGE]:package:_deb_packages avail' \ +'(-p)--show-providers[Show packages providing PACKAGE]:package:_deb_packages avail' \ +'(--show-related)-r[Show packages brought in by PACKAGE]:package:_deb_packages avail' \ +'(-r)--show-related[Show packages brought in by PACKAGE]:package:_deb_packages avail' \ +'(--use-tasks)-t[Make tasks visible as packages]' \ +'(-t)--use-tasks[Make tasks visible as packages]' \ +'*-'{-option,o}'[Override any configuration option]:option string:->option' \ +'*:package markings: _alternative "installed:installed packages:_deb_packages -S- installed" "uninstalled:uninstalled packages:_deb_packages uninstalled"' \ +&& return 0 + +ret=1 + +while [[ -n "$state" ]]; do + lstate="$state" + state='' + + case "$lstate" in + option) + if compset -P '*='; then + case "$IPREFIX" in + *(#i)(install|remove|info)cmd*) + _wanted values expl 'command string' _command && ret=0 + ;; + *(#i)(keeperfile|dpkg(status|available))*) + _wanted values expl 'metadata file' _files && ret=0 + ;; + *(#i)maxpriority*) + _wanted values expl 'package priority' \ + compadd required important standard optional extra ANY && ret=0 + ;; + *(#i)(use(hold|essential|predepends|recommends|suggests|tasks)|negativekeepers|verbose|force|quiet)*) + _wanted values expl 'truth value' \ + compadd yes no && ret=0 + ;; + *(#i)(no|)keepsections*) + _wanted values expl 'section' \ + compadd x11 web utils text tex sound shells science \ + otherosfs oldlibs news net misc math mail libs \ + interpreters hamradio graphics games electronics \ + editors doc devel comm base admin && ret=0 + ;; + *(#i)guessdepends*) + _wanted values expl 'name extension' \ + compadd doc dev && ret=0 + ;; + esac + else + _wanted values expl 'configure file option' \ + compadd -M 'm:{a-z}={A-Z}' -S '=' - \ + InstallCmd RemoveCmd InfoCmd KeeperFile DpkgStatus \ + DpkgAvailable MaxPriority UseHold UseEssential \ + UsePreDepends UseRecommends UseSuggests UseTasks \ + KeepSections NokeepSections GuessDepends NegativeKeepers \ + Verbose Force Quiet && ret=0 + fi + ;; + esac +done + +return ret