# postcat(1)
#
comp_include _filedir _get_cword


_postcat()
{
    local cur prev pval len idx qfile

    cur=`_get_cword`
    prev=${COMP_WORDS[COMP_CWORD-1]}

    if [[ $cur == '-' ]]; then
        COMPREPLY=(-c -q -v)
        return 0
    fi
    if [[ $prev == '-c' ]]; then
        _filedir -d
        return 0
    fi

    qfile=0
    for idx in ${COMP_WORDS[@]}; do
        [[ "$idx" = -q ]] && qfile=1 && break
    done
    if [[ $qfile == 1 ]]; then
        len=${#cur}
        idx=0
        for pval in $( mailq | \
            sed -e '1d; $d; /^[^0-9A-Z]\|^$/d; s/[* !].*$//' ); do
            if [[ "$cur" == "${pval:0:$len}" ]]; then
                COMPREPLY[$idx]=$pval
                idx=$(($idx+1))
            fi
        done
        return 0
    else
        _filedir
        return 0
    fi
}
_postcat
