From: "NARUSE, Yui" Date: 2004-11-08T05:02:54+09:00 Subject: [ruby-dev:24739] Re: NKF(nkf2)を1.8ブランチに入れました naruseです。 えっと、まず、RubyのNKFモジュールはただのnkfのラッパーです。 コード的にはオリジナルのnkfのソースをそのまま、 ruby/ext/nkf/nkf-utf8下に取り込んでいます。 そのため、コアの変換部分についての話は、 オリジナルの方に投げてくださるのがベターかもしれません。 http://sourceforge.jp/projects/nkf/ nkf@sourceforge.jp #文字化けがあったら〜という振りは、 #原因不明の文字化けがあったらとりあえず教えてね、 #という意図だったのでしょう・・・今考えると^^;; もっとも、行き着く先は同じですからどこで話すか以上の違いはありません。 堀川 久 wrote: > ・EUC-JP / Shift_JIS共通で、IRVの範囲で、いくつか変換されない文字があ >  ります。 "\x0e"(SI) "\x0f"(SO) "\x1b"(ESC)について 現在、nkfではこれらを真の意味での「制御文字」として処理しています。 } else if (c1 == SI) { shift_mode = FALSE; NEXT; } else if (c1 == SO) { shift_mode = TRUE; NEXT; } else if (c1 == ESC ) { if ((c1 = (*i_getc)(f)) == EOF) { そのため、Unicode系でない限り、これらは消滅してしまいます。 どう対処するのがよいと思われます? Shift_JIS / EUC-JP ではそのまま通すようにするべきなのかな。 > ・EUC-JPで補助漢字がサポートされていません。まぁ、これは別にいいかも。 現在nkfはJIS補助漢字をサポートしていませんね。 EUC-JP to Unicode変換ではサポートした方がいいのですかねぇ・・・。 > ・Shift_JISで、NEC選定IBM特殊漢字が、NEC選定の方へ変換されますが、 >  Windows界隈ではそうでしたっけ? これはバグな気がします。 テーブルが問題なのかな・・・? SI/SO/ESCの対処はすぐに出来そうですが、後の二つは時間がかかりそうです。 -- NARUSE, Yui DBDB A476 FDBD 9450 02CD 0EFC BCE3 C388 472E C1EA