[サンスクリットページ雑感集・技術情報]

Windows XPでペルシア文字を扱う問題点

Since 2004/9/17 Last Updated 2006/5/30


 ペルシア文字とはウルドゥー語を表す文字のことである。アラビア文字と呼んでもいいのだが、わざわざ「ペルシア文字」と表す場合、よくウルドゥー語で用いられているナスターリーク体のことをさすことが多い。ただ、このページでは必ずしもナスターリーク体のことだけでなく、広くアラビア文字を指している。

 このサイトではデーヴァナーガリーもペルシア文字もローマ字も、原則としてすべて画像表示で行くということは再三書いた。ローマ字は活字方式で表示できるから、どんなに語数が多くなろうと音素分の画像ファイルがあればすむが、デーヴァナーガリーやペルシア文字は語ごとに画像ファイルを用意しなければならない。6000語の語彙集を作るなら、単純計算で6000個×2=12000個のファイルが必要になるというわけである。これはかなりしんどいのだが、以下述べるような問題点があるので、当サイトの語彙集では1万数千個のファイルを用意して、オール画像表示を貫いている。
 問題点とは何か。「文法超特急」の「ウルドゥー語入門練習問題」では、新出語彙の語彙集を作っている。ここも画像表示にしているが、実はこっそり、Unicodeを指定したページも作ってみた(1番目のみ)。ではそれを見比べてほしい。  みなさんの環境では「Unicode混在版」が正しく表示できているだろうか。完全に正しく表示されているという人は一人もいまい。何らかの問題点が発生していることだろう。Windows 95/98/Meで問題が発生するのは当然なのでXPに話をしぼっても、ブラウザによって表示がまちまちなのだ。複数のブラウザをインストールしている人は、見比べてみると面白いだろう。
 複数のブラウザをインストールする気のない人のために、どう見えるかを画像で表示してあげよう。以下は、および(「起きる」の不定未来形の1人称複数形および3人称複数形)の例である。
正しい表記 MS-IE NetscapeおよびMozilla Opera コード(10進数)
1575 1657 1726 1610 1722
1575 1657 1726 1746
 MS-IE(6.0SP1を使用)は一番お粗末である。 多くの文字が□になっているが、 よく見るとこれらは全部、アラビア語にない字母である。 目下のところMS-IEは、狭義のアラビア語にしか対応しておらず、 アラビア文字を使う他の言語には対応していないというわけだ。 もっともあたりはちゃんと出るので、 ペルシア語には対応しているのだろう。
 NetScapeとMozillaは、出身が同じせいなのか、 ふるまいが同じである。 は正しく処理しているが、 その次のがダメである。 このはUnicodeの表でいう1726(16進数06BE)であり、 コード表の説明にも、"ARABIC HEH DOACHASHMEE"とあり、 ウルドゥー語用とも書いてある。 これの扱いがうまくないわけである。
 それではというので、帯気音用を通常の(1607)に変更すると、 となった。 こんどはとのつながりがうまくいってない。 念のために変えてみると、 のようにつながるので、やっぱりこれはの問題なのである。 さらに末尾の鼻母音用や、[e]音用のへのつながりがダメ。 これを普通のに変えれば、 のようにきれいにつながってくれるけど、 これはもうウルドゥー語と言えないよ!
 一番優秀だったのがOperaだけど、 よく見ると帯気音用のが普通のとまったく同形である。 コードを普通のに変えてもこの表示になる。
 また、のほうの終わりから2番目の1610()を、 これは[e]音なんだからといって、[e]音用の1746に変えると、 とたんに となってしまう。 1746はあくまで語末だけというわけだ。 とすると、コードを使う側が、語末かどうかを判断して、 コードを出し分けてやらねばならないというわけだ。 こういうのは本来はコンピュータさんにやってもらいたいんだけどね。

 それやこれやで、目下のところ、WindowsXP上のブラウザの表示にはどれも不満点があった。 これでは当分は、画像切り取りをしなければなるまい。
 仮に表示がいまよりましになったところで、上に書いたように、 使う側が語頭・語中・語末を判断してコードを出し分けねばならないケースも残りそうだし、 もうわずらわしくて書かなかったが、現在はどのブラウザも、 ハムザの組み立てにうまく対応していない。 つまり、ハムザ+などのようなハムザのついた文字は別にコードがあるのだが、 ハムザのコードとのコードを送れば勝手に組み立ててくれるというわけではなく、 組みあがった形のコードを送らねばならない。 このようなわずらわしい問題がいろいろ残りそうである。
 また、デーヴァナーガリーは、Unicode順にソートすると、 それなりに辞書順になってくれたが(細かい点が違う)、 ペルシア文字はもとのアラビア文字にない拡張した文字のコードがまるきり別のところになっているので、 明らかに辞書順にならない。 仮にUnicodeを送ればブラウザが完璧に表示してくれるようになったとしても、 手元のデータ処理ではUnicode以外のコードを定めて処理しなければならないという状況が続くことだろう。

関連サイト

  1. Unicode デーヴァナーガリー コード表
  2. Unicode アラビア文字 コード表
  3. アラビア系文字の基礎知識 @ moji
  4. Opera(livedoor opera)
  5. Mozilla Firefox(Mozilla Japan)
  6. Netscape(Netscape日本)


※ご意見、ご教示などは、に戻り、掲示板あるいはメールで賜るとありがたく思います。