文字コードに思う

IIJ 技術研究所
山本和彦
インターネットマガジン 2001年9月号

私は、Mew というフリーのメールリーダを作り続けて、足掛け 7 年になる。Mew のプラットフォームとなっている Emacs というエディタが、数多くの文字コードを扱う機能を提供しているおかげで、Mew でも様々な文字コードを使いメールをやり取りできる。このためか、Mew は日本に限らず世界各国で使われている。

昔から私は、多くの文字を持つ言語に慣れていたし、また JIS X 0208 から派生した ISO-2022-JP、EUC-JP、Shift_JIS といった文字コードが混在する複雑な環境も理解していた。西洋の文字コードは、東洋の文字コードに比べて文字数が少ないため分かり易い。実際、知りうる限りの文字コードを Mew でサポートし、経験を積んでいたので、もう文字コードについて学ぶべきことはそんなに多くないと思っていた。

そんな考えを根底から覆す電子メールを、ドイツの Mew ユーザから受け取った。アルファベットにアクセントの付くドイツ文字は、ISO-8859-1 という文字コードで表現できる。ドイツ語を扱うためには、ISO-8859-1 をサポートしていれば十分なはずである。しかし、そのドイツ人は、ルーマニアに住んでいるドイツ人とメールのやり取りをする際に、ISO-8859-2 も使いたいという。

確かにドイツでは、ISO-8859-1 が利用されている。一方、ルーマニアではルーマニア文字を表現するために、ISO-8859-2 が使われている。実はこの文字コードでもドイツ文字を表わすことが可能である。

彼の要望はこうだ。ルーマニアに住んでいるドイツ人が、彼にメールを書くときには、何も考えずに ISO-8859-2 で送ってくる。従って、そのメールに返答する際には、入力コードを ISO-8859-1 から ISO-8859-2 へ自動的に切り替えたい。

魚は空気に触れてはじめて水の存在を知るという。我々は異文化に触れてはじめて、自分達の文化を再認識する。私には最初、メールの内容がまったく理解できなかった。しかし、なんとか理解したそのときこそ、ヨーロッパでの文字コードの問題に実際に触れ、日本語の文字コードを再認識した瞬間だった。

「ヨーロッパの文字コードは文字数が少ないから簡単だ」と考えるのは、大きな誤りである。ヨーロッパでは、国と民族が入り乱れ、さまざまな言語が話されているという、日本では考えられない状況が存在する。一方で、日本語は文字数が多いといっても、話されているのは主に日本だけある。

それまでの自分がいかに偏見に満ちていたのか、私は身にしみて思い知らされた。私の他にも、「日本の技術者は文字コードに精通しており、欧米の技術者は文字コードに疎い」という片寄った考えに陥っている人がいると思う。その証拠に、「Unicode は嫌いだ」という日本人は多い。

Unicode を忌み嫌う理由の1つとして、Unicode は中国の漢字と日本語の漢字を統合していることがよく挙げられる。違う言語の文字を同一と見なすなんて、文化の侵略にも似た野蛮な行為だ。「漢字のよく分からない欧米人に、漢字を取り扱う文字コードを設計させてはならない」というわけである。しかし、漢字の統合を提案したのは中国人だという事実はあまり知られていない。

翻って考えるに、日本人は西洋人の抱える問題を理解していると言えるだろうか?ヨーロッパにおいて共通の通貨としてユーロが必要であるように、共通の文字コードも必要なのである。

日本人はこうも反論する。中国の漢字と日本語の漢字を同一視したら、たとえば日本語の日記の中に、中華料理のメニューが書けないではないかと。しかし、このような複数の言語の文字を同時に取り扱うことは、結果的には Unicode の目的ではない。先のドイツとルーマニアの例も、ドイツ語だけを問題にしている。

Unicode は、たとえば「日本で使用している」という外部情報とともに使う。これによって、中国語の文字と日本語の文字を切り替えられる。もし Unicode の策定過程で、このことに対する共通の理解があったなら、JIS X 0208 と互換性を保つ方式が採択されたのではないか。たとえば、「日本で使用している」というモードでは、漢字の部分に JIS X 0208 を(若干の変換を加えて)利用する方法である。

しかし、残念ながらそうはならなかった。現在の Unicode は JIS X 0208 と互換性がなく、JIS X 0208 ゆかりの文字コードへ変換する場合は、大きな対応表を用いる他ない。

違う文字コードの文字を同一視するという行為が、それほど野蛮でないということも指摘しておこう。中国本土では、字体を簡略化した「簡体字」が使われており、文字コードとしては GBK などが利用されている。一方、周辺地域の香港や台湾では「伝統字」が使用されており、それを表現する文字コードは Big5 である。

中国本土でも周辺地域でも、話されているのが中国語であることにかわりはない。従って、GBK のどの文字と Big5 のどの文字とが同一なのか、考える必要がある。中国語を話す人達にとって、Unicode はこの問題を考えるよい機会だったのかもしれない。

もちろん、Unicode は文字コードとしてできが悪い。間違いの本質は、世界で利用されている文字の数を低く見積もった点にある。もし今からやり直せるなら、4 バイトの素直な体系を設計できるだろう。しかし、もう引き返せないところまで来てしまった。そろそろ日本人も Unicode にまじめに向き合う時期になったのではないかと私は考えている。

私は Unicode の策定に関わっていないので、関わった人たちの努力を批判する気持は全くない。だた、文字コードを通して思うのは、いかに異文化を理解するのが困難かということだ。コミュニケーションの本質は、相手を理解し、そして自分を理解してもらうことだという。私にとって、Unicode はこのよき教訓である。