diff options
Diffstat (limited to 'completions/_cal')
-rw-r--r-- | completions/_cal | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/completions/_cal b/completions/_cal new file mode 100644 index 0000000..1eec267 --- /dev/null +++ b/completions/_cal @@ -0,0 +1,38 @@ +# cal(1) completion -*- shell-script -*- + +# Use of this file is deprecated on Linux. Upstream completion is +# available in util-linux >= 2.23, use that instead. + +_cal() +{ + local cur prev words cword + _init_completion || return + + case $prev in + -m) + if [[ $OSTYPE == *bsd* ]]; then + COMPREPLY=($(compgen -W '{1..12}' -- "$cur")) + return + fi + ;; + -s) + [[ $OSTYPE == *bsd* ]] && return + ;; + -A | -B | -d | -H) + return + ;; + esac + + if [[ $cur == -* ]]; then + local opts=$(_parse_help "$1") + COMPREPLY=($(compgen -W '${opts:-$(_parse_usage "$1")}' -- "$cur")) + return + fi + + local args + _count_args + ((args == 1)) && COMPREPLY=($(compgen -W '{1..12}' -- "$cur")) +} && + complete -F _cal cal ncal + +# ex: filetype=sh |