このブログを検索

2016年6月18日土曜日

カナ音矯正ローマ字テイブル

Google日本語入力はローマ字の変換規則もカスタマイズ出来るようになっている。

キーの設定は、MS_IME、ATOK、ことえり、の3種類のデフォルトから選べたが、ローマ字のデフォルトは1種類しか無い。このローマ字の変換規則もファイルのエクスポートとインポートが出来るようになっていて、ファイル名は romantable.txt になっているけど変更も可能。

普通に日本語を扱う限り、このデフォルトの設定で困る事は無いのだが、外来語の発音をカナで表記するとなると色々と気になる。世間一般で書かれているカナの表記を踏襲する限り、このデフォルトで十分だと思うけど、なるべく本来の発音に近いように表記しようと思えば改善したい点が多々ある。

昔は、限られた数の外来語を日本語に取り込むという方針で外来語がカタカナ語化して来たと思うけど、こうもカタカナ語が増えてくるなら、原音が分かるように書き方を工夫して日本人の語学力向上に役立てるべきだと思っている。その為にローマ字テイブルも工夫したい。

ちゃんと書き分けられるのに、やってない代表が 「シ」と「スィ」 の区别である。以前、NHKの「サラリーマンNEO」という番組をやっていて、その中でセクシー部長という人が登場する時に必ず、「違う、セクシーじゃないセクスィだ!」と叫ぶ人物が現れるけど、その通りである。

その「すぃ」という字の入力方法だが、考え方としては2通りある。まず、日本語をヘボン式の入力として、shi なら「し」、si なら「すぃ」、とする方法。しかし、私は、日本語の事を考えるなら、あくまで訓令式で入力するべきだと思っている。

デフォルトのローマ字テイブルには「すぃ」の定義はないから、現状は 「すぃ」を入力するには「す」に続けて「ぃ」を入力するしか無いけど、「し」の入力に si の他に ci を定義しているのなら、それを「すぃ」に割り当てる位の工夫は出来るだろう。

Lを奪回する

Google日本語入力のデフォルトでは、その小さな文字「ぃ」の入力をする為に、 i の前に x か l を入力する事になっている。これはMS_IMEでもATOKでもそうだ。

考えてみれば、日本語のローマ字入力で使わないで済む字は少ない。数えてみると、x と l 以外は c と j と f と q しか無い。しかも、私にとっては、「ちゃ」を書くのに tya よりも cha を入力したいし、「ふぁ」を書くには hwa よりも fa を入力したいし、「じゃ」を書くのも zya よりは ja と入力したい。そういう人は私以外にも沢山いるだろう。

では、q はどうなっているか。MS_IMEでは 「くぁ」、「くぃ」、「く」、「くぇ」、「くぉ」 が割り当てられているけど、それは滅多に使わないし、ATOKでは q は定義されてない。そうすると、小さな文字の入力に q を使うことも出来そうだ。

それで、小さな文字の入力に使う文字として、互換性維持の為に x は残すとして l の代わりに q を使うようにする。それは、日本人が苦手な R と L の区别を克服するために l を「ら行」音の入力に利用する為である。

じゃあ、q を加えなくて x だけでも良いのではないかと思うかも知れないが、x はタッチタイピングするには非常に打ちにくい位置なのだ。その点、l はとても打ちやすい位置にあったと言える。でも、q もまずまず打ちやすい位置だから l の代わりに q があれば大丈夫。そして、x を残してあるから、他人がそのパソコンをちょっと使う時にも l は使えないので x を使って下さいと言えば済む。

因みに、中国語のピンインで「小」は xiao と書くので、小さな文字の入力に x というのは感覚的にしっくりしていた。そして、l も little だと思っていたけど、代わりに q はやはりピンインで qi 「チィ」と発音する事から「ちいさい」を連想する事にした。

そうして使えるようにした l に「ら行」を割り当てる。外来語の原音に l が使われているのに r を使って「ら行」を入力するのには強い抵抗があるし、外来語の発音で「ら行」は l に譲る論を唱えているから。しかし、日本語にはそんな区别はないから、r を使っての「ら行」入力は維持する。それから、ll に「ー」を割り当てたら、タッチタイピング出来て便利だった。

Ja は「ぢゃ」ぢゃあないかと悩む

