# gprof(1) completion -*- shell-script -*- proc _gprof { var cur = '', prev = '', words = '', cword = '', split = '' _init_completion -s || return match $cur { with -A*|-C*|-J*|-p*|-P*|-q*|-Q*|-n*|-N*|-d* return with -S* set cur = $(cur:2) _filedir setglobal COMPREPLY = '( '"${COMPREPLY[@]/#/-S}" ) return with -O* set cur = $(cur:2) setglobal COMPREPLY = '( '$( compgen -P -O -W 'auto bsd 4.4bsd magic prof' \ -- "$cur" ) ) return } match $prev { with -I|--directory-path _filedir -d return with -R|--file-ordering|--external-symbol-table _filedir return with -w|--width|-k|-m|--min-count|-h|--help|-e|-E|-f|-F return with --file-format setglobal COMPREPLY = '( '$( compgen -W 'auto bsd 4.4bsd magic prof' \ -- "$cur" ) ) return } $split && return if [[ $cur == -* ]] { setglobal COMPREPLY = '( '$( compgen -W '--annotated-source --brief --exec-counts --file-info --directory-path --no-annotated-source --print-path --flat-profile --no-flat-profile --graph --no-graph --table-length= --separate-files --no-exec-counts --function-ordering --file-ordering --traditional --width= --all-lines --demangle --no-demangle --no-static --static-call-graph --ignore-non-functions -k --line --min-count= --time= --no-time= --external-symbol-table= --display-unused-functions --debug --help --file-format= --sum --version' -- "$cur" ) ) [[ $COMPREPLY == *= ]] && compopt -o nospace return } _filedir } && complete -F _gprof gprof # ex: ts=4 sw=4 et filetype=sh