秀丸エディタとEUC補助漢字(「繋がる」と「繫がる」)
繋 繫
IME2007(β版)で「つながる」を漢字変換すると、
左のように、二つの漢字候補が表示されます。それを拡大したものが上記の漢字です。片方の「繫がる」は「環境依存文字(Unicode)」と表示されます。このブログはUTF-8のため、問題なく、二つの漢字を表示することができます。しかし、例えば、この二つの漢字を秀丸(ver3.19)でEUC-JPの文字コードで保存しようとすると、次のような警告が表示されます。

「文字コード変換ができない文字が含まれているため、文字が失われる可能性があります」と。そのまま保存すると、「文字コード変換できない文字が含まれていたので、?マークや同義の文字などに変換して保存しました」というエラーメッセージが表示されます。その場では、何も変わっていないように見えるのですが、一度ファイルを閉じて、再び開くと分かります。「繫がる」が「?がる」に変わっています。
同様なことを、EmEditor(ver 4.13)でやってみると下記のようになります。

のような警告(「この文書は、保存用に選択されたエンコードで保存すると失われてしまうUnicode形式の文字を含んでいます。Unicodeの情報を保存するには、下の〔いいえ〕をクリックして、〔名前を付けて保存〕を選択し、〔エンコード〕から〔Unicode〕を選択してください。継続しますか?」)が表示されます。
さらに保存後は、左のように赤でハイライトされて表示されます。赤くなっているだけで、漢字は生きているように見えますが、ファイルを開きなおすと、「?」として保存されていることが分かります。しかし、実は、秀丸の方が劣っているとかいうことは全然なくて、例に出したバージョンが低すぎるためです。たとえば、秀丸ver. 4.14では、もっと親切なメッセージに変化しています。
左のように、「文字コード変換できない文字が含まれています。かまわずに保存しますか? 〔はい〕を押すと、変換できない文字は"?"などに置き換えて保存します。〔いいえ〕を押すと保存でずに変換できない文字へジャンプします。」と表示されます。これで、どの文字が引っかかって、エラーになっているのか発見しやすくなります。さらに、秀丸では、ver. 6.0になって、このunicode文字の「繫がる」もEUC-JPで保存できるように進化しています。もともと、この「繫がる」は、EUC-JPの中で3バイトを使って保存される補助漢字というもので、EUC-JPでも実装可能な漢字でした。ただ、補助漢字を実装したアプリケーション(後述するブラウザの分野を含めて)は非常に少ないです。ver. 6.0になって、秀丸もこの補助漢字に対応したとリリースノートにあります。
実際、秀丸のver. 6.0でEUC-JPでこれらの補助漢字を含むファイルは問題なく処理できるようになっています(なぜか私の環境では、ver. 4.14の時と同じ警告メッセージが表示されるのですが、恐らく、異なるバージョンの秀丸を一つの端末で稼働させているからでしょう。ファイルをバイナリエディターで開いてみれば、補助漢字も正しく保存されていることがわかります)。

バイナリエディターのプレビューが文字化けしているのは、このバイナリエディターが補助漢字に対応していないためです。補助漢字で表されている「繫」は「0x8F D4 DA」です。補助漢字は「0x8F」で必ず始まります。しかし、補助漢字に対応していないアプリケーションでは「0x8F」が理解不能なので、単純に無視し、「0xD4 DA」という2バイトの漢字として解釈しようとします。EUC-JPで「0xD4DA」とは「壓」(「圧」の旧字体)です。ちょうど、小学校一年生の私の息子が、ありとあらゆる文章の中の平仮名・カタカナだけを読むので、何の話をしているのか分からないような現象がここで発生しますが、理屈が分かれば怖くありません。
<<補助漢字をサポートしているアプリケーションは、実際のところ少ない。>>
この補助漢字(JIS X 0212-1990)は、天下の秀丸エディタがver. 6.0になってやっとサポートされたことからも分かりますように、サポートしているアプリケーションは、少ないです。
例えば、Firefoxではサポートしていますが、IEではIE7になってもサポートされていません。せっかく秀丸エディターでEUC-JPの補助漢字をサポートするようになっても、IEでは文字化けします。「繫がる」が「恕リがる」にIEでは文字化けします。さらに、同じ秀丸でも、補助漢字をサポートしていないバージョンで開くと、文字化けします(文字化けの仕方はIEとは異なり、「xs擇・觴」といように、後続する平仮名・タグの一部を含む「全面文字化け」になります。)。
各種ブラウザ上における補助漢字への対応状況・文字化けについては、本稿とは分けて、次回にしたいと思います。
| 固定リンク


コメント