Comment utiliser Emacs Gnus sur des mails HTML contenant des caractères UTF-8 avec Lynx en tant que rendu HTML CORRECTY?
Question
J'utilise GNU Emacs 24.2.1 (mais sur JAM NE EMACS ne fonctionne pas aussi) avec GNUS V5.13 et l'a configuré comme suit pour utiliser Lynx pour formater les mails HTML:
(setq 'mm-text-html-renderer 'lynx)
(setcdr (assoc 'lynx mm-text-html-renderer-alist)
'(mm-inline-render-with-stdin
nil "lynx" "-dump" "-force_html" "-stdin" "-display_charset=UTF-8"))
Mais les caractères UTF-8 ne sont pas affichés correctement, par exemple, je vois quelque chose comme ça:
Es gibt \303\274ber 700 neue Top-Level-Domains.
Il peut facilement être résolu avec ces commandes:
(toggle-read-only)
(recode-region (point-min) (point-max) 'utf-8 'utf-8)
Mais est-il possible d'obtenir GNUS d'interpréter la sortie Lynx en général comme UTF-8?
(Cette question a également été posée sans réponses ici: http://lists.gnu.org/archive/html/info-gnus-english/2010-06/msg00006.html )
La solution
J'ai trouvé une réponse de moi-même, ici Code complet pour activer Lynx en Gnus avec UTF-8:
(require 'mm-view)
(setq mm-text-html-renderer 'lynx)
(setcdr (assoc 'lynx mm-text-html-renderer-alist)
'(mm-inline-render-with-stdin
nil "lynx" "-dump" "-force_html" "-stdin" "-display_charset=UTF-8"))
(defvar mm-insert-inline-use-utf-8 nil)
(defadvice mm-insert-inline (around mm-insert-inline-utf-8)
(let ((x (point)))
(prog1 (progn ad-do-it)
(when mm-insert-inline-use-utf-8
(decode-coding-region x (point-max) 'utf-8)))))
(ad-activate 'mm-insert-inline)
(defadvice mm-inline-text-html (around mm-inline-text-html-utf-8)
(let ((mm-insert-inline-use-utf-8 t))
ad-do-it))
(ad-activate 'mm-inline-text-html)
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow