I think it'd be worth trying to solve that. Could we look for
false mhbuild directives and escape them if not already escaped?
I think it would be challenging; the code that does that is the regular
MIME parsing code. Also, the syntax is that if it's not something that
is recognized after the "#", then it's a content-type.
Challenging but I think it would be possible.
It's not the pseudo-header, it's the mhbuild directives. "attach"
users can't view/modify them now. This would be a benefit, and
though I have cured myself of the urge to look at them, I would if
I could.
Well, that's what I was thinking with #attach; that would give you the
benefits of attach (picking the MIME type and automatically adding
the right disposition).
Let me add that being able to view/modify the mhbuild directives
inserted by attach would be a very, very small benefit. I don't
even think about it any more.
If we're going to address that, I think we should step back and
consider whether some other approach would make sense. I don't
think adding more directive types just to simplify the user
interface is a good idea.
Well, I'm not completely wedded to this idea; that's why I asked for
feedback. What do you think we should do instead?
I just realized that I misunderstood something: "-nodirectives"
means "don't process directives", not something else that I thought.
So, would this work:
In WhatNow?
- If you run "mime", run mhbuild on the draft.
- If you "attach", add the appropriate mhbuild directive. Refuse if
if there is a MIME-Version header. Optionally, run "mime" when
you're done attaching if you want to see/edit what mhbuild did.
In send(1):
- If there were any attach calls (Nmh-Attachment header), run "mime"
if there isn't a MIME-Version header.
In post(8):
- Run "mhbuild -auto -nodirectives".
To deal with the false directives when using attach:
WhatNow could look for any lines that begin with # during
the first call to "attach", and warn or refuse. Those who
use # for replied-to text would have to find something else.
Or we could get more sophisticated, back to the "challenging"
aspect above.
This is where we want to end up, right:
1) Run mhbuild -directives if the draft has directives and
doesn't have false directives.
2) Always run mhbuild -auto -nodirectives.
At the cost of arcane-ness, which would increase the likelihood
of confusion of text with an mhbuild directive.
More arcane than the existing syntax? :-)
My point was that #attach is less arcane, I didn't say that clearly.
It's therefore more likely to get confused with text that isn't
intended to be a directive.
David
_______________________________________________
Nmh-workers mailing list
Nmh-workers(_at_)nongnu(_dot_)org
https://lists.nongnu.org/mailman/listinfo/nmh-workers