On Thu, Feb 07, 2019 at 09:44:25AM +1100, Cameron Simpson wrote: > On 06Feb2019 13:01, Chris Green <c...@isbd.net> wrote: > > On Wed, Feb 06, 2019 at 01:00:48PM +1100, Cameron Simpson wrote: > > > Scenario B: > > > If DHL really are sending HTML in a standalone text/plain body then > > > you've got 2 choices. > > > > > > The first is to act when you receive the email; if you're using procmail > > > or > > > something similar to file you email you could match these messages and > > > modify the Content-Type: header to say "text/html". > > > > > > The alternative is to match the message with mutt, and to set > > > display_filter > > > specially for this message. You could use your normal display_filter and > > > use > > > a message-hook to override it with the command from the mailcap ("lynx > > > -dump"). > > > > > OK, thanks, it's quite rare and, at the moment, only DHL notifications > > doing this that I actually want to see the content. > > Just further to the display_filter thing: I normally use a display_filter, > set to a personal script which goes: > > #!/bin/sh > # > # Mutt display filter, whose behaviour adjusts accoridng to some flags. > # - Cameron Simpson <c...@cskk.id.au> 29jan2017 > # > > if flag MUTT_ROT13 > then tr '[A-Z][a-z]' '[N-Z][A-M][n-z][a-m]' > else cat > fi \ > | if flag MUTT_UNTOPPOST > then untoppost > else cat > fi \ > | mutt-highlight > > The mutt-highlight is a sed script which turns *foo* into bold and _foo_ > into underlined. But the important thing here is the if statement: it > optionally runs the message body through some filters. For example, I've got > a mutt macro ^X to toggle the MUTT_ROT13 flag and redisplay the message. > > You could adopt such a scheme for your HTML issue (in fact, I'm going to do > that myself too): have an optional flag to decode the HTML using a pipeline > flavour of your mailcap unhtml line. Then bind a mutt keystroke to toggle > the flag and redisplay. My rot13 bindings go: > > set my_toggle_rot13="$my_push_wait_key=no<enter><shell-escape>flag ! > MUTT_ROT13 > -e flag MUTT_ROT13<enter>$my_pop_wait_key" > macro index \Cx "$my_toggle_rot13" 'toggle MUTT_ROT13' > macro pager \Cx "<exit>$my_toggle_rot13<display-message>" 'toggle > MUTT_ROT13' > > Just a thought. Source for any of the above is available. > That's just the sort of thing I was hoping for - "oh, look, there's some raw HTML...", a couple of keystrokes and it's converted.
I may well come back in a few days and ask to see the source for untoppost, the rest I can probably fathom out for myself. Thanks. -- Chris Green