Stop puzzling what those tags mean! Stop trying to decipher
those html entities!
Try using the fabulous Vilistextum for converting your html mail
into readable ASCII!
For the time being, I know how to convert HTML mails for mutt,
Gnus 5.8.8 and Gnus 5.10.
Instructions for other mail reader are welcome.
text/html; vilistextum %s - ; copiousoutput
And this in your .muttrc:
auto_view text/html
;; prefer to show plain text over markup for multipart/alternative
(setq mm-discouraged-alternatives (append mm-discouraged-alternatives
'("text/html" "text/richtext")))
;; add buttons and emphasize for html MIME parts
(add-to-list 'gnus-buttonized-mime-types '"text/html")
(add-to-list 'gnus-article-treat-types "text/html")
(add-to-list 'mm-text-html-renderer-alist
'(vilistextum mm-inline-render-with-file nil
"vilistextum" "-l" "-r" "-c" "-s" file "-"))
(add-to-list 'mm-text-html-washer-alist
'(vilistextum mm-inline-wash-with-file nil
"vilistextum" "-l" "-r" "-c" "-s" file "-"))
(setq mm-text-html-renderer 'vilistextum)
;; ---------------------------------------------------------------------
;; prefer to show plain text over markup for multipart/alternative
(setq mm-discouraged-alternatives (append mm-discouraged-alternatives
'("text/html" "text/richtext")))
;; adapted from Mark Thomas (swoon@bellatlantic.net)
;; use external program to view inline HTML
(when t ;; change to nil to comment out
(let ((old-text-html-test (assoc "text/html" mm-inline-media-tests))
(new-text-html-test '("text/html"
my:gnus-html2text
(lambda (handle)
(fboundp 'my:gnus-html2text)))))
(if old-text-html-test
(setcdr old-text-html-test (cdr new-text-html-test))
(setq mm-inline-media-tests (cons new-text-html-test
mm-inline-media-tests)))))
;; function to call to handle text/html attachments
(defun my:gnus-html2text (handle)
(let (text)
(with-temp-buffer
(mm-insert-part handle)
(save-window-excursion
(my:html2text-region (point-min) (point-max))
(setq text (buffer-string))))
(mm-insert-inline handle text)))
(defun my:html2text-region-vilistextum (min max)
"Replace the region with the result of running vilistextum on it. "
(interactive "r")
;; vilistextum accepts html on stdin
(call-process-region min max "vilistextum" t t t "-clrs" "-" "-"))
(defalias 'my:html2text-region 'my:html2text-region-vilistextum)
;; ---------------------------------------------------------------------