#compdef postsuper _postfix_queue_id() { compadd ${${(M)${(f)"$(postqueue -p)"}:#(#s)([0-9A-F]##)*}/(#s)(#b)([0-9A-F]##)*/$match[1]} } case $service in (postsuper) _arguments -C \ '-p[purge old tempfiles]' \ '-s[structure check and repair]' \ '-v[verbose]' \ '-c[configdir]:config dir:_files -/' \ '-d[delete]:queue id:_postfix_queue_id' \ '-h[hold]:queue id:_postfix_queue_id' \ '-H[release]:queue id:_postfix_queue_id' \ '-r[requeue]:queue id:_postfix_queue_id' \ '1:queue:(hold incoming active deferred)' ;; esac