_hyperfine() { 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 "$1") cmd="hyperfine" ;; *) ;; esac done case "${cmd}" in hyperfine) opts="-h -V -w -m -M -r -s -p -c -P -D -L -S -N -i -u -n --help --version --warmup --min-runs --max-runs --runs --setup --prepare --cleanup --parameter-scan --parameter-step-size --parameter-list --style --shell --ignore-failure --time-unit --export-asciidoc --export-csv --export-json --export-markdown --export-orgmode --show-output --output --command-name --min-benchmarking-time --debug-mode ..." if [[ ${cur} == -* || ${COMP_CWORD} -eq 1 ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 fi case "${prev}" in --warmup) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; -w) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; --min-runs) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; -m) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; --max-runs) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; -M) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; --runs) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; -r) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; --setup) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; -s) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; --prepare) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; -p) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; --cleanup) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; -c) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; --parameter-scan) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; -P) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; --parameter-step-size) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; -D) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; --parameter-list) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; -L) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; --style) COMPREPLY=($(compgen -W "auto basic full nocolor color none" -- "${cur}")) return 0 ;; --shell) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; -S) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; --time-unit) COMPREPLY=($(compgen -W "millisecond second" -- "${cur}")) return 0 ;; -u) COMPREPLY=($(compgen -W "millisecond second" -- "${cur}")) return 0 ;; --export-asciidoc) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; --export-csv) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; --export-json) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; --export-markdown) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; --export-orgmode) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; --output) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; --command-name) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; -n) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; --min-benchmarking-time) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; *) COMPREPLY=() ;; esac COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 ;; esac } complete -F _hyperfine -o bashdefault -o default hyperfine