昔の本を読むと、…ぢゃあないか…という表記を良く見かける。しかし、現代仮名遣いの決まりで「ぢ」と「づ」は事実上使用を禁止されたから、今では…じゃあないか…としか書かれない。しかし、「じ」の発音は、「ち」、「じ」を繰り返して言えば分かるけど「ち」が濁音になった音だから本当は「ぢ」と書くべきだった。
だから、ja も「ぢゃ」と書くべきだろうか、と思ったけど、「じゃ」って書いても現在されている発音は「ぢゃ」なのだから そのままで良いのだ、と思うようにした。

それは、英語の発音では「し」の濁音である[ʒ]という子音あるけど、「ぢ」の子音である[ʤ]と区别しなくとも問題ではない、という認識があるから。理屈では、zha で「じゃ」、ja で「ぢゃ」を表わすべきかも知れないが、実際に入力ツールを実装するとなると、これでは受け入れがたいな、と思った。日本語話者の耳にもはや区别不能な音を苦労して書き分ける必要性は無い事にする。
後日談: しかし、折角だから書き分ける手段を実装してみる。「ぢ」という字を活用しても「じ」という音で記憶されるのだから新しい表現方法を作るしかないと思って、「し」の濁音を表すのに「’し」という字を作って、zhiで入力出来るようにしようと考えた。
それは、某英和辞典に於いて R と L を区别するのに「ら行」音をひらがなとカタカナで書き分ける試みも、結局は読めば同じ音だからどっちがどっちか分からなくなるので無駄だなあと思った経験に基づく。或いは、水の英語を「ヲータ」と書いても「オータ」としか読んでもらえないけど、「ウォータ」と書けば「オータ」とは区别して記憶しているという事実。
この新しい「’し」と言う字を「し」と発音しようが、「じ」と発音しようが、あるいは「し」の濁音となるように頑張ろうが構わない。「’しゃ」、「’し」、「’しぃ」、「’しゅ」、「’しぇ」、「’しょ」 が zha zhi zhy zhu zhe zho で入力できる。

l 及び th 音をテイブルで定義

英語の発音で問題になっているのは、子音に於いては r と l の区别、及び th音を「さ行」、「ざ行」音で代用している事である。その為、th音は 「’た」、「’ち」、「’つ」、「’て」、「’と」 及び 「’だ」、「’ぢ」、「’づ」、「’で」、「’ど」 と書くように提案している。ローマ字テイブルにはそれぞれ tha thi thu the tho 、dha dhi dhu dhe dho と定義した。

そして、「ら行」音は l に譲り、r 音は 「’ぁ」、「’ぃ」、「’ぅ」、「’ぇ」、「’ぉ」 と書く、と提案していたけど、この様にローマ字入力のツールを作っていると、やはり「ら行」音は r で入力するように定義しないと一般の人には受け入れて貰えないだろうな、と考え直した。それで、「ら行」音は r に譲り、l の音を表すのに新たに、「’ら」、「’り」、「’る」、「’れ」、「’ろ」 の文字を作る。 ローマ字テイブルは、la li lu le lo と定義した。

カナで子音を表現する問題を解決する

英語に於いて、子音で終わる発音は、「う」の段のカナで表すことが出来るはず、と以前に主張した。それは、「ウ」の母音で終わる発音は英語にないからである(「アウ」、「オウ」、「ウー」はそれとは別の母音である)。同様に「オ」の母音で終わる発音も無いから「お」の段のカナで子音で終わる発音を表せる(「ト」、「ド」)。

しかし、「い」の段母音で終わる発音はあるから(「ヂ」を使うことは諦めて)、「シ」、「ジ」、「チ」、で終わる発音が子音で終わっているのか、「イ」の母音を含むのか不明になる。それで、「イ」の母音を含む場合には「ィ」を加える規則を提案している。これをローマ字テイブルで実装するのに、「シ」、「ジ」、「チ」 shi(si) ji chi 及び、「シィ」、「ジィ」、「チィ」 shy(sy) jy chy で切り替えるようにしてみた。


まだまだローマ字テイブルに関しては実験中だけど、取り敢えず現在の私の[ローマ字テイブル]を公開する(ファイルの中身は随時変更されるけど)。