2010年4月19日月曜日

世の中は完全にunicodeですが

昔話です。

今は猫も杓子もUTF-8。VistaもubuntuもUTF-8。

UTF-8は、Unicodeの8ビットエンコーディング方法なので、
Unicodeありきです。

しかし1993年に提唱された時には、アジア圏ではかなり物議を醸しました。
usenetで結構盛り上がったので、筆者もその有様は覚えています。

unicodeは、Apple/IBM/Microsoft等、アメリカ企業が決めたものであって、
ぶっちゃけ、日本語版&中国版&韓国版を
バラバラに作るのが面倒だったんだろうと。

例えば、日本ではJISコードが或るわけですが、
漢字類は概ね、音読み順に並んでいます。

unicodeの何が物議を醸したかというと、
現地に現存する国語コードを完全に無視してるんですね。

あろうことか、文字のカタチで並べてしまった。
しかも、日本語の漢字と、中国語の漢字を、混同してます。


凄い順番でしょう?

何が困るかというと、現地エンコーディング(JIS漢字)とは、
変換表を用意するしかない訳です。

結局、変換表は、アチコチで内蔵しちゃってるんですが。

例えば、「CGI言語」として有名なperl。その漢字モジュールjcode.pm

「WEB言語」として有名なPHP。

漢字コード変換フィルタnkfのunicode対応版
http://sourceforge.jp/cvs/view/nkf/nkf-2/nkf-utf8/utf8tbl.c?view=markup

仕事を増やす仕事に絶望した!

とは言え、
英語圏のプログラムに日本語対応するには、
それ以前ではオープンソースであっても、何某かの改造が必要でした。

今では「UTF-8対応」で作っておいてくれれば、
メッセージは英語のままでもデータは日本語が通っちゃいますし、
後でメッセージデータを揃えれば済んでしまう訳です。

ソフトウエア業界の全体でいえば、楽にはなってるのでしょう。

unicodeは必要悪でもあります。
故に、今更文句を言う人はいません。
10年以上経っちゃったんだなあ。