[Bash-completion-commits] [SCM] bash-completion branch, master, updated. 1.3-235-g26ae770
Igor Murzov
igor at gplsoft.org
Mon May 2 10:27:00 UTC 2011
The following commit has been merged in the master branch:
commit b1b192cac9164a4f5d01717fa825a2b3643dbd1d
Author: Igor Murzov <igor at gplsoft.org>
Date: Mon Jul 5 02:08:42 2010 +0400
Add initial slapt-get completion
not all options work properly now:
--install and --install-set should be improved
diff --git a/contrib/slackware b/contrib/slackware
index 190ad84..816faa3 100644
--- a/contrib/slackware
+++ b/contrib/slackware
@@ -12,3 +12,51 @@ _rpm2tgz()
COMPREPLY=( $(compgen -f -X "!*.rpm" -- "$cur") )
} && complete -F _rpm2tgz -o plusdirs rpm2tgz rpm2targz
+
+have slapt-get && [ -f /etc/slackware-version ] &&
+_slapt-get()
+{
+ COMPREPLY=()
+ local cur prev
+ _get_comp_words_by_ref cur prev
+
+ if [[ "$cur" == -* ]]; then
+ COMPREPLY=( $( compgen -W '--download-only -d --simulate -s \
+ --no-prompt -y --prompt -p --reinstall --ignore-excludes \
+ --no-md5 --ignore-dep --no-dep --print-uris --show-stats -S \
+ --config -c --remove-obsolete --retry --no-upgrade \
+ --update -u --upgrade --dist-upgrade --install -i --install-set \
+ --remove --show --filelist --search --list --available \
+ --installed --clean --autoclean --add-keys --version' \
+ -- "$cur" ) )
+ return 0
+ fi
+
+ case $prev in
+ --config|-c)
+ _filedir
+ return 0
+ ;;
+ --retry|--search)
+ # argument required but no completions available
+ return 0
+ ;;
+ --install|-i|--show|--filelist)
+ COMPREPLY=( $( slapt-get --search "^$cur" 2> /dev/null | \
+ awk '{print $1}' ) )
+ return 0
+ ;;
+ --install-set)
+ COMPREPLY=( $( compgen -W 'a ap d e f k kde kdei l n t tcl x \
+ xap y' -- "$cur" ) )
+ return 0
+ ;;
+ --remove)
+ COMPREPLY=( $( (cd /var/log/packages; compgen -f -- "$cur") ) )
+ return 0
+ ;;
+ esac
+
+ COMPREPLY=( $( slapt-get --search "^$cur" 2> /dev/null | \
+ awk '{print $1}' ) )
+} && complete -F _slapt-get slapt-get
--
bash-completion
More information about the Bash-completion-commits
mailing list