summaryrefslogtreecommitdiff
path: root/extra/source/bash-completion/contrib/pkgtools
diff options
context:
space:
mode:
authorPatrick J Volkerding <volkerdi@slackware.com>2011-04-25 13:37:00 +0000
committerEric Hameleers <alien@slackware.com>2018-05-31 22:45:18 +0200
commit75a4a592e5ccda30715f93563d741b83e0dcf39e (patch)
tree502f745607e77a2c4386ad38d818ddcafe81489c /extra/source/bash-completion/contrib/pkgtools
parentb76270bf9e6dd375e495fec92140a79a79415d27 (diff)
downloadcurrent-75a4a592e5ccda30715f93563d741b83e0dcf39e.tar.gz
Slackware 13.37slackware-13.37
Mon Apr 25 13:37:00 UTC 2011 Slackware 13.37 x86_64 stable is released! Thanks to everyone who pitched in on this release: the Slackware team, the folks producing upstream code, and linuxquestions.org for providing a great forum for collaboration and testing. The ISOs are off to be replicated, a 6 CD-ROM 32-bit set and a dual-sided 32-bit/64-bit x86/x86_64 DVD. Please consider supporting the Slackware project by picking up a copy from store.slackware.com. We're taking pre-orders now, and offer a discount if you sign up for a subscription. As always, thanks to the Slackware community for testing, suggestions, and feedback. :-) Have fun!
Diffstat (limited to 'extra/source/bash-completion/contrib/pkgtools')
-rw-r--r--extra/source/bash-completion/contrib/pkgtools127
1 files changed, 127 insertions, 0 deletions
diff --git a/extra/source/bash-completion/contrib/pkgtools b/extra/source/bash-completion/contrib/pkgtools
new file mode 100644
index 00000000..2b438efc
--- /dev/null
+++ b/extra/source/bash-completion/contrib/pkgtools
@@ -0,0 +1,127 @@
+# bash completion for Slackware Linux pkgtools
+
+[ -f /etc/slackware-version ] &&
+{
+
+have pkgtool &&
+_pkgtool()
+{
+ COMPREPLY=()
+ local cur="${COMP_WORDS[COMP_CWORD]}"
+ if [[ "$cur" == -* ]]; then
+ COMPREPLY=( $( compgen -W '--sets --ignore-tagfiles --tagfile \
+ --source-mounted --source_dir --target_dir --source_device' \
+ -- "$cur" ) )
+ return 0
+ fi
+
+ local prev=${COMP_WORDS[COMP_CWORD-1]}
+
+ case $prev in
+ --source_dir|--target_dir)
+ _filedir -d
+ return 0
+ ;;
+ --sets)
+ # argument required but no completions available
+ return 0
+ ;;
+ --source_device)
+ COMPREPLY=( $( compgen -f -d -- "${cur:-/dev/}" ) )
+ return 0
+ ;;
+ --tagfile)
+ _filedir
+ return 0
+ ;;
+ esac
+} &&
+complete -F _pkgtool pkgtool
+
+have removepkg &&
+_removepkg()
+{
+ COMPREPLY=()
+ local cur=`_get_cword`
+ if [[ "$cur" == -* ]]; then
+ COMPREPLY=( $( compgen -W '-copy -keep -preserve -warn' \
+ -- "$cur" ) )
+ return 0
+ fi
+
+ COMPREPLY=( $( cd /var/log/packages; compgen -f -- "$cur" ) )
+} &&
+complete -F _removepkg removepkg
+
+have upgradepkg &&
+_upgradepkg()
+{
+ COMPREPLY=()
+ local cur=`_get_cword`
+ if [[ "$cur" == -* ]]; then
+ COMPREPLY=( $( compgen -W '--dry-run --install-new --reinstall \
+ --verbose' -- "$cur") )
+ return 0
+ fi
+
+ _filedir "t[bglx]z"
+} && complete -F _upgradepkg upgradepkg
+
+have installpkg &&
+_installpkg()
+{
+ COMPREPLY=()
+ local cur=`_get_cword`
+ if [[ "$cur" == -* ]]; then
+ COMPREPLY=( $( compgen -W '--warn --md5sum --root --infobox --terse \
+ --menu --ask --priority --tagfile' -- "$cur") )
+ return 0
+ fi
+
+ local prev=`_get_pword`
+
+ case $prev in
+ --root)
+ _filedir -d
+ return 0
+ ;;
+ --priority)
+ COMPREPLY=( $( compgen -W 'ADD REC OPT SKP' -- "$cur" ) )
+ return 0
+ ;;
+ --tagfile)
+ _filedir
+ return 0
+ ;;
+ esac
+
+ _filedir "t[bglx]z"
+} && complete -F _installpkg installpkg
+
+have makepkg &&
+_makepkg()
+{
+ COMPREPLY=()
+ local cur=`_get_cword`
+ if [[ "$cur" == -* ]]; then
+ COMPREPLY=( $( compgen -W '-l --linkadd -p --prepend \
+ -c --chown' -- "$cur") )
+ return 0
+ fi
+
+ local prev=`_get_pword`
+
+ case $prev in
+ -l|--linkadd|-c|--chown)
+ COMPREPLY=( $( compgen -W 'y n' -- "$cur" ) )
+ return 0
+ ;;
+ esac
+
+ _filedir
+} && complete -F _makepkg makepkg
+
+have explodepkg &&
+complete -o plusdirs -f -X '!*.t[bglx]z' explodepkg
+
+}