WEB国語教室

連載

日本の文字とUnicode

第3回 ひらがな・カタカナとUnicode

安岡孝一

現代において、文字を書くということは、コンピュータやケータイのキーを打つことと、ほぼ同義になってきています。そして、現代のコンピュータにおいて文字を扱うためには、文字コード、それもUnicodeの助けを借りるしかなくなってきています。でも、Unicodeは日本語に特化して作られたわけではないので、日本の文字を扱おうとした場合、色々とヤヤコシイ点があったりします。それらのヤヤコシイ点を、できるだけ平易に説明するこのシリーズ、第3回は、ひらがな・カタカナとUnicodeの関係です。

ひらがな・カタカナとUnicode

UnicodeのU+3041~U+3096には、ひらがなが収録されています(コード表参照)。 UnicodeのU+30A1~U+30FAには、カタカナが収録されています(コード表参照)。 ひらがなとカタカナは、Unicode上での順序が、 ほぼ同じになるように収録されています。 たとえば、ひらがなのU+305F~U+3069は順に「た」「だ」「ち」「ぢ」「っ」「つ」「づ」「て」「で」「と」「ど」となっているのに対して、 カタカナのU+30BF~U+30C9は順に「タ」「ダ」「チ」「ヂ」「ッ」「ツ」「ヅ」「テ」「デ」「ト」「ド」となっているわけです。 ただし、小書きのカタカナは、 一部U+31F0~U+31FFにも収録されていて(コード表参照)、 これらに対応するひらがなは、Unicodeに収録されていません。 小書きのカタカナは、基本的にはアイヌ語表記のためにUnicodeに収録されたことから、 対応する小書きのひらがなは、必要ないと判断されたのです。

路頭に迷う変体仮名たち

また、いわゆる変体仮名は、現時点ではUnicodeに収録されていません。 たとえば、「い」と読むひらがなは、 少なくとも以下の9字があるのですが、 これらのうちUnicodeに収録されているのは、 現時点では「い」(U+3044)と「ゐ」(U+3090)だけです。

一方、「え」と読むひらがなは、少なくとも以下の8字があるのですが、 これらのうち「え」(U+3048)と「ゑ」(U+3091)に加え、U+1B001の変体仮名がUnicodeに収録されています(コード表参照)。

変体仮名をUnicodeに収録しようとする動きは、過去にも何回かありました。 しかしながら、変体仮名が全体としてどれだけたくさんあるのか、 また、形のよく似た変体仮名をどれだけ細かく分類すればいいのかがハッキリせず、 収録に至っていないというのが実情です。

今では見かけない字も使えます

ただし、「より」の合字である「ゟ」は、HIRAGANA DIGRAPH YORIとしてU+309Fに収録されています。 あるいは、「コト」の合字である「ヿ」は、KATAKANA DIGRAPH KOTOとしてU+30FFに収録されています。 「ゟ」や「ヿ」は、古い新聞にしばしば現れる文字なので、 特別に収録されたのです。 一方、「トモ」の合字は、U+2A708に収録されていますが、 なぜかカタカナではなく、CJK UNIFIED IDEOGRAPH-2A708という漢字として扱われています(コード表参照)。 日本からの収録提案の際に、カタカナの合字であるにもかかわらず、 漢字として収録提案してしまったために、このようなことになっているのです。

確かに区別はしないのですが……

ちなみに、ひらがなの「へ」とカタカナの「ヘ」は、 それぞれU+3078とU+30D8という別のUnicodeになっているのですが、 音引きを表す「ー」は、ひらがなもカタカナも同じU+30FCとなっています。 日本の印刷においては、ひらがなの「へ」とカタカナの「ヘ」は一応区別しますが、 「ー」は区別しないことが多いので、それに合わせた形となっているのです。 その結果「ー」は、Unicodeにおけるスクリプトを混乱させる一因となっています。 すなわち、ひらがなの「へ」がHIRAGANA LETTER HE、 カタカナの「ヘ」がKATANAKA LETTER HEという名前なのに対して、 「ー」はKATAKANA-HIRAGANA PROLONGED SOUND MARKという、KATAKANAスクリプトとHIRAGANAスクリプトの両方にまたがる、 何だかよくわからない名前になってしまっているのです。

濁点もアクセント

日本語の関東方言においては、「学校」の「が」と、 「小学校」の「が」との間に、微妙な発音の違いがあります。 「小学校」の「が」の方が、やや鼻にかかっている音で、鼻濁音と呼ばれるものです。 アクセント辞典などで鼻濁音を明示したい場合には、 半濁点を用いて「か゚」と表記するのが、よくある方法です。 つまり、「がっこう」「しょうか゚っこう」と書き分けるわけです。

足してください、必ずね!

この「か゚」をUnicodeに追加するにあたって、悶着が起きました。 いわく、Unicodeには、 直前の文字に半濁点を付けるコードとして、U+309Aが準備されており、 したがって「か゚」を表現する際にも、 「か」(U+304B)にU+309Aを付けた<U+304B U+309A>というコード列を、 「か゚」とみなすべきだ、と。 この結果、Unicodeのコード表には「か゚」は収録されず、 「か゚」を表現するには、<U+304B U+309A>というコード列を使わなければいけなくなってしまいました。 まあ、これはこれで仕方ありません。

