On Wed, 25 May 2011 10:44:51 -0400, Austin Clements <amdragon@mit.edu> wrote: > May I suggest a slightly different way of looking at this that will > quell my inner parser? Instead of configuring a weird "query > fragment" like "and tag:unread" to be string-concatenated with the tag > query, configure a *filter* query like merely "tag:unread" that > narrows down what you'd like to be counted within the scope of a tag. > The implementations are hardly different---simply generate the query > "tag:<tag> and ( <filter> )"---but a filter is a well-formed query, > not some string fragment. Furthermore, the user can't get bitten by > precedence and wind up with a query that counts messages that don't > even have that tag. Good point, I attached an updated patch that implements this.