_rsdocs2docset() { local i cur prev opts cmds COMPREPLY=() cur="${COMP_WORDS[COMP_CWORD]}" prev="${COMP_WORDS[COMP_CWORD-1]}" cmd="" opts="" for i in ${COMP_WORDS[@]} do case "${i}" in rsdocs2docset) cmd="rsdocs2docset" ;; RsDoc2Docset) cmd+="_RsDoc2Docset" ;; *) ;; esac done case "${cmd}" in rsdocs2docset) opts=" -i -n -h -V --rsdoc --name --help --version " if [[ ${cur} == -* || ${COMP_CWORD} -eq 1 ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) ) return 0 fi case "${prev}" in --rsdoc) COMPREPLY=("") return 0 ;; -i) COMPREPLY=("") return 0 ;; --name) COMPREPLY=("") return 0 ;; -n) COMPREPLY=("") return 0 ;; *) COMPREPLY=() ;; esac COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) ) return 0 ;; esac } complete -F _rsdocs2docset -o bashdefault -o default rsdocs2docset