comparison lisp/gnus/mm-decode.el @ 110708:4c31586ca1ca

Merge changes made in Gnus trunk. shr.el: Start implementation. shr.el: Continue implementation. gnus-gravatar.el (gnus-gravatar-insert): Adjust character where we should go backward. shr.el: Minimally useful state achieved. mm-decode.el (mm-text-html-renderer): Switch to using shr.el for HTML rendering. shr.el: (shr-insert): Add a newline after every picture before text. gnus.texi (Splitting Mail): Really fix the @ref syntax. shr.el (shr-add-font): Use overlays for combining faces. shr.el (shr-add-font): Use overlays for combining faces. shr.el (shr-insert): Pass upwards the text start point. gnus-util.el: Reintroduce multiple completion functions.
author Katsumi Yamaoka <yamaoka@jpl.org>
date Sun, 03 Oct 2010 00:33:27 +0000
parents 2b8ece636433
children 0defef1647a5
comparison
equal deleted inserted replaced
110707:17914d74ccf4 110708:4c31586ca1ca
103 id) 103 id)
104 `(list ,buffer ,type ,encoding ,undisplayer 104 `(list ,buffer ,type ,encoding ,undisplayer
105 ,disposition ,description ,cache ,id)) 105 ,disposition ,description ,cache ,id))
106 106
107 (defcustom mm-text-html-renderer 107 (defcustom mm-text-html-renderer
108 (cond ((executable-find "w3m") 'gnus-article-html) 108 (cond ((fboundp 'libxml-parse-html-region) 'mm-shr)
109 ((executable-find "w3m") 'gnus-article-html)
109 ((executable-find "links") 'links) 110 ((executable-find "links") 'links)
110 ((executable-find "lynx") 'lynx) 111 ((executable-find "lynx") 'lynx)
111 ((locate-library "w3") 'w3) 112 ((locate-library "w3") 'w3)
112 ((locate-library "html2text") 'html2text) 113 ((locate-library "html2text") 'html2text)
113 (t nil)) 114 (t nil))
1672 (mm-with-unibyte-buffer 1673 (mm-with-unibyte-buffer
1673 (mm-insert-part handle) 1674 (mm-insert-part handle)
1674 (and (eq (mm-body-7-or-8) '7bit) 1675 (and (eq (mm-body-7-or-8) '7bit)
1675 (not (mm-long-lines-p 76)))))) 1676 (not (mm-long-lines-p 76))))))
1676 1677
1678 (defun mm-shr (handle)
1679 (let ((article-buffer (current-buffer)))
1680 (unless handle
1681 (setq handle (mm-dissect-buffer t)))
1682 (shr-insert-document
1683 (mm-with-part handle
1684 (libxml-parse-html-region (point-min) (point-max))))))
1685
1677 (provide 'mm-decode) 1686 (provide 'mm-decode)
1678 1687
1679 ;;; mm-decode.el ends here 1688 ;;; mm-decode.el ends here