HTMLレンダラとしてLynxを使用してUTF-8文字を含むHTMLメールでEmacs GNUSを使用する方法

StackOverflow https://stackoverflow.com//questions/20048179

  •  26-12-2019
  •  | 
  •  

質問

GNU Emacs 24.2.1(ただし、emacsはemacsも動作しません)を使用し、Lynxを使用して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"))
.

しかし、UTF-8文字は正しく表示されません。たとえば、そのようなものが表示されます。

Es gibt \303\274ber 700 neue Top-Level-Domains.
.

このコマンドで簡単に解決できます:

(toggle-read-only)
(recode-region (point-min) (point-max) 'utf-8 'utf-8)
.

しかし、GNUSをUTF-8として一般的に解釈することは可能ですか?

(この質問はここでも答えずに尋ねられました。 http://lists.gnu.org/archive./html/info-gnus-english/2010-06/msg00006.html

役に立ちましたか?

解決

私は私の自己による答えを見つけました、ここでは、UTF-8でGNUのLynxを有効にするためのフルコード:

(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)
.

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top