「が」はどちらでもいいんです!

ところが「か゚」がそうだとすると、今度は「が」が問題になります。 「が」はU+304Cで本当にいいのか、という疑問が生じるのです。 「が」は本当は、「か」(U+304B)に濁点U+3099を付けて、<U+304B U+3099>としなければいけなかったのではないか、 と思えてきてしまったのです。 結局「が」に対しては、 過去の経緯もあるので、U+304Cでも<U+304B U+3099>でもどちらでもいい、 ということになっています。 逆に言えば、U+304Cも<U+304B U+3099>も、 どちらも同じ「が」とみなさなければならない、ということです。

濁点もやはり区別しません

カタカナの「ガ」においても同様で、U+30ACでも<U+30AB U+3099>でも、どちらでもいいということになっています。 逆に言えば、U+30ACも<U+30AB U+3099>も、 どちらも同じ「ガ」とみなさなければならない、ということです。 すなわち、U+3099の濁点は、 ひらがな・カタカナに付加されるアクセント記号だ、 ということなのです。

濁音には符号の一意性がない

これは、文字列検索やファイル名の一意性などにおいて、 かなり面倒くさい処理を必要とします。 濁点のついた「が」「ぎ」「ぐ」「げ」「ご」や、 あるいは半濁点のついた「ぱ」「ぴ」「ぷ」「ぺ」「ぽ」を処理する際には、 U+3099(濁点)やU+309A(半濁点)の扱いにも注意する必要があるということです。 もし、これらの扱いをちゃんとおこなわないと、 同じ「がが」というフォルダを複数つくることが出来てしまって、 さっぱりわけがわからなくなる、ということも起こりえるのです。

上から順に、<U+304B U+3099 U+304B U+3099>、<U+304B U+3099 U+304C>、<U+304C U+304B U+3099>、<U+304C U+304C>というコード列で、 「がが」というフォルダを4つ作ってみました。 本来、フォルダやファイル名は、同じ名前のものを2つ作ることは出来ないはずなのに、 ここでは4つも作ることが出来てしまっています。 困りましたね。

ケータイでおなじみ、半角カタカナ

しかもカタカナにおいては、さらにヤヤコシイことになっています。 Unicodeには通常のカタカナとは別に、半角カタカナというものが収録されています。 U+FF66~U+FF9D(コード表参照)に収録されているのが半角カタカナで、 通常のカタカナの半分の幅に表示する点を除いて、 扱いとしては通常のカタカナと同じ、という摩訶不思議な文字です。 すなわち、U+FF71「ア」はU+30A2「ア」に同じ、 U+FF72「イ」はU+30A4「イ」に同じ、 U+FF73「ウ」はU+30A6「ウ」に同じ、…ということになっているのです。

「ガ」と「ガ」が同じ!?

ここで難しいのが、半角カタカナの濁点(U+FF9E)と半濁点(U+FF9F)の扱いです。 たとえば、コード列<U+FF76 U+FF9E>の「ガ」は、 通常のカタカナの「ガ」(U+30AC)と同じなのでしょうか違うのでしょうか。

「ガ」と「ガ」を同じだとみなすと、 実はかなりヤヤコシイ問題が起こります。 <U+FF76 U+FF9E>=U+30AC≡<U+30AB U+3099>となってしまうので、 U+FF9EとU+3099を同じだとみなす必要があるのです。 ところが、Unicodeの立場としては、 U+FF9Eは半角カタカナ専用の濁点(HALFWIDTH KATAKANA VOICED SOUND MARK)ですが、 U+3099はカタカナとひらがなの両方に使える濁点(COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK)であって、 両者は、使える相手となる文字が本来、異なっているのです。

やっぱり同じで行きましょう!

だからと言って「ガ」と「ガ」を違う文字とみなすと、 今度は、「ガ」を単純に検索しても「ガ」がひっかからない、 ということが起こります。 少なくとも検索に関しては、 「ガ」と「ガ」を同じにみなす必要があり、<U+FF76 U+FF9E>とU+30ACと<U+30AB U+3099>とを、 全て同じだとみなす必要があるということでしょう。試しに、あなたのWebブラウザで、 このページの中の「ガ」を検索してみましょう。 さて、どうなりましたか?

著者プロフィール

安岡 孝一 (やすおか こういち)

1965年、大阪府生まれ。
1983年、月刊『ASCII』でデビュー。
1990年、京都大学大型計算機センター助手に就任。
文字コード研究のパイオニアとして活躍し、文字コード規格JIS X 0213の制定および改正で委員を務める。
現在、京都大学人文科学研究所附属東アジア人文情報学研究センター准教授。
著書に『新しい常用漢字と人名用漢字―漢字制限の歴史―』(三省堂)、『キーボード配列 QWERTYの謎』(NTT出版)、『文字符号の歴史―欧米と日本編―』(共立出版)などがある。
http://slashdot.jp/~yasuoka/journalで、断続的に「日記」を更新中。

このページの先頭へ