diff options
Diffstat (limited to 'Completion/Debian/Command')
-rw-r--r-- | Completion/Debian/Command/_apt | 29 | ||||
-rw-r--r-- | Completion/Debian/Command/_aptitude | 2 | ||||
-rw-r--r-- | Completion/Debian/Command/_deborphan | 42 |
3 files changed, 58 insertions, 15 deletions
diff --git a/Completion/Debian/Command/_apt b/Completion/Debian/Command/_apt index 074fb0164..645b02279 100644 --- a/Completion/Debian/Command/_apt +++ b/Completion/Debian/Command/_apt @@ -408,12 +408,13 @@ _apt-cmd () { /$'policy\0'/ /$'[^\0]#\0'/ ':packages::_deb_packages "$expl_packages[@]" avail' \# \| \ /$'update\0'/ \| \ \( \ - /$'install\0'\|$'download\0'\|$'source\0'\|$'build-dep\0'/ \ - /$'[^\0]#\0'/ ':packages::_deb_packages "$expl_packages[@]" avail' \# \ - \( \ - /$'[^\0/]#/'/ /$'[^\0/]#\0'/ ':release name::_apt_releases' \| \ - /$'[^\0=]#='/ /$'[^\0=]#\0'/ ':package version::_apt_versions_of_binary_package' \ - \) \ + /$'(install|download|source|build-dep)\0'/ -'subcmd=${match%?}' \ + /$'[^\0]#\0'/ ':packages::_deb_packages -qr "\n\t\- /=" "$expl_packages[@]" avail' \# \ + \( \ + // '%(.|)/%' -'[[ $subcmd = install ]]' /'[]'/ ':files:package file:_files -g "*.deb(-.)"' \| \ + /$'[^\0/=]#\/'/ /'[]'/ ':apt-releases:release name:_apt_releases' \| \ + /$'[^\0/=]#='/ /'[]'/ ':apt-package-versions:package version:_apt_versions_of_binary_package' \| \ + \) \ \) \| \ /$'remove\0'/ /$'[^\0]#\0'/ ':packages::_deb_packages "$expl_packages[@]" installed' \# \| \ /$'purge\0'/ /$'[^\0]#\0'/ ':packages::_deb_packages "$expl_packages[@]" installed' \# \| \ @@ -427,7 +428,7 @@ _apt-cmd () { /"[]"/ ':argument-1::compadd "$expl_action[@]" list search showsrc show depends rdepends policy update install download source build-dep remove upgrade full-upgrade dist-upgrade edit-sources autoclean changelog autoremove purge' _apt-cmd () { - local expl_action expl_packages + local expl_action expl_packages subcmd _description actions expl_action 'action' _description packages expl_packages 'package' @@ -475,11 +476,11 @@ _apt-get () { /$'upgrade\0'/ \| \ \( \ /$'install\0'\|$'download\0'\|$'source\0'\|$'build-dep\0'/ \ - /$'[^\0]#\0'/ ':packages::_deb_packages "$expl_packages[@]" avail' \# \ - \( \ - /$'[^\0/]#/'/ /$'[^\0/]#\0'/ ':release name::_apt_releases' \| \ - /$'[^\0=]#='/ /$'[^\0=]#\0'/ ':package version::_apt_versions_of_binary_package' \ - \) \ + /$'[^\0]#\0'/ ':packages::_deb_packages -qr "\n\t\- /=" "$expl_packages[@]" avail' \# \ + \( \ + /$'[^\0/=]#/'/ /'[]'/ ':apt-releases:release name:_apt_releases' \| \ + /$'[^\0/=]#='/ /'[]'/ ':apt-package-versions:package version:_apt_versions_of_binary_package' \ + \) \ \) \| \ /$'remove\0'/ /$'[^\0]#\0'/ ':packages::_deb_packages "$expl_packages[@]" installed' \# \| \ /$'purge\0'/ /$'[^\0]#\0'/ ':packages::_deb_packages "$expl_packages[@]" installed' \# \| \ @@ -609,7 +610,7 @@ _apt_releases_update () { then local -a tmp=("${(f)$(apt-cache policy)}") _apt_releases=( -${${${${(M)tmp:#*release*}#*a=}%%,*}:#now} +${${${${(M)tmp:#*release*a=*}#*a=}%%,*}:#now} ${${${${(M)tmp:#*release*n=*}#*n=}%%,*}:#now} ) typeset -U _apt_releases @@ -662,7 +663,7 @@ _apt_versions_of_binary_package() { done done - _describe -t apt-package-versions "package versions" kv "$@" + _describe -t apt-package-versions 'package version' kv "$@" } _apt_caching_policy () { diff --git a/Completion/Debian/Command/_aptitude b/Completion/Debian/Command/_aptitude index b2b54599f..f79a100a8 100644 --- a/Completion/Debian/Command/_aptitude +++ b/Completion/Debian/Command/_aptitude @@ -80,7 +80,7 @@ _arguments -C \ case $state in cmds) - cmds=( ${${(M)${(f)"$(LC_ALL=C _call_program commands aptitude -h 2>/dev/null)"}:# [^- ][^ ]## *}/(#b) ([^ ]##) ##(- )#([^- ]*)/$match[1]:$match[3]:l}) + cmds=( ${${(M)${(f)"$(_call_program commands aptitude -h 2>/dev/null)"}:# [^- ][^ ]## *}/(#b) ([^ ]##) ##(- )#([^- ]*)/$match[1]:$match[3]:l}) _describe -t commands 'aptitude command' cmds && ret=0 ;; diff --git a/Completion/Debian/Command/_deborphan b/Completion/Debian/Command/_deborphan new file mode 100644 index 000000000..9f6df6f65 --- /dev/null +++ b/Completion/Debian/Command/_deborphan @@ -0,0 +1,42 @@ +#compdef deborphan + +local keep=(/var/lib/deborphan/keep(N) /dev/null) +_arguments : \ + {--help,-h}'[help]' \ + {--status-file,-f}'[specify status file]:file:_files' \ + {--version,-v}'[version]' \ + {--show-deps,-d}'[show dependencies for packages that have them]' \ + {--show-priority,-P}'[show priority of packages found]' \ + {--show-section,-s}'[show the sections the packages are in]' \ + --no-show-section'[do not show sections]' \ + {--show-size,-z}'[show installed size of packages found]' \ + {--all-packages,-a}'[compare all packages, not just libs]' \ + {--exclude,-e}'[work as if specified packages were not installed]:packages:_sequence _deb_packages - avail' \ + {--force-hold,-H}'[ignore hold flags]' \ + {--nice-mode,-n}'[disable checks for "recommends" and "suggests"]' \ + --ignore-recommends'[disable checks for recommends]' \ + --ignore-suggests'[disable checks for "suggests"]' \ + {--priority,-p}'[select only packages with at least specified priority]:priority:' \ + --find-config'[find "orphaned" configuration files]' \ + --libdevel'[search in libdevel in addition to libs and oldlibs]' \ + {--add-keep,-A}'[packages to never report]:*:package:_deb_packages installed' \ + {--keep-file,-k}'[file to get/store info about kept packages]:file:_files' \ + {--list-keep,-L}'[list the packages that are never reported]' \ + {--del-keep,-R}"[packages to remove from the 'keep' file]:*:package:compadd -X 'kept package' $(< $keep[1])" \ + {--zero-keep,-Z}'[remove all packages from the "keep" file]' \ + --guess-common'[try to report common packages]' \ + --guess-data'[try to report data packages]' \ + --guess-debug'[try to report debugging libraries]' \ + --guess-dev'[try to report development packages]' \ + --guess-doc'[try to report documentation packages]' \ + --guess-dummy'[try to report dummy packages]' \ + --guess-kernel'[try to report kernel modules]' \ + --guess-interpreters'[try to report interpreter libraries]' \ + --guess-mono'[try to report mono libraries]' \ + --guess-perl'[try to report perl libraries]' \ + --guess-pike'[try to report pike libraries]' \ + --guess-python'[try to report python libraries]' \ + --guess-ruby'[try to report ruby libraries]' \ + --guess-section'[try to report libraries in wrong sections]' \ + --guess-all'[try all of the above]' \ + --guess-only'[use --guess options only]' |