diff options
Diffstat (limited to 'contrib/configure')
-rw-r--r-- | contrib/configure | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/contrib/configure b/contrib/configure new file mode 100644 index 00000000..3195bcb9 --- /dev/null +++ b/contrib/configure @@ -0,0 +1,32 @@ +# 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 + +# 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 |