split configure completion

This commit is contained in:
Guillaume Rousse 2009-06-08 16:51:48 +02:00
parent 7f83cb5816
commit 7522b94f33
3 changed files with 24 additions and 19 deletions

View File

@ -22,6 +22,7 @@ bashcomp_DATA = contrib/ant \
contrib/cfengine \
contrib/cksfv \
contrib/clisp \
contrib/configure \
contrib/cowsay \
contrib/cpan2dist \
contrib/cpio \

View File

@ -1407,25 +1407,6 @@ for i in env netstat seq uname units wget; do
done
unset i
_configure_func()
{
local cur
COMPREPLY=()
cur=`_get_cword`
# if $COMP_CONFIGURE_HINTS is not null, then completions of the form
# --option=SETTING will include 'SETTING' as a contextual hint
[[ "$cur" != -* ]] && return 0
if [ -n "$COMP_CONFIGURE_HINTS" ]; then
COMPREPLY=( $( $1 --help 2>&1 | awk '/^ --[A-Za-z]/ { print $1; if ($2 ~ /--[A-Za-z]/) print $2 }' | sed -e 's/[[,].*//g' | grep ^$cur ) )
else
COMPREPLY=( $( $1 --help 2>&1 | awk '/^ --[A-Za-z]/ { print $1; if ($2 ~ /--[A-Za-z]/) print $2 }' | sed -e 's/[[,=].*//g' | grep ^$cur ) )
fi
}
complete -F _configure_func $default configure
[ $UNAME = FreeBSD ] && {
# FreeBSD package management tool completion
#

23
contrib/configure vendored Normal file
View File

@ -0,0 +1,23 @@
# -*- mode: shell-script; sh-basic-offset: 8; indent-tabs-mode: t -*-
# ex: ts=8 sw=8 noet filetype=sh
#
# bash completion for configure
_configure()
{
local cur
COMPREPLY=()
cur=`_get_cword`
# if $COMP_CONFIGURE_HINTS is not null, then completions of the form
# --option=SETTING will include 'SETTING' as a contextual hint
[[ "$cur" != -* ]] && return 0
if [ -n "$COMP_CONFIGURE_HINTS" ]; then
COMPREPLY=( $( $1 --help 2>&1 | awk '/^ --[A-Za-z]/ { print $1; if ($2 ~ /--[A-Za-z]/) print $2 }' | sed -e 's/[[,].*//g' | grep ^$cur ) )
else
COMPREPLY=( $( $1 --help 2>&1 | awk '/^ --[A-Za-z]/ { print $1; if ($2 ~ /--[A-Za-z]/) print $2 }' | sed -e 's/[[,=].*//g' | grep ^$cur ) )
fi
}
complete -F _configure $default configure