summaryrefslogtreecommitdiff
path: root/contrib/aptitude
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/aptitude')
-rw-r--r--contrib/aptitude26
1 files changed, 14 insertions, 12 deletions
diff --git a/contrib/aptitude b/contrib/aptitude
index b83440ed..c00ad40e 100644
--- a/contrib/aptitude
+++ b/contrib/aptitude
@@ -9,7 +9,8 @@ _comp_dpkg_hold_packages()
} || {
_comp_dpkg_hold_packages()
{
- grep -B 2 'hold' /var/lib/dpkg/status | grep "Package: $1" | cut -d\ -f2
+ command grep -B 2 'hold' /var/lib/dpkg/status | \
+ command grep "Package: $1" | cut -d\ -f2
}
}
@@ -18,9 +19,7 @@ _aptitude()
local cur dashoptions prev special i
COMPREPLY=()
- cur=`_get_cword`
- prev=${COMP_WORDS[COMP_CWORD-1]}
-
+ _get_comp_words_by_ref cur prev
dashoptions='-S -u -i -h --help --version -s --simulate -d \
--download-only -P --prompt -y --assume-yes -F \
@@ -30,7 +29,7 @@ _aptitude()
-Z -v --verbose --purge-unused --schedule-only'
for (( i=0; i < ${#COMP_WORDS[@]}-1; i++ )); do
- if [[ ${COMP_WORDS[i]} == @(install|reinstall|hold|unhold|markauto|unmarkauto|dist-upgrade|full-upgrade|download|show|forbid-version|purge|remove|changelog|why|why-not|keep|keep-all|build-dep) ]]; then
+ if [[ ${COMP_WORDS[i]} == @(@(|re)install|@(|un)hold|@(|un)markauto|@(dist|full)-upgrade|download|show|forbid-version|purge|remove|changelog|why@(|-not)|keep@(|-all)|build-dep|@(add|remove)-user-tag) ]]; then
special=${COMP_WORDS[i]}
fi
#exclude some mutually exclusive options
@@ -40,11 +39,13 @@ _aptitude()
if [[ -n "$special" ]]; then
case $special in
- @(install|hold|markauto|unmarkauto|dist-upgrade|full-upgrade|download|show|changelog|why|why-not|build-dep))
+ install|hold|markauto|unmarkauto|dist-upgrade|full-upgrade| \
+ download|show|changelog|why|why-not|build-dep|add-user-tag| \
+ remove-user-tag)
COMPREPLY=( $( apt-cache pkgnames $cur 2> /dev/null ) )
return 0
;;
- @(purge|remove|reinstall|forbid-version))
+ purge|remove|reinstall|forbid-version)
COMPREPLY=( $( _comp_dpkg_installed_packages "$cur" ) )
return 0
;;
@@ -57,16 +58,16 @@ _aptitude()
case $prev in
# don't complete anything if these options are found
- @(autoclean|clean|forget-new|search|upgrade|safe-upgrade|update|keep-all))
+ autoclean|clean|forget-new|search|safe-upgrade|upgrade|update|keep-all)
return 0
;;
-S)
_filedir
return 0
;;
- -@(t|-target-release|-default-release))
+ -t|--target-release|--default-release)
COMPREPLY=( $( apt-cache policy | \
- grep "release.o=Debian,a=$cur" | \
+ command grep "release.o=Debian,a=$cur" | \
sed -e "s/.*a=\(\w*\).*/\1/" | uniq 2> /dev/null ) )
return 0
;;
@@ -79,12 +80,13 @@ _aptitude()
clean autoclean install reinstall remove \
hold unhold purge markauto unmarkauto why why-not \
dist-upgrade full-upgrade download search show \
- forbid-version changelog keep-all build-dep' -- "$cur" ) )
+ forbid-version changelog keep-all build-dep \
+ add-user-tag remove-user-tag' -- "$cur" ) )
fi
return 0
}
-complete -F _aptitude $default aptitude
+complete -F _aptitude -o default aptitude
}
# Local variables: