diff options
Diffstat (limited to '')
-rw-r--r-- | completions/postsuper | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/completions/postsuper b/completions/postsuper new file mode 100644 index 0000000..559449a --- /dev/null +++ b/completions/postsuper @@ -0,0 +1,56 @@ +# postsuper(1) completion -*- shell-script -*- + +_postsuper() +{ + local cur prev words cword + _init_completion || return + + local pval len + + case $prev in + -c) + _filedir -d + return + ;; + -[dr]) + len=${#cur} + for pval in ALL $(mailq 2>/dev/null | + command sed -e '1d; $d; /^[^0-9A-Z]/d; /^$/d; s/[* !].*$//'); do + if [[ $cur == "${pval:0:len}" ]]; then + COMPREPLY+=($pval) + fi + done + return + ;; + -h) + len=${#cur} + for pval in ALL $(mailq 2>/dev/null | + command sed -e '1d; $d; /^[^0-9A-Z]/d; /^$/d; s/[* ].*$//; /!$/d'); do + if [[ $cur == "${pval:0:len}" ]]; then + COMPREPLY+=($pval) + fi + done + return + ;; + -H) + len=${#cur} + for pval in ALL $(mailq 2>/dev/null | + command sed -e '1d; $d; /^[^0-9A-Z]/d; /^$/d; /^[0-9A-Z]*[* ]/d; s/!.*$//'); do + if [[ $cur == "${pval:0:len}" ]]; then + COMPREPLY+=($pval) + fi + done + return + ;; + esac + + if [[ $cur == -* ]]; then + COMPREPLY=($(compgen -W '$(_parse_help "$1")' -- "$cur")) + return + fi + + COMPREPLY=($(compgen -W 'hold incoming active deferred' -- "$cur")) +} && + complete -F _postsuper postsuper + +# ex: filetype=sh |