Hi, On Sat, Oct 13, 2007, Rocco Rutte wrote: > * Johannes Stezenbach [07-10-12 23:14:21 +0200] wrote: >> On Thu, Oct 11, 2007, Rocco Rutte wrote: > >>> Mutt currently tries to keep interoperability by assuming that non-f=f >>> aware clients (including mutt itself with $text_flowed unset) treat f=f >>> mails just like any other mail and leave the spaces alone. As a result, >>> non-f=f users won't notice the difference at all while f=f users still >>> benefit from all f=f mails in a thread. > >> Mutt currently does more than that: Even with $text_flowed=no it >> creates replies which are fit for $text_flowed=yes (forced >> $indent_string=">"). In itself this isn't _wrong_, but is different >> from what a non-f=f aware MUA would do, and from my perspective >> it is undesired behaviour. > > Contrary to the above, strictly speaking mutt isn't a non-f=f aware client. > With $text_flowed unset it well recognizes f=f, it just doesn't attempt to > declare it. > > Furthermore, trailing spaces are only important since f=f came up, so I > guess that most MUAs simply don't care about them if they don't know about > f=f. Though I can imagine some simply remove trailing spaces for no > particular technical reason... > >> I still think that my patch does the right thing. > > I think I see a problem with it. It removes the space between quotes and > text in the second hunk. I guess you're doing this because with > $indent_string defaulting to '> ' you'll end up with 2 spaces. However, > with $text_flowed set, s->prefix is only '>' so you'll remove that space > for f=f users, too making lines render as '>>>foo' instead of '>>> foo' > (which some earlier commit to rfc3676.c fixed).
I must confess I'm a bit confused at the moment as to what the desired behaviour is. So let's talk about this first. At the moment, with $text_flowed set, replies to non-flowed mails get ugly quoting with '>' instead of '> '. Mutt _displays_ such quoting as '> ', but to people with other MUAs it might look bad. I think to correct this behaviour, the forcing of prefix='>' at the start of _mutt_copy_message() must be removed. But I guess this was done there and not in rfc3676.c because mutt tries to handle quote levels in RFC 3676 way *even when replying to non-RFC 3676 mails*. IMHO mutt just shouldn't do this, then to problem would go away. Or it should do it correctly, i.e. use '> ' for the first level of quoting and '>' for further levels (which is a bit more work to implement that just forcing a fixed prefix). Do you agree? My initial problem is the contrary case, $text_flowed unset and replies to flowed mails. My opinion here is that mutt should honour $indent_string in this case. I think the reason it doesn't is "improved interoperability with format=flowed users" when they reply to the reply. However, as I explained before: > There's also a catch: If you're creating a format=flowed mail > as a reply to a format=fixed mail, then you cannot make any > assumptions about the text you are quoting. RFC 3676 doesn't spell > this out, but IMHO you must then delete all trailing spaces > from the quoted text to ensure that it will not be accidentally > be treated as flowed. Johannes