From WTFwiki
Jump to navigation Jump to search

Render HTML email when there's no text/plain alternative

If there's no text/plain version of an email component, mutt defaults to just rendering the html, regardless of the mailcap file.

To make it do something more useful:


text/html; lynx -force_html -dump %s ; copiousoutput


auto_view text/html
alternative_order text/plain

One downside of this, is that lynx no longer can run interactively (you can't follow links from a html email). Instead lynx will print out a references section at the bottom with all the embedded links.

More info can be found at

Open HTML mails in a browser on another machine

1. On your mutt machine:

1.1. Generate passwordless ssh key (don't worry we'll limit the access):

ssh-keygen -f ~/.ssh/html_mail_key

1.2. Add to .muttrc:

macro pager o "v/html<enter>|ssh -i ~/.ssh/html_mail_key MACHINE<enter>q" \
        "View HTML mail in Firefox on MACHINE"

where MACHINE is your browser machine name. I've chosen **o** as the keybinding here.

2. On your browser machine:

2.1. Add to $HOME/.ssh/authorized_keys:

command="/home/yourname/bin/" <key>

Where <key> is the stuff from ~/.ssh/ on the mutt machine.

2.2. Create $HOME/bin/


cat >/tmp/last_html_mail.html
DISPLAY=:0 firefox /tmp/last_html_mail.html

2.3. chmod +x $HOME/bin/

That's it. Add also "unset wait_key" to your .muttrc if the extra keypress annoys you.