diff options
Diffstat (limited to 'completions/fio')
-rw-r--r-- | completions/fio | 90 |
1 files changed, 90 insertions, 0 deletions
diff --git a/completions/fio b/completions/fio new file mode 100644 index 0000000..f81a4da --- /dev/null +++ b/completions/fio @@ -0,0 +1,90 @@ +# fio(1) completion -*- shell-script -*- + +_fio() +{ + local cur prev words cword split + _init_completion -s || return + + case $prev in + --help | --version) + return + ;; + --debug) + local prefix= + [[ $cur == *,* ]] && prefix="${cur%,*}," + COMPREPLY=($(compgen -W "process file io mem blktrace verify + random parse diskutil job mutex profile time net rate compress + steadystate helperthread" -- "${cur##*,}")) + ((${#COMPREPLY[@]} == 1)) && COMPREPLY=(${COMPREPLY/#/$prefix}) + return + ;; + --output-format) + COMPREPLY=($(compgen -W "terse json json+ normal" -- "$cur")) + return + ;; + --terse-version) + COMPREPLY=($(compgen -W "2 3" -- "$cur")) + return + ;; + --cmdhelp) + # TODO more commands? + COMPREPLY=($(compgen -W "all" -- "$cur")) + return + ;; + --enghelp) + # TODO print ioengine help, or list available ioengines + # TODO engine,help arg + return + ;; + --eta) + COMPREPLY=($(compgen -W "always never auto" -- "$cur")) + return + ;; + --daemonize) + _filedir pid + return + ;; + --client) + _known_hosts_real -- "$cur" + return + ;; + --remote-config) + _filedir job + return + ;; + --idle-prof) + COMPREPLY=($(compgen -W "system percpu calibrate" -- "$cur")) + return + ;; + --inflate-log) + _filedir log + return + ;; + --trigger-file) + _filedir + return + ;; + --trigger | --trigger-remote) + compopt -o filenames + COMPREPLY=($(compgen -c -- "$cur")) + return + ;; + --aux-path) + _filedir -d + return + ;; + esac + + $split && return + + if [[ $cur == -* ]]; then + COMPREPLY=($(compgen -W '$(_parse_help "$1")' -- "$cur")) + [[ ${COMPREPLY-} == *= ]] && compopt -o nospace + return + fi + + _filedir job +} && + complete -F _fio fio + +# ex: filetype=sh |