summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog3
-rw-r--r--Completion/Debian/Command/_aptitude25
2 files changed, 25 insertions, 3 deletions
diff --git a/ChangeLog b/ChangeLog
index 7680ec118..600ef77da 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,8 @@
2007-01-02 Clint Adams <clint@zsh.org>
+ * 22817: Frank Terbeck: Completion/Debian/Command/_aptitude:
+ update for modern options, add completion of releases.
+
* 23080: arno: Completion/X/Command/_qiv: fix -c and -g
(both were mistakenly -b).
diff --git a/Completion/Debian/Command/_aptitude b/Completion/Debian/Command/_aptitude
index 84c33dd9d..28052cdb2 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,10 +28,18 @@ _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