c875723bef
This way it's clearer to users that an argument is expected. It's likely that this commit does not catch all such cases, but it should do it for most of the affected commands I have installed.
119 lines
2.6 KiB
Bash
119 lines
2.6 KiB
Bash
# Completions for autoconf tools
|
|
|
|
have autoconf &&
|
|
_autoconf()
|
|
{
|
|
local cur prev words cword split
|
|
_init_completion -s || return
|
|
|
|
case "$prev" in
|
|
--help|-h|--version|-V|--trace|-t)
|
|
return 0
|
|
;;
|
|
--output|-o)
|
|
_filedir
|
|
return 0
|
|
;;
|
|
--warnings|-W)
|
|
local cats=( cross obsolete syntax )
|
|
COMPREPLY=( $( compgen -W \
|
|
'${cats[@]} ${cats[@]/#/no-} all none error' -- "$cur" ) )
|
|
return 0
|
|
;;
|
|
--prepend-include|-B|--include|-I)
|
|
_filedir -d
|
|
return 0
|
|
;;
|
|
esac
|
|
|
|
$split && return 0
|
|
|
|
if [[ "$cur" == -* ]]; then
|
|
COMPREPLY=( $( compgen -W '$( _parse_help "$1" )' -- "$cur" ) )
|
|
[[ $COMPREPLY == *= ]] && compopt -o nospace
|
|
return
|
|
fi
|
|
|
|
_filedir '@(ac|in)'
|
|
} &&
|
|
complete -F _autoconf autoconf
|
|
|
|
have autoreconf || have autoheader &&
|
|
_autoreconf()
|
|
{
|
|
local cur prev words cword split
|
|
_init_completion -s || return
|
|
|
|
case "$prev" in
|
|
--help|-h|--version|-V)
|
|
return 0
|
|
;;
|
|
--warnings|-W)
|
|
local cats=( cross gnu obsolete override portability syntax \
|
|
unsupported )
|
|
COMPREPLY=( $( compgen -W \
|
|
'${cats[@]} ${cats[@]/#/no-} all none error' -- "$cur" ) )
|
|
return 0
|
|
;;
|
|
--prepend-include|-B|--include|-I)
|
|
_filedir -d
|
|
return 0
|
|
;;
|
|
esac
|
|
|
|
$split && return 0
|
|
|
|
if [[ "$cur" == -* ]]; then
|
|
COMPREPLY=( $( compgen -W '$( _parse_help "$1" )' -- "$cur" ) )
|
|
[[ $COMPREPLY == *= ]] && compopt -o nospace
|
|
return 0
|
|
fi
|
|
|
|
if [[ $1 == autoheader ]] ; then
|
|
_filedir '@(ac|in)'
|
|
else
|
|
_filedir -d
|
|
fi
|
|
} &&
|
|
complete -F _autoreconf autoreconf autoheader
|
|
|
|
have autoscan || have autoupdate &&
|
|
_autoscan()
|
|
{
|
|
local cur prev words cword split
|
|
_init_completion -s || return
|
|
|
|
case "$prev" in
|
|
--help|-h|--version|-V)
|
|
return 0
|
|
;;
|
|
--prepend-include|-B|--include|-I)
|
|
_filedir -d
|
|
return 0
|
|
;;
|
|
esac
|
|
|
|
$split && return 0
|
|
|
|
if [[ "$cur" == -* ]]; then
|
|
COMPREPLY=( $( compgen -W '$( _parse_help "$1" )' -- "$cur" ) )
|
|
[[ $COMPREPLY == *= ]] && compopt -o nospace
|
|
return 0
|
|
fi
|
|
|
|
if [[ $1 == autoupdate ]] ; then
|
|
_filedir '@(ac|in)'
|
|
else
|
|
_filedir -d
|
|
fi
|
|
} &&
|
|
complete -F _autoscan autoscan autoupdate
|
|
|
|
# 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
|