code.gitea.io/gitea@v1.21.7/contrib/autocompletion/bash_autocomplete (about) 1 #! /bin/bash 2 # Heavily inspired by https://github.com/urfave/cli 3 4 _cli_bash_autocomplete() { 5 if [[ "${COMP_WORDS[0]}" != "source" ]]; then 6 local cur opts base 7 COMPREPLY=() 8 cur="${COMP_WORDS[COMP_CWORD]}" 9 if [[ "$cur" == "-"* ]]; then 10 opts=$( ${COMP_WORDS[@]:0:$COMP_CWORD} ${cur} --generate-bash-completion ) 11 else 12 opts=$( ${COMP_WORDS[@]:0:$COMP_CWORD} --generate-bash-completion ) 13 fi 14 COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) ) 15 return 0 16 fi 17 } 18 19 if [ -z "$PROG" ] && [ ! "$(command -v gitea &> /dev/null)" ] ; then 20 complete -o bashdefault -o default -o nospace -F _cli_bash_autocomplete gitea 21 elif [ -z "$PROG" ]; then 22 complete -o bashdefault -o default -o nospace -F _cli_bash_autocomplete ./gitea 23 complete -o bashdefault -o default -o nospace -F _cli_bash_autocomplete "$PWD/gitea" 24 else 25 complete -o bashdefault -o default -o nospace -F _cli_bash_autocomplete "$PROG" 26 unset PROG 27 fi 28 29 30