bash-completion/completions/pkg-config

45 lines
1.3 KiB
Bash

# bash completion for pkgconfig -*- shell-script -*-
_pkg_config()
{
local cur prev words cword split
_init_completion -s || return
case $prev in
--define-variable|--atleast-version|--atleast-pkgconfig-version| \
--exact-version|--max-version)
# argument required but no completions available
return 0
;;
--variable)
local i
for (( i=1; i < ${#words[@]}; i++ )); do
if [[ ${words[i]} != -* ]]; then
COMPREPLY=( $( compgen -W \
'$( "$1" ${words[i]} --print-variables 2>/dev/null )' \
-- "$cur" ) )
break
fi
done
return 0
;;
-\?|--help|--version|--usage)
# all other arguments are noop with these
return 0
;;
esac
$split && return 0
if [[ "$cur" == -* ]]; then
COMPREPLY=( $( compgen -W '$( _parse_help "$1" )' -- "$cur" ) )
[[ $COMPREPLY == *= ]] && compopt -o nospace
else
COMPREPLY=( $( compgen -W "$( $1 --list-all \
2>/dev/null | awk '{print $1}' )" -- "$cur" ) )
fi
} &&
complete -F _pkg_config pkg-config
# ex: ts=4 sw=4 et filetype=sh