# kcov(1) completion -*- shell-script -*- proc _kcov { local cur prev words cword split _init_completion -s -n : || return case (prev) { --pid|-p { _pids return } --sort-type|-s { setvar COMPREPLY = ''( $( compgen -W 'filename percent reverse lines uncovered' -- "$cur" ) ) return } --include-path|--exclude-path { _filedir return } --replace-src-path { if [[ "$cur" == ?*:* ]] { setvar cur = "${cur##*:}" _filedir } else { _filedir compopt -o nospace } return } --limits|-l { if [[ "$cur" == ?*,* ]] { setvar prev = "${cur%,*}" setvar cur = "${cur##*,}" setvar COMPREPLY = ''( $( compgen -P "$prev," -W "{0..100}" -- "$cur" ) ) } else { setvar COMPREPLY = ''( $( compgen -W "{0..100}" -- "$cur" ) ) compopt -o nospace } return } --title|-t|--include-pattern|--exclude-pattern|--path-strip-level { # argument required but no completions available return } } $split && return if [[ "$cur" == -* ]] { setvar COMPREPLY = ''( $( compgen -W '$( _parse_help "$1" --help )' -- "$cur" ) ) [[ $COMPREPLY == *= ]] && compopt -o nospace return } _filedir } && complete -F _kcov kcov # ex: ts=4 sw=4 et filetype=sh