ローマ字仮名変換の設計 - 定義一覧

(2022-11-22) (現カナ)

 ローマ字仮名変換とローマ字つづりの違いは、ローマ字のつづりは人間の目で前後のつづりを見て読みを一つに決められますが、ローマ字仮名変換はキーを押した順番で変換後の仮名が決まってしまいます。追加で数文字押した後に元に戻って、仮名を変えることはできません。(厳密には可能ですが、そのような複雑な規則を作り込むのは難しいでしょう。)
 変換規則をまとめてみます。下線で斜体が訓令外、下線のみが訓令第二表、それ以外が訓令第一表の規則になります。

必須規則 (基本)

  • a(あ)
  • ba(ば), be(べ), bi(び), bo(ぼ), bu(ぶ)
    • bya(びゃ), byo(びょ), byu(びゅ)
  • cha(ちゃ), chi(ち), cho(ちょ), chu(ちゅ)
  • da(だ), de(で), di(ぢ), do(ど), du(づ)
    • dya(ぢゃ), dyo(ぢょ), dyu(ぢゅ)
  • e(え)
  • fu(ふ)
  • ga(が), ge(げ), gi(ぎ), go(ご), gu(ぐ)
    • gwa(ぐゎ)
    • gya(ぎゃ), gyo(ぎょ), gyu(ぎゅ)
  • ha(は), he(へ), hi(ひ), ho(ほ), hq(ー), hu(ふ)
    • hya(ひゃ), hyo(ひょ), hyu(ひゅ)
  • i(い)
  • ja(じゃ), ji(じ), jo(じょ), ju(じゅ)
  • ka(か), ke(け), ki(き), ko(こ), ku(く)
    • kwa(くゎ)
    • kya(きゃ), kyo(きょ), kyu(きゅ)
  • ma(ま), me(め), mi(み), mo(も), mu(む)
    • mya(みゃ), myo(みょ), myu(みゅ)
  • n'(ん), na(な), ne(ね), ni(に), no(の), nq(ん), nu(ぬ)
    • nya(にゃ), nyo(にょ), nyu(にゅ)
  • o(お)
  • pa(ぱ), pe(ぺ), pi(ぴ), po(ぽ), pu(ぷ)
    • pya(ぴゃ), pyo(ぴょ), pyu(ぴゅ)
  • q(っ)
  • ra(ら), re(れ), ri(り), ro(ろ), ru(る)
    • rya(りゃ), ryo(りょ), ryu(りゅ)
  • sa(さ), se(せ)
    • sha(しゃ), shi(し), sho(しょ), shu(しゅ)
    • si(し), so(そ), su(す)
    • sya(しゃ), syo(しょ), syu(しゅ)
  • ta(た), te(て), ti(ち), to(と)
    • tsu(つ)
    • tu(つ)
    • tya(ちゃ), tyo(ちょ), tyu(ちゅ)
  • u(う)
  • vu(ヴ)
  • wa(わ), we(ゑ), wi(ゐ), wo(を)
  • xa(ぁ), xe(ぇ), xi(ぃ), xo(ぉ), xu(ぅ)
    • xwa(ゎ)
    • xya(ゃ), xyo(ょ), xyu(ゅ)
  • ya(や), yo(よ), yu(ゆ)
  • za(ざ), ze(ぜ), zi(じ), zo(ぞ), zu(ず)
    • zya(じゃ), zyo(じょ), zyu(じゅ)

必須規則 (特殊)

  • h*(ー*)、「*」は「a, e, h, i, o, q, u, w, y」以外の英字
  • n*(ん*)、「*」は「a, e, i, o, q, u, y」以外の英字
  • **(っ*)、「*」は「a, e, i, n, o, q, u」以外の英字

追加規則 (NQH式補助)

  • dja(ぢゃ), dji(ぢ), djo(ぢょ), dju(ぢゅ)
    • dzu(づ)
  • tcha(っちゃ), tchi(っち), tcho(っちょ), tchu(っちゅ)

解説

 「必須規則(基本)」は、この規則だけを定めることですべての仮名表現が可能になります。訓令内の定義は説明不要なので、訓令外の定義について述べていきます。「hq(ー), nq(ん), q(っ)」は、それぞれ長音符号・撥音・促音を単独で示すための組み合わせです。人間の目であれば、「h, n」の後ろに来る英字で仮名が決まりますが、コンピュータ内では複雑な処理が必要です。処理を単純にするために、「q」を後ろに置くことで仮名が決まるようにします。なお、「h」を使った長音符号への変換は、現存の IME では実現できないようです。「vu(ヴ), we(ゑ), wi(ゐ)」は訓令定義に含まれない直音です。「xa(ぁ), xe(ぇ), xi(ぃ), xo(ぉ), xu(ぅ), xwa(ゎ), xya(ゃ), xyo(ょ), xyu(ゅ)」は小書き仮名(捨て仮名)です。単独では音価を持ちませんが、非常用に必要最低限な定義です。
 「必須規則(特殊)」は、長音符号・撥音・促音をより自然に入れるために、後続英字の選択肢をまとめたものです。
 「追加規則 (NQH式補助)」は、NQH式のつづりに合わせた追加定義です。「dja(ぢゃ), dji(ぢ), djo(ぢょ), dju(ぢゅ), dzu(づ)」を新しく定めています。「tch」による促音を扱うために、「tcha(っちゃ), tchi(っち), tcho(っちょ), tchu(っちゅ)」を追加で定めます。
 最後に慣例として外来音の変換規則を「参考規則」として示します。すべての外来音を規則的に定めることは難しく、記憶の負担になる場合、覚えるよりも、直音と小書き仮名に分けて、それぞれ英字から仮名に置き換えていくほうが確実です。

参考規則

  • che(ちぇ)
  • dhi(でぃ), dhu(でゅ)
    • dwu(どぅ)
  • fa(ふぁ), fe(ふぇ), fi(ふぃ), fo(ふぉ)
    • fyo(ふょ), fyu(ふゅ)
  • gwe(ぐぇ), gwi(ぐぃ), gwo(ぐぉ)
  • hye(ひぇ)
  • je(じぇ)
  • kwe(くぇ), kwi(くぃ), kwo(くぉ)
    • kye(きぇ)
  • nye(にぇ)
  • she(しぇ)
    • swi(すぃ)
  • tche(っちぇ)
    • thi(てぃ), thu(てゅ)
    • tsa(つぁ), tse(つぇ), tsi(つぃ), tso(つぉ)
    • twu(とぅ)
  • va(ヴぁ), ve(ヴぇ), vi(ヴぃ), vo(ヴぉ)
    • vyo(ヴょ), vyu(ヴゅ)
  • whe(うぇ), whi(うぃ), who(うぉ)
  • ye(いぇ)
  • zwi(ずぃ)