[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: w3m-output-coding-system
- From: ARISAWA Akihiro <ari@xxxxxxxxxxxxx>
- Date: Thu, 20 Aug 2009 20:21:27 +0900
- X-ml-name: emacs-w3m
- X-mail-count: 11019
- References: <E1MdZIz-0000wj-Q7@etlken> <20090819.115751.259544237.shirai.hideyuki@xxxxxxxxxxx> <87prastqea.fsf@xxxxxxxxxxxxxxxxxxxxxxxxxx> <20090819.141030.251925445.shirai.hideyuki@xxxxxxxxxxx> <87fxboqfot.fsf_-_@xxxxxxxxxxxxxxxxxxxxxxxxxx> <20090820.110850.69841728.shirai.hideyuki@xxxxxxxxxxx>
Hideyuki SHIRAI (白井秀行) writes:
>> w3m-output-coding-system を utf-8 にしたいと思います。
> 賛成です。
どうも。
判定方法はもうちょっと考えてみます。
>> ついでに、Mule-UCS を利用時も utf-8 にしちゃおうかと思うのですが、
>> 何か問題あります?
> いままで non utf-8 で使っていた人が utf-8 になると『テーブルの枠
> がずれる』という問題は発生すると思うのですが、根本的には大丈夫だ
> と思います。Meadow だとずっとその環境だし。
mule-unicode-XXXX-YYYY が半角幅で表示されない環境でしょうか?
ところで、w3m に East Asian Ambiguous パッチがあたった環境だと、
Emacs22 以前では罫線が二重に出ちゃいますねえ。
デフォルトは以下のようにしたくなってきました(^^;
(defcustom w3m-use-symbol
(and (featurep 'mule)
(eq w3m-type 'w3m-m17n)
(not (eq w3m-output-coding-system 'utf-8)))
> この方法は初めて見ました。ある意味すげ〜。
もうちょっと頑張ってみました。
(defun validate-utf-8 (&optional lang)
(let ((text (condition-case nil
(eval (get-language-info
(or lang current-language-environment)
'sample-text))
(error nil)))
converted)
(if text
(or (string= (setq converted (decode-coding-string
(encode-coding-string text 'utf-8)
'utf-8))
text)
(let ((coding (car (get-language-info
(or lang current-language-environment)
'coding-system))))
(and coding
(string= (encode-coding-string converted coding)
(encode-coding-string text coding)))))
t)))
これで GNU Emacs ではだいたい期待通りの判定ができます。
- Emacs23 は全て t
- Emacs22 は Vietnamese, Tibetan, Thai, Ethiopic といった mule-utf-8 で
未対応の言語のみ nil
- Emacs21.4 は Vietnamese, Tibetan, Thai, Korean, Japanese, Ethiopic,
Cyrillic-ALT, Cyrillic-KOI8, Chinese-BIG5, Chinese-GB で nil
(Cyrillic-* が残念なところ)
- Mule-UCS 環境では Vietnamese, Tibetan, Chinese-BIG5, Chinese-GB が nil
Vietnamese と Chinese-* は unicode-basic-translation-charset-order-list
が適宜設定されていれば t
Emacs-21.2 は unify-8859-on-encoding-mode が無いので、nil となってしまう
言語が結構ありますが、まあいいですよね。
XEmacs は環境が無いので不明です。
さて、これを emacs-w3m に組み込んでよいものか(^^;
w3m-search-engine-alist の utf-8 判定にも使えるとは思いますが。
cf. [emacs-w3m:10240]
TSUCHIYA Masatoshi writes:
> [emacs-w3m:10419] も見てやって頂けませんか?
>
> 基本的に,CCS が異なっていて,かつ,往復変換できない場合は全て問題なんだ
> と思います.
UTF-Translate-CJK モードは、日本語で使うには utf-translate-cjk-unicode-range
を設定しないと使い物にならないんですよね。設定されてない状態だと
(A) iso-2022-7bit-ss2 だと UTF-8 のページが化ける [emacs-w3m:07166]
(B) utf-8 だと legacy encoding なページで post できない [emacs-w3m:08558]
と、utf-8 <=> legacy encoding の変換が入るとどうにもならない…。
--
有沢 明宏