Open HTML attachments externally in Mutt
You can do this with mutt's mime support.
In addition, you can use this with Autoview to denote two commands for viewing an attachment, one to be viewed automatically, the other to be viewed interactively from the attachment menu.
Essentially, you include two options in your mailcap
file1.
text/html; luakit '%s' &; test=test -n "$DISPLAY"; needsterminal;
text/html; lynx -dump %s; nametemplate=%s.html; copiousoutput;
The first entry tests that X
is running, and if it is, it hands the file to luakit. The default, however, is determined by the copiousoutput
tag, so it will be rendered in Mutt by lynx.
You will need these options in your .muttrc
:
auto_view text/html # view HTML automatically
alternative_order text/plain text/enriched text/html # save HTML for last
If you want to look at it in your browser, it is just a matter of hitting v to view the attached HTML and then m to send it to mailcap.
For convenience, I bind Enter to that function in muttrc
:
bind attach <return> view-mailcap
1. Note, I don't use lynx or luakit, so these options are indicative only.
Shamelessly reproduced [from this blog post](https://jasonwryan.com/blog/2012/05/12/mutt/)...
Related videos on Youtube
Comments
-
GeekPeek almost 2 years
I recently managed to set up my mailcap so that Mutt can show HTML e-mails in the message window:
# ~/.mailcap text/html; lynx -dump '%s' | more; nametemplate=%s.html; copiousoutput;
which is automated by:
# ~/.muttrc auto_view text/html
Although I think Lynx does a decent job on converting the HTML to text, sometimes this doesn't cut it and I would like to be able to open the HTML attachment in my web browser Luakit.
Is there a way to transparently do this? A good workflow for me would look like:
- open mail (Lynx converts it)
- see that it is too complicated for Lynx
- press v
- navigate to HTML attachment
- press Enter to open the mail in Luakit.
-
Admin almost 12 yearsThis doesn't work for you ?
text/html; luakit %s
besides, auto_view doens't matter in this case, since html are actually attachments
-
Thor almost 12 years
-
Thangamani J about 11 yearsDoes it really have to read
text/html; text/html; luakit ...
with the text/html repeated? -
Shruti almost 10 yearsIs there a way to do this while disabling the loading of external resources (for privacy reasons)?
-
jasonwryan almost 10 years@a3nm That all depends on the settings in the browser you hand off to...
-
Shruti almost 10 years@jasonwryan Yes... I'm looking for a way to invoke Firefox in a way that would disallow any external lookups.
-
jasonwryan almost 10 years@a3nm I don't know, but I suspect there are privacy extensions for that.
-
Shruti almost 10 years@jasonwryan Yes, but of course this only applies to mail loaded in mutt, not to all the browsing I do, so it isn't that easy to find something satisfactory...
-
reedstrm about 7 yearsInvoking flirefox from the commandline with a specific special profile is easy - that way you could have a private profile specifically for mail reading.
-
jchook over 5 yearslatest Wayback Machine snapshot of the
mutt-netscape
script -
haxpor over 4 years+1 This answer is the base I use. For mine, I just want to hook up with
firefox
, thus my first line in~./.mailcap
istext/html; [ $DISPLAY != "" ] && firefox %s &; needsterminal;
, second line is the same, and noauto_view
inmuttrc
as I prefer text-based.