_sqop() { local i cur prev opts cmd COMPREPLY=() if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then cur="$2" else cur="${COMP_WORDS[COMP_CWORD]}" fi prev="$3" cmd="" opts="" for i in "${COMP_WORDS[@]:0:COMP_CWORD}" do case "${cmd},${i}" in ",$1") cmd="sqop" ;; sqop,armor) cmd="sqop__subcmd__armor" ;; sqop,certify-userid) cmd="sqop__subcmd__certify__subcmd__userid" ;; sqop,change-key-password) cmd="sqop__subcmd__change__subcmd__key__subcmd__password" ;; sqop,dearmor) cmd="sqop__subcmd__dearmor" ;; sqop,decrypt) cmd="sqop__subcmd__decrypt" ;; sqop,encrypt) cmd="sqop__subcmd__encrypt" ;; sqop,extract-cert) cmd="sqop__subcmd__extract__subcmd__cert" ;; sqop,generate-key) cmd="sqop__subcmd__generate__subcmd__key" ;; sqop,help) cmd="sqop__subcmd__help" ;; sqop,inline-detach) cmd="sqop__subcmd__inline__subcmd__detach" ;; sqop,inline-sign) cmd="sqop__subcmd__inline__subcmd__sign" ;; sqop,inline-verify) cmd="sqop__subcmd__inline__subcmd__verify" ;; sqop,list-profiles) cmd="sqop__subcmd__list__subcmd__profiles" ;; sqop,merge-certs) cmd="sqop__subcmd__merge__subcmd__certs" ;; sqop,revoke-key) cmd="sqop__subcmd__revoke__subcmd__key" ;; sqop,sign) cmd="sqop__subcmd__sign" ;; sqop,update-key) cmd="sqop__subcmd__update__subcmd__key" ;; sqop,validate-userid) cmd="sqop__subcmd__validate__subcmd__userid" ;; sqop,verify) cmd="sqop__subcmd__verify" ;; sqop,version) cmd="sqop__subcmd__version" ;; sqop__subcmd__help,armor) cmd="sqop__subcmd__help__subcmd__armor" ;; sqop__subcmd__help,certify-userid) cmd="sqop__subcmd__help__subcmd__certify__subcmd__userid" ;; sqop__subcmd__help,change-key-password) cmd="sqop__subcmd__help__subcmd__change__subcmd__key__subcmd__password" ;; sqop__subcmd__help,dearmor) cmd="sqop__subcmd__help__subcmd__dearmor" ;; sqop__subcmd__help,decrypt) cmd="sqop__subcmd__help__subcmd__decrypt" ;; sqop__subcmd__help,encrypt) cmd="sqop__subcmd__help__subcmd__encrypt" ;; sqop__subcmd__help,extract-cert) cmd="sqop__subcmd__help__subcmd__extract__subcmd__cert" ;; sqop__subcmd__help,generate-key) cmd="sqop__subcmd__help__subcmd__generate__subcmd__key" ;; sqop__subcmd__help,help) cmd="sqop__subcmd__help__subcmd__help" ;; sqop__subcmd__help,inline-detach) cmd="sqop__subcmd__help__subcmd__inline__subcmd__detach" ;; sqop__subcmd__help,inline-sign) cmd="sqop__subcmd__help__subcmd__inline__subcmd__sign" ;; sqop__subcmd__help,inline-verify) cmd="sqop__subcmd__help__subcmd__inline__subcmd__verify" ;; sqop__subcmd__help,list-profiles) cmd="sqop__subcmd__help__subcmd__list__subcmd__profiles" ;; sqop__subcmd__help,merge-certs) cmd="sqop__subcmd__help__subcmd__merge__subcmd__certs" ;; sqop__subcmd__help,revoke-key) cmd="sqop__subcmd__help__subcmd__revoke__subcmd__key" ;; sqop__subcmd__help,sign) cmd="sqop__subcmd__help__subcmd__sign" ;; sqop__subcmd__help,update-key) cmd="sqop__subcmd__help__subcmd__update__subcmd__key" ;; sqop__subcmd__help,validate-userid) cmd="sqop__subcmd__help__subcmd__validate__subcmd__userid" ;; sqop__subcmd__help,verify) cmd="sqop__subcmd__help__subcmd__verify" ;; sqop__subcmd__help,version) cmd="sqop__subcmd__help__subcmd__version" ;; *) ;; esac done case "${cmd}" in sqop) opts="-h --debug --help version verify inline-verify list-profiles generate-key change-key-password revoke-key extract-cert update-key merge-certs certify-userid validate-userid sign encrypt decrypt armor dearmor inline-detach inline-sign help" if [[ ${cur} == -* || ${COMP_CWORD} -eq 1 ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 fi case "${prev}" in *) COMPREPLY=() ;; esac COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 ;; sqop__subcmd__armor) opts="-h --label --debug --help" if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 fi case "${prev}" in --label) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; *) COMPREPLY=() ;; esac COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 ;; sqop__subcmd__certify__subcmd__userid) opts="-h --no-armor --userid --with-key-password --no-require-self-sig --debug --help [KEYS]..." if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 fi case "${prev}" in --userid) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; --with-key-password) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; *) COMPREPLY=() ;; esac COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 ;; sqop__subcmd__change__subcmd__key__subcmd__password) opts="-h --no-armor --new-key-password --old-key-password --debug --help" if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 fi case "${prev}" in --new-key-password) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; --old-key-password) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; *) COMPREPLY=() ;; esac COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 ;; sqop__subcmd__dearmor) opts="-h --debug --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 ;; sqop__subcmd__decrypt) opts="-h --session-key-out --with-session-key --with-password --verifications-out --verify-with --verify-not-before --verify-not-after --with-key-password --debug --help [KEYS]..." if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 fi case "${prev}" in --session-key-out) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; --with-session-key) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; --with-password) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; --verifications-out) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; --verify-with) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; --verify-not-before) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; --verify-not-after) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; --with-key-password) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; *) COMPREPLY=() ;; esac COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 ;; sqop__subcmd__encrypt) opts="-h --no-armor --profile --as --with-password --sign-with --with-key-password --session-key-out --debug --help [CERTS]..." if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 fi case "${prev}" in --profile) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; --as) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; --with-password) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; --sign-with) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; --with-key-password) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; --session-key-out) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; *) COMPREPLY=() ;; esac COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 ;; sqop__subcmd__extract__subcmd__cert) opts="-h --no-armor --debug --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 ;; sqop__subcmd__generate__subcmd__key) opts="-h --no-armor --profile --signing-only --with-key-password --debug --help [USERIDS]..." if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 fi case "${prev}" in --profile) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; --with-key-password) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; *) COMPREPLY=() ;; esac COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 ;; sqop__subcmd__help) opts="version verify inline-verify list-profiles generate-key change-key-password revoke-key extract-cert update-key merge-certs certify-userid validate-userid sign encrypt decrypt armor dearmor inline-detach inline-sign 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 ;; sqop__subcmd__help__subcmd__armor) 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 ;; sqop__subcmd__help__subcmd__certify__subcmd__userid) 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 ;; sqop__subcmd__help__subcmd__change__subcmd__key__subcmd__password) 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 ;; sqop__subcmd__help__subcmd__dearmor) 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 ;; sqop__subcmd__help__subcmd__decrypt) 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 ;; sqop__subcmd__help__subcmd__encrypt) 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 ;; sqop__subcmd__help__subcmd__extract__subcmd__cert) 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 ;; sqop__subcmd__help__subcmd__generate__subcmd__key) 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 ;; sqop__subcmd__help__subcmd__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 ;; sqop__subcmd__help__subcmd__inline__subcmd__detach) 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 ;; sqop__subcmd__help__subcmd__inline__subcmd__sign) 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 ;; sqop__subcmd__help__subcmd__inline__subcmd__verify) 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 ;; sqop__subcmd__help__subcmd__list__subcmd__profiles) 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 ;; sqop__subcmd__help__subcmd__merge__subcmd__certs) 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 ;; sqop__subcmd__help__subcmd__revoke__subcmd__key) 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 ;; sqop__subcmd__help__subcmd__sign) 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 ;; sqop__subcmd__help__subcmd__update__subcmd__key) 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 ;; sqop__subcmd__help__subcmd__validate__subcmd__userid) 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 ;; sqop__subcmd__help__subcmd__verify) 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 ;; sqop__subcmd__help__subcmd__version) 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 ;; sqop__subcmd__inline__subcmd__detach) opts="-h --no-armor --signatures-out --debug --help" if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 fi case "${prev}" in --signatures-out) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; *) COMPREPLY=() ;; esac COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 ;; sqop__subcmd__inline__subcmd__sign) opts="-h --no-armor --as --with-key-password --debug --help [KEYS]..." if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 fi case "${prev}" in --as) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; --with-key-password) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; *) COMPREPLY=() ;; esac COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 ;; sqop__subcmd__inline__subcmd__verify) opts="-h --not-before --not-after --verifications-out --debug --help [CERTS]..." if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 fi case "${prev}" in --not-before) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; --not-after) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; --verifications-out) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; *) COMPREPLY=() ;; esac COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 ;; sqop__subcmd__list__subcmd__profiles) opts="-h --debug --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 ;; sqop__subcmd__merge__subcmd__certs) opts="-h --no-armor --debug --help [CERTS]..." 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 ;; sqop__subcmd__revoke__subcmd__key) opts="-h --no-armor --with-key-password --debug --help" if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 fi case "${prev}" in --with-key-password) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; *) COMPREPLY=() ;; esac COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 ;; sqop__subcmd__sign) opts="-h --no-armor --as --micalg-out --with-key-password --debug --help [KEYS]..." if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 fi case "${prev}" in --as) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; --micalg-out) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; --with-key-password) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; *) COMPREPLY=() ;; esac COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 ;; sqop__subcmd__update__subcmd__key) opts="-h --no-armor --signing-only --no-added-capabilities --with-key-password --merge-certs --debug --help" if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 fi case "${prev}" in --with-key-password) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; --merge-certs) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; *) COMPREPLY=() ;; esac COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 ;; sqop__subcmd__validate__subcmd__userid) opts="-h --addr-spec-only --validate-at --debug --help ..." if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 fi case "${prev}" in --validate-at) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; *) COMPREPLY=() ;; esac COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 ;; sqop__subcmd__verify) opts="-h --not-before --not-after --debug --help [CERTS]..." if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 fi case "${prev}" in --not-before) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; --not-after) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; *) COMPREPLY=() ;; esac COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 ;; sqop__subcmd__version) opts="-h --backend --extended --sop-spec --sopv --debug --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 ;; esac } if [[ "${BASH_VERSINFO[0]}" -eq 4 && "${BASH_VERSINFO[1]}" -ge 4 || "${BASH_VERSINFO[0]}" -gt 4 ]]; then complete -F _sqop -o nosort -o bashdefault -o default sqop else complete -F _sqop -o bashdefault -o default sqop fi