_dotter() { local i cur prev opts cmd COMPREPLY=() cur="${COMP_WORDS[COMP_CWORD]}" prev="${COMP_WORDS[COMP_CWORD-1]}" cmd="" opts="" for i in ${COMP_WORDS[@]} do case "${cmd},${i}" in ",$1") cmd="dotter" ;; dotter,deploy) cmd="dotter__deploy" ;; dotter,gen-completions) cmd="dotter__gen__completions" ;; dotter,help) cmd="dotter__help" ;; dotter,init) cmd="dotter__init" ;; dotter,undeploy) cmd="dotter__undeploy" ;; dotter,watch) cmd="dotter__watch" ;; dotter__help,deploy) cmd="dotter__help__deploy" ;; dotter__help,gen-completions) cmd="dotter__help__gen__completions" ;; dotter__help,help) cmd="dotter__help__help" ;; dotter__help,init) cmd="dotter__help__init" ;; dotter__help,undeploy) cmd="dotter__help__undeploy" ;; dotter__help,watch) cmd="dotter__help__watch" ;; *) ;; esac done case "${cmd}" in dotter) opts="-g -l -d -v -q -f -y -p -h -V --global-config --local-config --cache-file --cache-directory --pre-deploy --post-deploy --pre-undeploy --post-undeploy --dry-run --verbose --quiet --force --noconfirm --patch --diff-context-lines --help --version deploy undeploy init watch gen-completions help" if [[ ${cur} == -* || ${COMP_CWORD} -eq 1 ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 fi case "${prev}" in --global-config) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; -g) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; --local-config) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; -l) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; --cache-file) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; --cache-directory) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; --pre-deploy) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; --post-deploy) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; --pre-undeploy) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; --post-undeploy) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; --diff-context-lines) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; *) COMPREPLY=() ;; esac COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 ;; dotter__deploy) opts="-g -l -d -v -q -f -y -p -h --global-config --local-config --dry-run --verbose --quiet --force --noconfirm --patch --help" if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 fi case "${prev}" in --global-config) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; -g) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; --local-config) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; -l) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; *) COMPREPLY=() ;; esac COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 ;; dotter__gen__completions) opts="-s -g -l -d -v -q -f -y -p -h --shell --to --global-config --local-config --dry-run --verbose --quiet --force --noconfirm --patch --help" if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 fi case "${prev}" in --shell) COMPREPLY=($(compgen -W "bash elvish fish powershell zsh" -- "${cur}")) return 0 ;; -s) COMPREPLY=($(compgen -W "bash elvish fish powershell zsh" -- "${cur}")) return 0 ;; --to) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; --global-config) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; -g) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; --local-config) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; -l) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; *) COMPREPLY=() ;; esac COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 ;; dotter__help) opts="deploy undeploy init watch gen-completions help" if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 fi case "${prev}" in *) COMPREPLY=() ;; esac COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 ;; dotter__help__deploy) opts="" if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 fi case "${prev}" in *) COMPREPLY=() ;; esac COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 ;; dotter__help__gen__completions) opts="" if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 fi case "${prev}" in *) COMPREPLY=() ;; esac COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 ;; dotter__help__help) opts="" if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 fi case "${prev}" in *) COMPREPLY=() ;; esac COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 ;; dotter__help__init) opts="" if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 fi case "${prev}" in *) COMPREPLY=() ;; esac COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 ;; dotter__help__undeploy) opts="" if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 fi case "${prev}" in *) COMPREPLY=() ;; esac COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 ;; dotter__help__watch) opts="" if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 fi case "${prev}" in *) COMPREPLY=() ;; esac COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 ;; dotter__init) opts="-g -l -d -v -q -f -y -p -h --global-config --local-config --dry-run --verbose --quiet --force --noconfirm --patch --help" if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 fi case "${prev}" in --global-config) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; -g) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; --local-config) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; -l) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; *) COMPREPLY=() ;; esac COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 ;; dotter__undeploy) opts="-g -l -d -v -q -f -y -p -h --global-config --local-config --dry-run --verbose --quiet --force --noconfirm --patch --help" if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 fi case "${prev}" in --global-config) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; -g) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; --local-config) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; -l) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; *) COMPREPLY=() ;; esac COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 ;; dotter__watch) opts="-g -l -d -v -q -f -y -p -h --global-config --local-config --dry-run --verbose --quiet --force --noconfirm --patch --help" if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 fi case "${prev}" in --global-config) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; -g) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; --local-config) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; -l) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; *) COMPREPLY=() ;; esac COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 ;; esac } if [[ "${BASH_VERSINFO[0]}" -eq 4 && "${BASH_VERSINFO[1]}" -ge 4 || "${BASH_VERSINFO[0]}" -gt 4 ]]; then complete -F _dotter -o nosort -o bashdefault -o default dotter else complete -F _dotter -o bashdefault -o default dotter fi