[Message Prev][Message Next][Thread Prev][Thread Next][Message Index][Thread Index]

JUNET on Meadow1.00 and Meadow1.10



こんにちは。chiyu@ふくおか、といいます。

Meadow1.10をインストールしました。
今いろいろと設定の変更で苦しんでいるんですが
(w3が文字化けするよ〜(涙))、
とにかく一番びっくりしたことがあります。

Mule3(Meadow1.00)とMule4(Meadow1.10)の違いです。

結論から言うと、日韓混在文を保存する時のコード系は、
Meadow1.00ではjunetでよかったのですが、
Medadow1.10ではjunetは使えない、ということです。
iso-2022-jp-2やctextなどを使わないといけない、ということです。

Meadow1.00では、iso-2022-jpとeuc-koreaの混在したファイルを
C-x C-m c euc-korea <Enter> C-x C-f
で読めたんです。
ところが、Meadow1.10ではeuc-koreaを指定するとJIS部分が文字化け
したんです。
最初、Nana-gnusを使用している時に気づいたので、
Nana-gnusのバグかな?、と思っていたのですが、
どうもこれがMule3とMule4の違いに起因すると
やっと気付きました。

make-coding-system でコード系を定義する時に、
Mule4では safe-charsets という項目が加わっています。
どうもこれが厳密な解釈の原因ではないか、と思えます。
iso-2022-jpではこのsafe-charsetsが
(safe-charsets ascii japanese-jisx0208-1978 japanese-jisx0208
		  latin-jisx0201 japanese-jisx0212 katakana-jisx0201)
となっているため、新規バッファをjunetでファイルに保存しようとすると
韓国語の文字があるから文字コードを変えなさい、と
注意されるわけです。(これはこれで便利です。ワーイ。)

Meadow1.01でNana-gnus使用時に
(setq default-mime-charset 'euc-korea)
としていたのですが、これでは非MIMEな日本語メールが
Meadow1.10では読めなくなりました。
そこで、
(make-coding-system
 'ctext+kr 2 ?1
 "compound text with KSC5601(KSX1001) designated to G1 default"
 '((ascii t) (korean-ksc5601 t) nil nil
   nil ascii-eol ascii-cntl nil nil nil nil nil nil nil nil nil t)
 '((safe-charsets . t)))
として新しいコード系を作って、
(setq default-mime-charset 'ctext+kr)
とすれば、Meadow1.10でも非MIMEな日本語メール、韓国語メールが
読めるようになりました。

皆さん、気をつけましょう(爆)。

以上。失礼しました。
お元気で。
chiyu(赤羽伸之)