1234567891011121314151617181920212223242526 |
- # perf completion
- have perf &&
- _perf()
- {
- local cur cmd
- COMPREPLY=()
- _get_comp_words_by_ref cur prev
- cmd=${COMP_WORDS[0]}
- # List perf subcommands
- if [ $COMP_CWORD -eq 1 ]; then
- cmds=$($cmd --list-cmds)
- COMPREPLY=( $( compgen -W '$cmds' -- "$cur" ) )
- # List possible events for -e option
- elif [[ $prev == "-e" && "${COMP_WORDS[1]}" == @(record|stat|top) ]]; then
- cmds=$($cmd list --raw-dump)
- COMPREPLY=( $( compgen -W '$cmds' -- "$cur" ) )
- # Fall down to list regular files
- else
- _filedir
- fi
- } &&
- complete -F _perf perf
|