Different "replying" modes in a MUA
Jan Kundrát <[email protected]> Fri, 04 Jan 2013 17:44:33 +0100
| Newsgroups | gmane.ietf.rfc822 |
|---|---|
| Message-ID | <[email protected]> |
Hi, I'm struggling to come up with the best approach for designing the "reply" feature in Trojitá. As far as I know, there's no single "best practices" document to follow (and many "XYZ considered harmful" ones and an interesting one about how Evolution works [1]). Here's what I'd like to do: - Always offer multiple ways to reply. These actions will be represneted by an expandable button (i.e. a button with an arrow on the right which performs the "reasonable thing" by default but allows you to click the arrow to see the other actions). - The rules for picking up the recipients will be the following: 1) If there's a List-Post header and its value is not set to "NO" (or an equivalent) and there's at least one mailto: URL in there, the "Reply to List" is enabled and listed as the default option. When user selects this action, all of the Sender, From, Reply-To, Cc and Bcc are ignored. 2) "Reply All" option is always available and will generate a list of recipients using the following rules: - All addresses in the message's From and Reply-To will be used in the "To" field - All addresses in the message's To will be in the Cc - All addresses in the message's Cc will be in the Cc - All addresses in the message's Bcc will be in the Bcc After this is complete, a list will be "sanitized": - Duplicate enteries in each To/Cc/Bcc are be removed - Addresses already in To are removed from Cc and Bcc - Addresses already in Cc are removed from Bcc The List-Post and the Sender headers are ignored when doing the Reply-All thing. The "Reply All" is the second candidate for a default (i.e. the default when "Reply List" is not available). 3) "Private Reply" option is always available and produces a message with the following recipient(s) in the "To" field: - If the message contains a Reply-To, each of those which are at the same time *not* listed in any List-Post addresses are used. If the resulting set is non-empty, the From header is ignored. This means that any address in the Reply-To which is also listed in the List-Post is silenty ignored and anything not in the List-Post is used. - The Sender header is always ignored. - If the recipients list is empty at this point, everything from the From field is used. - If the resulting set contains more than one address, the duplicates are eliminated. I am very interested in hearing what you think about this scheme. I realize that this is a topic with a huge potential for a good flame, and I suspect there are people who have very different opinions as to what is best. Despite that, I'll be happy to hear what issues are lurking in the algorithm I describe and what drawbacks I'm eniterly missing. Please also feel free to point me to any existing discussion as long as it's different from [1], [2] and [3] which I've read already. When the discussion settles, I plan to impleemnt the outcome in Trojitá (along with a test case with plenty of examples matching real-world scenarios). Thanks for your help! With kind regards, Jan [1] http://david.woodhou.se/reply-to-list.html [2] http://www.unicom.com/pw/reply-to-harmful.html [3] http://woozle.org/~neale/papers/reply-to-still-harmful.html -- Trojitá, a fast Qt IMAP e-mail client -- http://trojita.flaska.net/ _______________________________________________ ietf-822 mailing list [email protected] https://www.ietf.org/mailman/listinfo/ietf-822