# watch(1) completion -*- shell-script -*- [[ $OSTYPE == *linux* ]] || return 1 _watch() { local cur prev words cword split _init_completion -s || return local offset=0 i for ((i = 1; i <= cword; i++)); do case ${words[i]} in --help | --version | -!(-*)h) return ;; --interval | -!(-*)n) ((i++)) continue ;; -*) continue ;; esac offset=$i break done if ((offset > 0)); then _command_offset $offset return fi case $prev in --differences | -!(-*)d) [[ $cur != -* ]] && COMPREPLY=($(compgen -W 'cumulative' -- "$cur")) return ;; --interval | -!(-*)n) return ;; esac $split && return if [[ $cur == -* ]]; then COMPREPLY=($(compgen -W '$(_parse_help "$1")' -- "$cur")) [[ ${COMPREPLY-} == *= ]] && compopt -o nospace return fi } && complete -F _watch watch # ex: filetype=sh