# youri-submit completion # $Id$ _youri-submit() { local cur prev config COMPREPLY=() cur=${COMP_WORDS[COMP_CWORD]} prev=${COMP_WORDS[COMP_CWORD-1]} case "$prev" in --config) _filedir return 0 ;; --list) COMPREPLY=( $( compgen -W 'targets steps' -- $cur ) ) return 0 ;; --help) COMPREPLY=( $( compgen -W 'repository steps' -- $cur ) ) return 0 ;; esac if [[ "$cur" == -* ]]; then COMPREPLY=( $( compgen -W '--define --clean -l --list -h --help -t \ --test -v --verbose' -- $cur ) ) # add dangereous option for main command if [[ ${COMP_WORDS[0]} == youri-submit ]]; then COMPREPLY=( $( compgen -W '${COMPREPLY[@]} --config --skip-step' \ -- $cur ) ) fi else _count_args case $args in 1) _find_config COMPREPLY=( $( compgen -W '$( youri-submit $config --list targets )' -- $cur ) ) ;; *) _filedir ;; esac fi } complete -F _youri-submit youri-submit youri-submit-restricted youri-submit-proxy _find_config() { for (( i=1; i < COMP_CWORD; i++ )); do if [[ "${COMP_WORDS[i]}" == --config ]]; then config="--config ${COMP_WORDS[i+1]}" break fi done }