119625d8cSopenharmony_ci_my-app() { 219625d8cSopenharmony_ci local i cur prev opts cmd 319625d8cSopenharmony_ci COMPREPLY=() 419625d8cSopenharmony_ci cur="${COMP_WORDS[COMP_CWORD]}" 519625d8cSopenharmony_ci prev="${COMP_WORDS[COMP_CWORD-1]}" 619625d8cSopenharmony_ci cmd="" 719625d8cSopenharmony_ci opts="" 819625d8cSopenharmony_ci 919625d8cSopenharmony_ci for i in ${COMP_WORDS[@]} 1019625d8cSopenharmony_ci do 1119625d8cSopenharmony_ci case "${cmd},${i}" in 1219625d8cSopenharmony_ci ",$1") 1319625d8cSopenharmony_ci cmd="my__app" 1419625d8cSopenharmony_ci ;; 1519625d8cSopenharmony_ci my__app,help) 1619625d8cSopenharmony_ci cmd="my__app__help" 1719625d8cSopenharmony_ci ;; 1819625d8cSopenharmony_ci my__app,test) 1919625d8cSopenharmony_ci cmd="my__app__test" 2019625d8cSopenharmony_ci ;; 2119625d8cSopenharmony_ci my__app__help,help) 2219625d8cSopenharmony_ci cmd="my__app__help__help" 2319625d8cSopenharmony_ci ;; 2419625d8cSopenharmony_ci my__app__help,test) 2519625d8cSopenharmony_ci cmd="my__app__help__test" 2619625d8cSopenharmony_ci ;; 2719625d8cSopenharmony_ci *) 2819625d8cSopenharmony_ci ;; 2919625d8cSopenharmony_ci esac 3019625d8cSopenharmony_ci done 3119625d8cSopenharmony_ci 3219625d8cSopenharmony_ci case "${cmd}" in 3319625d8cSopenharmony_ci my__app) 3419625d8cSopenharmony_ci opts="-c -v -h --help test help" 3519625d8cSopenharmony_ci if [[ ${cur} == -* || ${COMP_CWORD} -eq 1 ]] ; then 3619625d8cSopenharmony_ci COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) 3719625d8cSopenharmony_ci return 0 3819625d8cSopenharmony_ci fi 3919625d8cSopenharmony_ci case "${prev}" in 4019625d8cSopenharmony_ci *) 4119625d8cSopenharmony_ci COMPREPLY=() 4219625d8cSopenharmony_ci ;; 4319625d8cSopenharmony_ci esac 4419625d8cSopenharmony_ci COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) 4519625d8cSopenharmony_ci return 0 4619625d8cSopenharmony_ci ;; 4719625d8cSopenharmony_ci my__app__help) 4819625d8cSopenharmony_ci opts="test help" 4919625d8cSopenharmony_ci if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then 5019625d8cSopenharmony_ci COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) 5119625d8cSopenharmony_ci return 0 5219625d8cSopenharmony_ci fi 5319625d8cSopenharmony_ci case "${prev}" in 5419625d8cSopenharmony_ci *) 5519625d8cSopenharmony_ci COMPREPLY=() 5619625d8cSopenharmony_ci ;; 5719625d8cSopenharmony_ci esac 5819625d8cSopenharmony_ci COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) 5919625d8cSopenharmony_ci return 0 6019625d8cSopenharmony_ci ;; 6119625d8cSopenharmony_ci my__app__help__help) 6219625d8cSopenharmony_ci opts="" 6319625d8cSopenharmony_ci if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then 6419625d8cSopenharmony_ci COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) 6519625d8cSopenharmony_ci return 0 6619625d8cSopenharmony_ci fi 6719625d8cSopenharmony_ci case "${prev}" in 6819625d8cSopenharmony_ci *) 6919625d8cSopenharmony_ci COMPREPLY=() 7019625d8cSopenharmony_ci ;; 7119625d8cSopenharmony_ci esac 7219625d8cSopenharmony_ci COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) 7319625d8cSopenharmony_ci return 0 7419625d8cSopenharmony_ci ;; 7519625d8cSopenharmony_ci my__app__help__test) 7619625d8cSopenharmony_ci opts="" 7719625d8cSopenharmony_ci if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then 7819625d8cSopenharmony_ci COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) 7919625d8cSopenharmony_ci return 0 8019625d8cSopenharmony_ci fi 8119625d8cSopenharmony_ci case "${prev}" in 8219625d8cSopenharmony_ci *) 8319625d8cSopenharmony_ci COMPREPLY=() 8419625d8cSopenharmony_ci ;; 8519625d8cSopenharmony_ci esac 8619625d8cSopenharmony_ci COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) 8719625d8cSopenharmony_ci return 0 8819625d8cSopenharmony_ci ;; 8919625d8cSopenharmony_ci my__app__test) 9019625d8cSopenharmony_ci opts="-d -c -h --help" 9119625d8cSopenharmony_ci if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then 9219625d8cSopenharmony_ci COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) 9319625d8cSopenharmony_ci return 0 9419625d8cSopenharmony_ci fi 9519625d8cSopenharmony_ci case "${prev}" in 9619625d8cSopenharmony_ci *) 9719625d8cSopenharmony_ci COMPREPLY=() 9819625d8cSopenharmony_ci ;; 9919625d8cSopenharmony_ci esac 10019625d8cSopenharmony_ci COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) 10119625d8cSopenharmony_ci return 0 10219625d8cSopenharmony_ci ;; 10319625d8cSopenharmony_ci esac 10419625d8cSopenharmony_ci} 10519625d8cSopenharmony_ci 10619625d8cSopenharmony_cicomplete -F _my-app -o bashdefault -o default my-app 107