[Bash-completion-commits] [SCM] bash-completion branch, master, updated. 1.3-382-g38dc63d
Ville Skyttä
ville.skytta at iki.fi
Sat Jun 18 15:26:45 UTC 2011
The following commit has been merged in the master branch:
commit 38dc63d591d32824d268e7172391119e1dc7b58e
Author: Ville Skyttä <ville.skytta at iki.fi>
Date: Sat Jun 18 18:22:35 2011 +0300
dot: New completion.
diff --git a/completions/Makefile.am b/completions/Makefile.am
index 324599c..a7ad5ed 100644
--- a/completions/Makefile.am
+++ b/completions/Makefile.am
@@ -36,6 +36,7 @@ bashcomp_DATA = abook \
dd \
dhclient \
dict \
+ dot \
dpkg \
dselect \
dsniff \
diff --git a/completions/dot b/completions/dot
new file mode 100644
index 0000000..cd53598
--- /dev/null
+++ b/completions/dot
@@ -0,0 +1,53 @@
+# dot(1) completion
+
+have dot || return
+
+_dot()
+{
+ local cur prev words cword
+ _init_completion -n := || return
+
+ [[ $prev == -@(V|\?) ]] && return
+
+ case $cur in
+ -G*|-N*|-E*|-l?*|-q?*|-s?*|-Ln*|-LU*|-LC*|-LT*)
+ return
+ ;;
+ -T*)
+ local langs=( $( "$1" -TNON_EXISTENT 2>&1 | \
+ sed -ne 's/.*one of://p' ) )
+ COMPREPLY=( $( compgen -P -T -W '${langs[@]}' -- "${cur#-T}" ) )
+ return
+ ;;
+ -K*)
+ local layouts=( $( "$1" -KNON_EXISTENT 2>&1 | \
+ sed -ne 's/.*one of://p' ) )
+ COMPREPLY=( $( compgen -P -K -W '${layouts[@]}' -- "${cur#-K}" ) )
+ return
+ ;;
+ -o*)
+ cur=${cur#-o}
+ _filedir
+ COMPREPLY=( $( compgen -P -o -W '${COMPREPLY[@]}' -- "$cur" ) )
+ return
+ ;;
+ esac
+
+ if [[ $cur == -* ]]; then
+ COMPREPLY=( $( compgen -W '-V -v -G -N -E -T -K -l -o -O -P -q -s -y -n
+ -n1 -n2 -x -Lg -LO -Ln -LU -LC -LT -m -c -?' -- "$cur" ) )
+ [[ $COMPREPLY == -@(G|N|E|T|K|o|L[nUCT]) ]] && compopt -o nospace
+ return
+ fi
+
+ _filedir dot
+} &&
+complete -F _dot dot
+
+# Local variables:
+# mode: shell-script
+# sh-basic-offset: 4
+# sh-indent-comment: t
+# indent-tabs-mode: nil
+# End:
+# ex: ts=4 sw=4 et filetype=sh
diff --git a/test/completion/dot.exp b/test/completion/dot.exp
new file mode 100644
index 0000000..d12422c
--- /dev/null
+++ b/test/completion/dot.exp
@@ -0,0 +1 @@
+assert_source_completions dot
diff --git a/test/lib/completions/c++.exp b/test/lib/completions/dot.exp
similarity index 81%
copy from test/lib/completions/c++.exp
copy to test/lib/completions/dot.exp
index c899de2..2a85a56 100644
--- a/test/lib/completions/c++.exp
+++ b/test/lib/completions/dot.exp
@@ -11,7 +11,7 @@ proc teardown {} {
setup
-assert_complete_any "c++ "
+assert_complete_any "dot "
sync_after_int
--
bash-completion
More information about the Bash-completion-commits
mailing list