[Bash-completion-commits] [SCM] bash-completion branch, master, updated. b3f8e617ac7569a4c6bd3f3f6e6e3bc51d61d3f4
Guillaume Rousse
guillomovitch at zarb.org
Fri May 29 07:57:28 UTC 2009
The following commit has been merged in the master branch:
commit 82e0b04591986db41a0edef290c69656a6bd5879
Author: Guillaume Rousse <guillomovitch at zarb.org>
Date: Wed May 27 19:01:26 2009 +0200
split info completion
diff --git a/Makefile.am b/Makefile.am
index 75cfb10..6cf11d2 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -35,6 +35,7 @@ bashcomp_DATA = contrib/ant \
contrib/harbour \
contrib/heimdal \
contrib/imagemagick \
+ contrib/info \
contrib/iptables \
contrib/isql \
contrib/java \
diff --git a/bash_completion b/bash_completion
index 6dd5bdf..cc67fae 100644
--- a/bash_completion
+++ b/bash_completion
@@ -3821,57 +3821,6 @@ _cancel()
} &&
complete -F _cancel $filenames cancel
-# info(1) completion
-#
-have info &&
-_info()
-{
- local cur infopath
-
- COMPREPLY=()
- cur=`_get_cword`
-
- _expand || return 0
-
- # default completion if parameter contains /
- if [[ "$cur" == */* ]]; then
- _filedir
- return 0
- fi
-
- infopath='/usr/share/info'
-
- if [ "${INFOPATH: -1:1}" == ':' ]; then
- infopath=${INFOPATH}${infopath}
- elif [ ${INFOPATH:+set} ]; then
- infopath=$INFOPATH
- fi
-
- infopath=$infopath:
- if [ -n "$cur" ]; then
- infopath="${infopath//://$cur* }"
- else
- infopath="${infopath//:// }"
- fi
-
- # redirect stderr for when path doesn't exist
- COMPREPLY=( $( eval command ls "$infopath" 2>/dev/null ) )
- # weed out directory path names and paths to info pages
- COMPREPLY=( ${COMPREPLY[@]##*/?(:)} )
- # weed out info dir file
- for (( i=0 ; i < ${#COMPREPLY[@]} ; ++i )); do
- if [ "${COMPREPLY[$i]}" == 'dir' ]; then
- unset COMPREPLY[$i];
- fi;
- done
- # strip suffix from info pages
- COMPREPLY=( ${COMPREPLY[@]%.@(gz|bz2|lzma)} )
- COMPREPLY=( $( compgen -W '${COMPREPLY[@]%.*}' -- "${cur//\\\\/}" ) )
-
- return 0
-} &&
-complete -F _info $filenames info
-
# id(1) completion
#
have id &&
diff --git a/contrib/info b/contrib/info
new file mode 100644
index 0000000..745d3e1
--- /dev/null
+++ b/contrib/info
@@ -0,0 +1,53 @@
+# -*- mode: shell-script; sh-basic-offset: 8; indent-tabs-mode: t -*-
+# ex: ts=8 sw=8 noet filetype=sh
+#
+# bash completion for info
+
+have info &&
+_info()
+{
+ local cur infopath
+
+ COMPREPLY=()
+ cur=`_get_cword`
+
+ _expand || return 0
+
+ # default completion if parameter contains /
+ if [[ "$cur" == */* ]]; then
+ _filedir
+ return 0
+ fi
+
+ infopath='/usr/share/info'
+
+ if [ "${INFOPATH: -1:1}" == ':' ]; then
+ infopath=${INFOPATH}${infopath}
+ elif [ ${INFOPATH:+set} ]; then
+ infopath=$INFOPATH
+ fi
+
+ infopath=$infopath:
+ if [ -n "$cur" ]; then
+ infopath="${infopath//://$cur* }"
+ else
+ infopath="${infopath//:// }"
+ fi
+
+ # redirect stderr for when path doesn't exist
+ COMPREPLY=( $( eval command ls "$infopath" 2>/dev/null ) )
+ # weed out directory path names and paths to info pages
+ COMPREPLY=( ${COMPREPLY[@]##*/?(:)} )
+ # weed out info dir file
+ for (( i=0 ; i < ${#COMPREPLY[@]} ; ++i )); do
+ if [ "${COMPREPLY[$i]}" == 'dir' ]; then
+ unset COMPREPLY[$i];
+ fi;
+ done
+ # strip suffix from info pages
+ COMPREPLY=( ${COMPREPLY[@]%.@(gz|bz2|lzma)} )
+ COMPREPLY=( $( compgen -W '${COMPREPLY[@]%.*}' -- "${cur//\\\\/}" ) )
+
+ return 0
+} &&
+complete -F _info $filenames info
--
bash-completion
More information about the Bash-completion-commits
mailing list