[Bash-completion-commits] [SCM] bash-completion branch, master, updated. 2.0-56-g166ac77
Guillaume Rousse
guillomovitch at gmail.com
Mon Oct 29 23:11:58 UTC 2012
The following commit has been merged in the master branch:
commit ff444b528397f273d46da7c52a445b924adccc00
Author: Yann Rouillard <yann at opencsw.org>
Date: Tue Oct 30 00:09:21 2012 +0100
new completion: pkgrm
diff --git a/CHANGES b/CHANGES
index 4096518..364c93d 100644
--- a/CHANGES
+++ b/CHANGES
@@ -4,6 +4,7 @@
* svcadm: new completion, contributed by Yann Rouillard <yann at opencsw.org>
* pkg-get: new completion, contributed by Yann Rouillard <yann at opencsw.org>
* pkgadd: new completion, contributed by Yann Rouillard <yann at opencsw.org>
+ * pkgdrm: new completion, contributed by Yann Rouillard <yann at opencsw.org>
bash-completion (2.0)
diff --git a/completions/Makefile.am b/completions/Makefile.am
index b9d261c..3a840c4 100644
--- a/completions/Makefile.am
+++ b/completions/Makefile.am
@@ -237,6 +237,7 @@ bashcomp_DATA = a2x \
pkg-get \
pkg_delete \
pkgadd \
+ pkgrm \
pkgtool \
plague-client \
pm-hibernate \
diff --git a/completions/pkgrm b/completions/pkgrm
new file mode 100644
index 0000000..24d2a39
--- /dev/null
+++ b/completions/pkgrm
@@ -0,0 +1,50 @@
+# pkgrm completion -*- shell-script -*-
+#
+# Copyright 2006 Yann Rouillard <yann at opencsw.org>
+
+_have pkgrm &&
+_pkgrm ()
+{
+ local cur prev words cword
+ _init_completion || return
+
+ # if a spool directory was given
+ # we must complete with the package
+ # available in this directory
+ local spool=/var/sadm/pkg;
+ local i=$cword
+ while [[ $((i--)) -gt 0 ]]; do
+ i=$((i-1));
+ case "${words[$i]}" in
+ -s)
+ spool="${words[$((i+1))]}";
+ break
+ ;;
+ esac;
+ done;
+
+ case $prev in
+ -a | -V)
+ _filedir
+ ;;
+ -s | -R)
+ _filedir -d
+ ;;
+ -Y)
+ ;;
+ *)
+ if [[ ${cur} == -* ]]; then
+ local opts="-a -A -n -M -R -s -v -V -Y";
+ COMPREPLY=($(compgen -W "${opts}" -- ${cur}));
+ return 0;
+ else
+ COMPREPLY=($(compgen -W "$(/bin/ls -1 $spool)" -- ${cur}));
+ return 0;
+ fi
+ ;;
+ esac
+} &&
+complete -F _pkgrm pkgrm
+
+# ex: ts=4 sw=4 et filetype=sh
+
diff --git a/test/completion/pkgrm.exp b/test/completion/pkgrm.exp
new file mode 100644
index 0000000..e94337a
--- /dev/null
+++ b/test/completion/pkgrm.exp
@@ -0,0 +1 @@
+assert_source_completions pkgrm
diff --git a/test/lib/completions/awk.exp b/test/lib/completions/pkgrm.exp
similarity index 80%
copy from test/lib/completions/awk.exp
copy to test/lib/completions/pkgrm.exp
index 260dabc..08c685c 100644
--- a/test/lib/completions/awk.exp
+++ b/test/lib/completions/pkgrm.exp
@@ -11,9 +11,7 @@ proc teardown {} {
setup
-assert_complete_any "awk "
-
-
+assert_complete_any "pkgrm "
sync_after_int
--
bash-completion
More information about the Bash-completion-commits
mailing list