日本語入力の効率化 新方式!

日本語入力の効率をあげることについて「理想のキーボード環境を求めて(14)」でなぜAZIKをベースにしたかについて説明しました。
それは

(1)学習コストが低いこと
(2)ローマ字入力からかけ離れないこと

の2点が理由でした。

AZIKをベースにして、それなりの入力効率をあげることもできたのですが、その後、日本語入力について調べていたところ、ジャックル(JACQL)打鍵法というものをみつけました。
その理論のなかで、以下のような記述がありました。

Jacql の特徴は、「J,C,Q,L」を単体で仮名に割り当てることである。 AZIKが数多くの定義を追加したわりには打鍵数が減らない(*1)のは、 元々、出現頻度が少なく打鍵数もさほど多くない組み合わせを対象にしているからである。 例えば、「かい(KAI→KQ)」では、3打鍵が2打鍵へと33%の減少になる。 また、「さい(SAI→SQ)」「たい(TAI→TQ)」も同様である。 しかし、Jacqlの「か(KA→Q)」単体は、「かい」「さい」「たい」などを合計したものよりも、 はるかに出現率が高く、しかも、50%の減少率になる(*2)。

つまり「キーの割り当てには、単体の文字を割り当てれば50%の削減になる」ということです。なかなか、興味深い理論です。

ここでJACQLが「J,C,Q,L」に絞って単体割り当てしているのは、ローマ字入力では「C,F,J,L,Q,V,X」は、任意使用の文字となっているからです。

この考え方をベースに単体の文字を割り当てることを中心に全く新しい発想でRGT打鍵法(ローマ字互換単打打鍵法)というものを考えました。その、特長は次の通りです。

(1)学習コストが非常に低い

覚えることが少なく、自然に覚えられる。

(2)ローマ字入力とほぼ互換

「tsu」「kwa」「gwa」以外は訓令表(第2表を含む)、ヘボン式の全てをローマ字入力可能にする

(3)打鍵効率(総打数)は、AZIKやNicola以上

しかし、こんなことが、可能なのでしょうか?
JACQLの「キーの割り当てには、単体の文字を割り当てれば50%の削減になる」がヒントになり、次のような順に考えていきました。

(1)できるだけ多くのキーに文字を割り当てる

最初に考えたのは、Wに「を」、Rに「る」、Tに「た」など連想しやすい文字を割り当てることです。
しかし、このような割り当てを行なうと「わ(wa)」や「ら(ra)」を入力できなくなるというのが、従来の壁となっていたと思います。

(2)母音が入力されたら、自動的に再入力する

これが、RGTの最大のポイントとなります。例として「わたし」と入力する場合を考えます。

①wを入力「を」が未確定で入力される。
②aを入力「を」が削除され「わ」が変りに入力される。

ここが、最大のポイントで、通常の入力方法だと「一度入力したものは取り消せない」ことになっているので(1)の「できるだけ多くのキーに文字を割り当てる」という発想ができなかったのだと思います。

というよりIMEのローマ字表は、このような「打ち直し」ができないので、そもそも発想が無かったのだと思います。

しかも、この方法の利点は、入力途中で割り当てた文字が表示されるので、どの文字を割り当てたかを覚えてなくても、画面を見ているうちに自然に学習することができることです。

③tsを入力Tには「た」、Sには「し」が割り当てられているので「わたし」の入力が4文字で可能となります。また、Tと「た」、Sと「し」はローマ字では母音を省略しているだけなので、極めて自然に覚えることができます。

このように、自然に割り当てができたものは、以下のキーです。

W:を R:る T:た S:し D:でG:が H:は K:か M:ま

これらのキーについては、覚える必要も無く、画面に表示される未確定の文字を見ているだけで覚えることができます。

(3)課題1 単打の後に母音が続く場合

例えば「会議」と入力する場合を考えます。
kを入力すると「か」と表示されます。ここで、次の「い」を入力するために「i」を入力すると「き」に打ち変えられてしまいます。

考えてみれば当たり前で「ki」と入力したのですから「き」になって当然です。この場合は「kai」と入力して「か」を「ka」で確定するようにします。
ローマ字入力としても素直です。

(4)課題2 「っ」の入力方法

ローマ字入力との高い互換性を保つために「っ」の入力は、子音を重ねることで入力できるようにしました。

しかし、単純に実装すると入力効率が落ちるので、次のような工夫をしました。 例として「結果」を入力する場合を考えます。 通常のローマ字入力の通り「kekka」と入力すると「けっか」が入力できることがローマ字入力との互換性として必要です。

まず「kek」まで入力したときは、単打の効率を考えると「けか」と入力されなければなりません。

次に「k」が入力されると「けkk」(入力途中状態)になるのがローマ字入力の使用ですが、単打の利点を活かすために、この時点で「けっか」(kの単打で「か」)となるように実装しました。

この状態でも続いて「kekki」と「i」を入力すると「けっき」となるようにしました。かなり実装は面倒でしたが、単打の特性は活かせたと思います。
もっとも「っ」単独を「x」で入力できるようにしているので、ローマ字入力互換性にこだわらなければ「kexk」と入力することも可能です。

(5)課題3 単打の連続

上記の「っ」入力を、ローマ字入力互換性を保ったために、次の問題が発生しました。「課金」のように単打の次に、単打と同じ子音が続くと「っ」に変換されてしまいます。
この場合も、課題1と同様に「か」を「ka」として入力すると解決します。

(6)課題4 Hの特殊事情

実際に例文を入力して気づいたのが「H」の特殊事情です。ローマ字入力ではあ「写真」「チャンス」を入力する場合「sh」「ch」のような入力があります。したがってHの単打「は」は、前に入力された文字が「C,H,W」の場合は「は」を削除して前に入力された文字にHを続けるものに置き換えます。

例えば「sh」の場合はSを入力して「し」が表示されている状態でHを入力すると「し」を消して「sh」 に置き換えます。
Whは、あまり利用されていないと思いますが、ローマ字互換性にこだわって実装しました。

(7)課題5 Yの特殊事情

Yも、Hと似たような問題があります。ローマ字入力では、拗音(ゃゅょ)があり「子音+Y+母音」で入力する。少しでも打鍵効率を上げるためにYには「く」を単打として割り当てています。

したがって、Hの場合と同様に子音の後にYが入力された場合は、単打を削除して前の子音の後にYを続けたものに置き換える必要があります。

上記のとおり、かなり面倒な置き換えが必要となっりましたが、単打による打鍵数削減で大きな効果を出せるようになりました。

「文字は読むため、文は伝えるため」の記事では、218文字の例文で色々な方式の比較をしています。
RGT方式でも同じ例文を入力してみたところ、297打数となりました。
AZIKと同じくシフトが無いので「動作数」と「総打数」は一致しています。

AZIKの340打数、Nicolaの312打数よりも低い打数となり、ローマ字入力と比べると20%以上の削減となりました。

しかも「実質ローマ字入力互換」「覚えることが少ない」という特長から、ローマ字入力から極めてスムーズに移行できる極めて優れた方式ではないかと思います。

今は単打を少しずつ覚えている段階なので、まだまだ入力速度は遅いですが、それでも打数削減の効果を既に実感しています。

近々、ホームポジションキーパーのバージョンアップに取り入れる予定です。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です