パスワードを忘れた? アカウント作成
451177 journal

kubotaの日記: luit, EUC-JP, JIS X 0212

日記 by kubota

以前 ここで話題になった luit (アクセス拒否されてしまう?) だが、ためしてみると、EUC-JP における JIS X 0212 の扱いがおかしいという問題を発見した

GR 領域 (0xa0-0xff) ではなく、GL 領域 (0x21-0x7e) が使われてしまうのが問題らしい。一方、SS3 (0x8f) は G3 を GL にしか invoke してくれない。(EUC においては、SS3 は G3 を GR に invoke するために使われている)。

ちなみに、『インターネット時代の文字コード』の安岡孝一さんの記事によると、ISO 2022 において、SS2/SS3 はもともと G2/G3 を GL に invoke するコードだったのが、GL と GR の両方に invoke するというふうに変更されたらしい。おそらくこれは、EUC を ISO 2022 準拠にするための変更じゃないかと思っている。

というわけで、これに準拠するにはどうコードを書けばいいのかよくわからないけど、試してみたらうまくいったのでパッチを送った。が、そのあと、このパッチを使うと EUC-JP 中の JIS X 0201 カナを表示させようとすると luit が黙って終了してしまう (ユーザは終了したことにすぐには気付かない) という不具合が発生してしまった。いや、もとのままでも luit は JIS X 0201 カナをうまく扱えないという不具合があるのだが。

ちなみに、XFree86 4.2.0 のリリース後、さまざまなエンコーディングのサポートの開発が始まることが予定されている。そのメールには、文字幅問題についても特殊なシングルシフトコードをターミナルに送るという方法で対処してくれる、との話がある。今後に期待だ。

訂正 (2002/1/15): GL が 0x21-0xfe となっていた。正しくは、0x21-0x7e。

この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。
typodupeerror

アレゲはアレゲ以上のなにものでもなさげ -- アレゲ研究家

読み込み中...