# shellcheck shell=bash _tldr() { local cur="${COMP_WORDS[COMP_CWORD]}" local prev="${COMP_WORDS[COMP_CWORD-1]}" local opts="-u -l -a -i -r -p -L -o -c -R -q -v -h \ --update --list --list-all --list-platforms --list-languages \ --info --render --clean-cache --gen-config --config-path --platform \ --language --offline --compact --no-compact --raw --no-raw --quiet \ --color --config --version --help" if [[ $cur == -* ]]; then mapfile -t COMPREPLY < <(compgen -W "$opts" -- "$cur") return 0 fi case $prev in -r|--render|--config) mapfile -t COMPREPLY < <(compgen -f -- "$cur");; --color) mapfile -t COMPREPLY < <(compgen -W "auto always never" -- "$cur");; -p|--platform) mapfile -t COMPREPLY < <(compgen -W "$(tldr --offline --list-platforms 2> /dev/null)" -- "$cur");; -L|--language) mapfile -t COMPREPLY < <(compgen -W "$(tldr --offline --list-languages 2> /dev/null)" -- "$cur");; *) mapfile -t COMPREPLY < <(compgen -W "$(tldr --offline --list-all 2> /dev/null)" -- "$cur");; esac } complete -o bashdefault -F _tldr tldr