diff options
author | Paul Ackersviller <packersv@users.sourceforge.net> | 2007-06-05 03:27:29 +0000 |
---|---|---|
committer | Paul Ackersviller <packersv@users.sourceforge.net> | 2007-06-05 03:27:29 +0000 |
commit | 32019238309f8bd6316a69bbf663920fdcb74a16 (patch) | |
tree | ea59fb92e8119e7fa6b4601c90c44ce2b478332d | |
parent | 6f828c4a1460666391f5bded6dc1cd4916a1192c (diff) | |
download | zsh-32019238309f8bd6316a69bbf663920fdcb74a16.tar.gz zsh-32019238309f8bd6316a69bbf663920fdcb74a16.tar.xz zsh-32019238309f8bd6316a69bbf663920fdcb74a16.zip |
Merge of users/10162, and workers/{21571,22817,23252}.
-rw-r--r-- | Completion/Debian/Command/_aptitude | 33 |
1 files changed, 26 insertions, 7 deletions
diff --git a/Completion/Debian/Command/_aptitude b/Completion/Debian/Command/_aptitude index 6ca8f18cd..4d52cca8e 100644 --- a/Completion/Debian/Command/_aptitude +++ b/Completion/Debian/Command/_aptitude @@ -2,11 +2,22 @@ local curcontext="$curcontext" state line cmds ret=1 +function _aptitude_release() { + #{{{ + local expl releases + releases=( +${${(M)${(f)"$(</etc/apt/sources.list)"}\ +:#[ $'\t']#deb(|-src)*}/(#b)[ $'\t']#[^ $'\t']##[ $'\t']##[^ $'\t']##[ $'\t']##([^ $'\t']##)*/$match[1]} + ) + _wanted list expl release compadd ${expl} - ${(u)releases} + #}}} +} + _arguments -C \ '(- 1 *)'{-h,--help}'[display help information]' \ '(- 1 *)--version[display version information]' \ '(-s --simulate)'{-s,--simulate}'[print actions without performing them]' \ - '(-d --download-only)'{-d,--download-only}"[just download packages - don't install]" \ + '(-d --download-only)'{-d,--download-only}"[just download packages - don\'t install]" \ '(-P --prompt)'{-P,--prompt}'[always display a prompt]' \ '(-y --assume-yes)'{-y,--assume-yes}'[assume yes answer to questions]' \ '(-F --display-format)'{-F,--display-format}'[specify output format for search command]:format' \ @@ -17,16 +28,24 @@ _arguments -C \ '(-D --show-deps)'{-D,--show-deps}'[show brief explanations of automatic installations and removals]' \ '-Z[show disk space changes for each package]' \ '(-v --verbose)'{-v,--verbose}'[causes some commands to display extra information]' \ - '(--without-recommends)--with-recommends[install recommended packages when installing new packages]' \ + '(-R --without-recommends)'{-R,--with-recommends}'[install recommended packages when installing new packages]' \ '(--without-suggests)--with-suggests[install suggested packages when installing new packages]' \ - '(--with-recommends)--without-recommends[ignore recommended packages when installing new packages]' \ + '(-r --with-recommends)'{-r,--without-recommends}'[ignore recommended packages when installing new packages]' \ '(--with-suggests)--without-suggests[ignore suggested packages when installing new packages]' \ + '(-t --target-release)'{-t,--target-release}'[set the release from which packages should be installed]:release:_aptitude_release' \ + '(-q --quiet)'{-q=,--quiet=}'[less Output]:level' \ + '--schedule-only[schedule operations to be performed in the future]' \ + '--purge-unused[purge unused packages instead of removing]' \ + '--visual-preview[start up the visual interface and display its preview screen]' \ + '-S[load the extended state information from non-standard state file]:state file:_files' \ + '-u[begin updating the package lists as soon as the program starts]' \ + '-i[displays a download preview when the program starts]' \ '1: :->cmds' \ '*: :->args' && ret=0 case $state in cmds) - cmds=( ${${(M)${(f)"$(aptitude -h 2>/dev/null)"}:#* - *}/(#b) (*[^ ]) #- (*)/$match[1]:$match[2]:l}) + cmds=( ${${(M)${(f)"$(LC_ALL=C _call_program commands aptitude -h 2>/dev/null)"}:#* - *}/(#b) (*[^ ]) #- (*)/$match[1]:$match[2]:l}) _describe -t commands 'aptitude command' cmds && ret=0 ;; @@ -35,13 +54,13 @@ case $state in search) _message -e patterns pattern ;; - download) + download|show|changelog) _deb_packages avail && ret=0 ;; - remove|purge|hold) + (remove|purge|hold|unhold|reinstall|forbid-version|markauto|unmarkauto) _deb_packages installed && ret=0 ;; - install|markauto|unmarkauto) + install) _deb_packages uninstalled && ret=0 ;; *) |