カテゴリ「ローマ字入力」の記事 (7)

ローマ字入力から漢直に至る道

 これまで紹介してきた“漢直をじわじわ混ぜる”方法は、入力された仮名を漢直のストロークとして読み換えることで成立しましたが、この手はローマ字入力には通用しません。しかし、御安心ください。ローマ字入力に通ずる別のルートがあるのです。

23_fig1.gif

漢直の入力を親指でシフトする

 たったこれだけで、漢直が丸ごと使えるようになります。もちろん、ローマ字入力は今まで通りに使えます(*1)

 そのためには、親指の守備範囲内にある{無変換}{空白}{変換}{ひらがな}のうち少なくとも1個(できれば2個)が漢直用の同時打鍵として使える必要があります。また、「DvorakJ」と「Google日本語入力」が使えることも必要です。

 「DvorakJ」と「Google日本語入力」の連携については、先週の記事に書いたことの繰り返しになりますが、簡単にまとめると以下のような流れになります。

  • DvorakJ
    • 漢直用にカスタマイズした設定で、キー入力を加工して送出する
      • 非シフト打鍵はそのまま送る
      • シフト打鍵の場合は先頭に特殊な記号を付けて送る(*2)
        (漢直用には、通常のシフトや親指シフトとは異なるキーと記号を割り当てておく)
  • Google日本語入力
    • 漢直用にカスタマイズしたローマ字テーブルで、受け取った英数記号を仮名や漢字などにして表示する
      • 特殊な記号が入っていても気にせずアルファベットとして認識する
      • ローマ字変換の結果が漢字であっても仮名と同様に表示する
        変換前の文字列の中に漢字があっても特に気にしない(*3)

 

ダウンロード

種類名称入手先備考
日本語入力システムGoogle日本語入力 http://www.google.co.jp/intl/ja/ime/ Windows版・Mac版・Android版がある
(Windows8以上・Mac版・Android版での動作は未確認)
ローマ字テーブル G-Code decode-qwerty-x-gcode.zip (予定) Qwerty配列用G-Code(準備中)
decode-dvorak-x-gcode.zip (予定) Dvorak配列用G-Code(準備中)
キー配列変更ソフト DvorakJ http://blechmusik.xii.jp/dvorakj/ DvorakJ本体
設定ファイル encode-qwerty-x-x-m-h.zip (予定) Qwerty配列用(準備中)
encode-dvorak-x-x-m-h.zip (予定) Dvorak配列用(準備中)
打鍵図表示ソフト 漢索窓 https://code.google.com/p/tcode/downloads/list 漢直Winに同梱されている
(2015年12月現在の最新版は“kw128.zip”)

※ローマ字テーブルには漢直の設定だけが入っています。(現在のローマ字テーブルの内容を取り込んでから使うようになっています)

インストールと設定

 必要に応じて、インストールと設定を行ってください。

  • ローマ字テーブル
    1. 適当な場所に解凍する
    2. 使いたいローマ字テーブルを選んで、テキストエディタで開いておく
      (後で、このファイルに現在のローマ字テーブルの内容を取り込みます)
  • Google日本語入力
    1. 添付されたドキュメントにしたがってインストールする
    2. ツール→プロパティで、以下のように設定する
      • 一般(基本設定)
        ローマ字入力・かな入力:ローマ字入力
        句読点:、。
        記号:「」・
      • 一般(キー設定)
        ローマ字テーブル:「編集...」で、以下の作業を行う
        1. 「編集」→「エクスポート...」で、現在使っているローマ字テーブルをエクスポートする
        2. エクスポートしたファイルをテキストエディタで開き、すべてを選択してコピーする
        3. さっき開いておいたファイルにペーストして、保存して終了する
          (エクスポートした方のファイルも閉じる)
        4. 「編集」→「インポート...」で、編集した方のローマ字テーブルをインポートする
      • 入力補助
        自動英数変換を有効にする:オフ
        句読点変換を有効にする:オフ
    3. Google日本語入力プロパティを閉じる
  • DvorakJ用設定ファイル
    適当な場所に解凍する
  • DvorakJ
    1. 適当なフォルダに解凍して、インストールする
    2. DvorakJを起動する
    3. DvorakJの設定画面を開き、以下の設定を行う
      • メニューバーの「ファイル(F)」→「DvorakJ/user/フォルダを開く(U)」で、フォルダを開く
        (必要ならサブフォルダを作る)
      • 解凍した設定ファイルをDvorakJ/user/フォルダ(配下)にコピーする
      • 右枠の「日本語入力用配列」で、コピーした設定ファイルの中から適当なもの選ぶ
        (※親指キーの組み合わせで何種類か作る予定です)
      • 右枠の「日本語入力の設定」で
        「日本語入力用配列を日本語入力時にのみ使用する(O)」を選択し、
        「かな入力用の設定で日本語入力用配列を使用する(K)」をオフにする
    4. DvorakJの設定画面を閉じる
    (※漢直Winを使って漢直する場合は、DvorakJをOFFにしてください)
  • 漢直Win
    1. 適当なフォルダに解凍する
    2. “kanchoku.ini”を適宜変更して保存する
      (※ここで選択した漢直のテーブルは、漢索窓でも使われます。また、[kansaku]セクションで漢索窓の設定ができます)
    3. 適当な場所に“kansaku.exe”のショートカットを作る

 上記の内容は、2015年12月23日現在のものです。それよりも新しい版をダウンロードした場合は、添付されたドキュメント等の最新の情報を御確認ください。

今後の予定

 使っていないキー(の組み合わせ)を見つけたら「これは勿体ない。何かに使ってみよう」と考えてしまうのは、何も漢直だけに限らず、AZIK / ACTDvorakJPなどの拡張ローマ字入力や、花配列月配列下駄配列などのマルチストローク系や同時打鍵系の仮名配列を使っている人たちに共通する習性だろうと思います。

 それらの入力方法は多種多様で、ありとあらゆるキーの組み合わせが開拓されている筈なので、その中に漢直が入り込む空き地が残っているとはとても考えられません。しかし、それらの多くは、ローマ字テーブルのカスタマイズやキー配列の変更によって実現されています。だから、ローマ字入力には使われていないアルファベットや同時打鍵シフトには使われていないキーが確保できたら、何か別の入力方法に利用できるはずです。

 そこで、その両者を結び合わせて、(*4)漢直用のシフトキーと同時打鍵したときに特殊な記号をつけて送り出し、その記号が先頭についたローマ字を漢字に変換するという抜け道を作ってみたのです。

 各方式で使える設定ファイルをあれこれ試しながら作ってはいるのですが、今はまだ公開できる状態にはなっていません。近いうちに、順次アップしていきますので、もうしばらくお待ち下さい。


 この記事は漢直 Advent Calendar 2015のために書いたものです。


(*1) ローマ字入力は今まで通りに使えます  厳密には、若干の違いがあります。例えば、変換機能を割り当てた{空白}を漢直用の同時打鍵キーとして兼用すると、何かのキーを打った直後に素早く変換すると、同時打鍵と判定されて漢直の第1打のコードになる可能性があります。{空白}に限らず、何かの機能を持ったキーを同時打鍵シフトキーとして兼用する場合ば、打鍵のタイミングを調整する必要があります。

(*2) 特殊な記号を付けて送る  UTF-8の文字を直接送出できるキー配列変更ソフトであれば、これと同じ設定ができます。最近「やまぶきR」を試してみましたが、設定方法が簡単なので、(同時打鍵を使わない)ローマ字入力や行段系の方式に漢直を組み合わせるだけなら、「やまぶきR」をおすすめします。

(*3) 変換前の文字列の中に漢字があっても特に気にしない   つい最近、MS-IMEは、変換前の漢字を気にしないどころか交ぜ書き変換もできると聞いてびっくりしました。未変換文字列の中に漢字が直接入ってくることは通常はありえないので、これは漢直ユーザー以外にとって意味のない機能です。もしかするとMS-IMEの開発者は漢直を視野に入れているのかもしれません。そうなってくると今度は、Googleの方でも対抗して交ぜ書き変換をサポートしてくれるのではないかなどと期待(妄想)が膨らみます。

(*4) そこで、その両者を結び合わせて  というよりも、親指シフト+漢直を使っていて“漢直よみ”で登録するのが面倒になり、漢直用のキーで同時打鍵する方法を試しているうちに、「これはローマ字入力や他のいろんな方式にも応用できるぞ」と気づいたといった方が正確です。

はじめに

 これから書くとこは、ろくにQwerty配列のローマ字入力もJIS配列の仮名入力も打てないうちに、漢直を使い始めたという私の個人的な経験によるところが大きいので、話半分に受け取ってください。(これまで書いてきたものも五十歩百歩かもしれませんが)

 私は、MS-DOSの頃からずっと、仮名漢字変換と漢直を併用してきたので、打てない漢字があったら仮名漢字変換すればいいという楽な道を歩んできました。

 そのやり方はOSがWindowsになっても変わらず、ローマ字テーブルで漢字の打ち方を設定できるIME(CannaやWXGや松茸など)を使い続け、今はGoogle日本語入力を使っています。

 ただ、IMEのローマ字入力を使い始めた当初は、仮名や漢字が決まる前のストロークがちらちらと画面に表示されるのが、ちょっと気になりました。MS-DOSでは漢直用の常駐ソフトで、文字が決定する前のストロークを非表示にしていたからです。

 それで、未変換文字列の表示を目立たない色に変えてみましたが、それではミスタイプに気づきにくくなるので元に戻しました。結局、使っているうちに慣れてきて、あまり気にならなくなりました

日本語入力が漢直なら、英字配列の乗り換えコストは低くなる

 これまで何度かあちこちに書いたように、Dvorak配列に乗り換えたのは15年ほど前でした。その頃はもうWindowsを使っていたので、日本語の入力は漢直用のローマ字テーブルを差し換えるだけで済みます。というわけで、Qwerty配列でもDvorak配列でも日本語の打ち方に影響しないのなら、Dvorak配列に切り換えてみようという気になったのです。

 やったみたら、予想通り、Dvorak配列への移行は楽でした。とはいえ、アルファベットが以前と同じように打てるようになるには、やはり多少の時間がかかりました。でも、それほど練習していないのに、なんとなく打てるようになっていたような気もするのです。

 もしかすると、日本語入力のときにアルファベットがちらちら見えるのが(サブリミナル的に)効いているのではないかと思うのです。その証拠に、漢直では使わない周辺のキーはよくミスタイプします。ただ単に「普段はあまり使わないキーで、打ちにくい位置にあるからだ」という理由かもしれませんが。

 この件は、私の主観的な思い込みかもしれませんが、それを抜きにしても、英字配列の変更で日本語のローマ字入力まで打ち方まで変わってしまうのに比べれば、ずっと楽であることは確かです。

おわりに

 この「Dvorak配列への楽な乗り換え」を実現するには、まず漢直をやらなくてはなりません。もちろん、漢字の打ち方までマスターするにはDvorak配列をマスターするよりも時間がかかります。それでも、仮名と句読点などの打ち方だけなら、ローマ字入力と同等か、より短期間の練習(*1)で済みます。

 そうやって、日本語入力がある程度できるようになってから、英字配列を変更すればいいのです。両方いっぺんに変ってしまうから大変なのであって、ひとつずつなら何とかなるものです。

 この記事を読んで、「それなら漢直やDvorak配列を試してみよう」と思った方は、ぜひともチャレンジしてみてください。


 この記事は Dvorak Advent Calendar 2015漢直 Advent Calendar 2015 のために書いたものです。2年前の 漢直 Advent Calendar 2013のために書いた記事 とは矛盾する点もありますが、あまり気にしないでください。

(*1) ローマ字入力と同等か、より短期間の練習  英語用のキー配列を日本語のローマ字入力に使うために様々な工夫がなされていますが、少なくとも仮名の打ち方を規則的にまとめてある漢直(TUT-code, G-Code, 超絶技巧入力等)の方がシンプルで覚えやすいと言えるでしょう。ただし、仮名の入力速度で習得曲線を比較すれば、基本的に1文字あたり2打鍵以上を要する漢直は、最適化されたローマ字入力に追い越されるだろうと予想できます。根拠となるデータはありませんが、タイパーの人たちが猛スピードでタイプしている動画を見ると、いくら漢字を直接打ってもこれには追いつけないだろうという気がしてきます。

そもそも何故?

 まず、何故こんな手の込んだことをやるのかについて、ざっと説明します。

 15年ほど前から、私はDvorak配列を使っています。それ以前から、日本語の入力には漢直を使っていたので、Qwerty配列からDvorak配列への乗り換えは簡単でした。漢直の設定をIMEのローマ字テーブルに入れる(*1)という方法なので、その漢直用のテーブルのローマ字部分をQwertyからDvorakに置換するだけで済みました。つまり、英字配列を変えても日本語の入力方法に影響しなかったわけです。

「JIS仮名+漢直」と「親指シフト+漢直」の違い

 今年の夏、急に、仮名入力に漢直を混ぜる方法を思いついてしまいました。漢直のストロークをローマ字入力モードで渡すのではなく、仮名入力モードで(仮名文字列として)渡してしまおうというわけです。

 実際にやってみると、JIS仮名配列ではうまくいきましたが、親指シフトの場合は「。」と「.」が区別できずに(*2)行き詰まりました。

 しかし、漢直のストロークとして扱うためには、どうしても「。」と「.」は区別できなくてはなりません。現に、これまでずっと、ローマ字入力モードの漢直では何の問題もなく「。」と「.」を区別できていたので、このやり方ならうまくいくはずです。

親指シフトをローマ字テーブルで入力する

 そこで、「。」や「.」のキーを(アルファベットとして)ローマ字入力モードのIMEに渡して、ローマ字テーブルで「。」や「.」に変換するようにしました。部分的にローマ字入力モードにはできないので、当然、他の仮名や記号等も全部ローマ字テーブルで設定することになります。ローマ字テーブルで漢直のストロークを設定するのと同じように、仮名の“よみ”とは無関係に、キーの位置とシフト状態を示す中間コードとして扱うことにするわけです。

 以下は、そのために作ったDvorakJ用の設定内容(*)です。

同時に打鍵する配列

/*
 *  encode-oyayubi-qwerty-mu-hen-sp-kana.txt
 *
 *  ・左右の親指で同時打鍵シフト入力するためのDvorakJの設定ファイルです
 *      いわゆる“親指シフト方式”に限らず、親指でシフトする方式に使用できます
 *      実際に入力する文字(列)ではなく、中間コードを出力します
 *      IMEのローマ字入力モードで目的の文字(列)に変換することを想定しています
 *
 *  ・中間コードには、通常のQwerty配列の文字を使用し、以下の記号を前置します
 *      'ô':バックスラッシュの打鍵('\'と区別するため)
 *      'ŝ':通常のシフト打鍵
 *      'ò':左親指との同時打鍵 {無変換}
 *      'ó':右親指との同時打鍵 {変換}
 *      'ō':両親指との同時打鍵 {無変換}+{変換}    (※)オプション
 *      'ė':拡張1との同時打鍵 {空白}              (※)オプション
 *      'ë':拡張2との同時打鍵 {ひらがな}          (※)オプション
 *
 *      (※)コメントで無効にしてあります(必要に応じてコメントを外してください)
 *
 *  ・これは、日本語入力用の設定ファイルです
 *      必ず「日本語入力用配列を日本語入力時にのみ使用する」を選択してください
 *
 */


/* 文字(単独打鍵) */
[
1|2|3|4|5|6|7|8|9|0|{-}|{^}|{\}|
q|w|e|r|t|y|u|i|o|p|{@}|{[}|
a|s|d|f|g|h|j|k|l|;|{:}|{]}|
z|x|c|v|b|n|m|,|.|/|ô{\}|
]


/* シフト(ŝ) + 文字 */
-shift[
ŝ1|ŝ2|ŝ3|ŝ4|ŝ5|ŝ6|ŝ7|ŝ8|ŝ9|ŝ0|ŝ{-}|ŝ{^}|ŝ{\}|
ŝq|ŝw|ŝe|ŝr|ŝt|ŝy|ŝu|ŝi|ŝo|ŝp|ŝ{@}|ŝ{[}|
ŝa|ŝs|ŝd|ŝf|ŝg|ŝh|ŝj|ŝk|ŝl|ŝ;|ŝ{:}|ŝ{]}|
ŝz|ŝx|ŝc|ŝv|ŝb|ŝn|ŝm|ŝ,|ŝ.|ŝ/|ŝô{\}|
]


/* 左親指(ò) + 文字 */
-muhenkan[
ò1|ò2|ò3|ò4|ò5|ò6|ò7|ò8|ò9|ò0|ò{-}|ò{^}|ò{\}|
òq|òw|òe|òr|òt|òy|òu|òi|òo|òp|ò{@}|ò{[}|
òa|òs|òd|òf|òg|òh|òj|òk|òl|ò;|ò{:}|ò{]}|
òz|òx|òc|òv|òb|òn|òm|ò,|ò.|ò/|òô{\}|
{無変換}|
]


/* 右親指(ó) + 文字 */
-henkan[
ó1|ó2|ó3|ó4|ó5|ó6|ó7|ó8|ó9|ó0|ó{-}|ó{^}|ó{\}|
óq|ów|óe|ór|ót|óy|óu|ói|óo|óp|ó{@}|ó{[}|
óa|ós|ód|óf|óg|óh|ój|ók|ól|ó;|ó{:}|ó{]}|
óz|óx|óc|óv|ób|ón|óm|ó,|ó.|ó/|óô{\}|
{変換}|
]

〔オプションの部分は省略します〕

 このように、敢えてDvorakJでは実際に入力する文字を指定してません。その代わりに、論理的な打鍵情報を中間コード化することに徹しています。

 文字キーの中間コードに関しては(独自の符号を用いると煩雑になるので)Qwerty配列の文字をそのまま使っています。もちろんDvorak配列バージョンを作っても構いません。

 以下のように、Google日本語入力のローマ字テーブルの「入力」欄に中間コードを入れ、「出力」欄には目的の文字を入れます。

(表1) ローマ字テーブルの設定例:親指シフト(NICOLA-J)(*4)

最上段 上段
単独左親指右親指SHIFT 単独左親指右親指SHIFT
入力出力入力出力入力出力入力出力 入力出力入力出力入力出力入力出力
1 ò1 ó1 ŝ1 q òq óq ŝq
2 ò2 ó2 ŝ2 w òw ów ŝw
3 ò3 ó3 ŝ3 e òe óe ŝe
4 ò4 ó4 ŝ4 r òr ór ŝr
5 ò5 ó5 ŝ5 t òt ót ŝt
6 ò6 ó6 ŝ6 y òy óy ŝy
7 ò7 ó7 ŝ7 u òu óu ŝu
8 ò8 ó8 ŝ8 i òi ói ŝi
9 ò9 ó9 ŝ9 o òo óo ŝo
0 ò0 ó0 ŝ0 p òp óp ŝp
- ò- ó- ŝ- @ ò@ ó@ ŝ@
^ ò^ ó^ ŝ^ [ ò[ ó[ ŝ[
\ ò\ ó\ ŝ\
中段 下段
単独左親指右親指SHIFT 単独左親指右親指SHIFT
入力出力入力出力入力出力入力出力 入力出力入力出力入力出力入力出力
a òa óa ŝa z òz óz ŝz
s òs ós ŝs x òx óx ŝx
d òd ód ŝd c òc óc ŝc
f òf óf ŝf v òv óv ŝv
g òg óg ŝg b òb ób ŝb
h òh óh ŝh n òn ón ŝn
j òj ój ŝj m òm óm ŝm
k òk ók ŝk , ò, ó, ŝ,
l òl ól ŝl . ò. ó. ŝ.
; ò; ó; ŝ; / ò/ ó/ ŝ/
: ò: ó: ŝ: ô\ òô\_ óô\ ŝô\_
] ò] ó] ŝ]

 どの打鍵でも、通常のローマ字入力の「あ」「い」「う」「え」「お」と同じように即座に仮名が入力されるので、ローマ字入力を使っている感じはしないと思います。(目を凝らしてよく見れば、何かが一瞬表示されていることは分かりますが、入力の邪魔になるほどではありません)

各種キー配列への対応

 ここまでは親指シフト(NICOLA-J)を例にして説明しましたが、各種配列用の入力ローマ字テーブルを作ることによって、TRONなどの1打鍵系の仮名配列(*5)に対応できます。また、JISや新JISを親指でシフトできるようにするなどの応用も可能です。

この続きは?

 16日の「親指シフトに漢直をじわじわ混ぜていく方法」に詳しく書く予定です。


 この記事はDvorak Advent Calendar 2015漢直 Advent Calendar 2015のために書いたものです。

(*1) 漢直の設定をIMEのローマ字テーブルに入れる 詳しくは、先日の「仮名漢|漢直」問題を御覧ください。

(*2) 親指シフトの場合は「。」と「.」が区別できずに 日本語の文章を入力する場合は「。」か「.」のどちらか片方を使うのが普通なので、IMEの方でどちらにするかを選べるようになっています。たぶん、その処理のせいで片方しか入力できないのだろうと思われます。JIS仮名配列の場合は、漢直のストロークに句読点などの記号が入らないため、このような問題が生じなかったのです。

(*3) DvorakJ用の設定内容 親指キーの組み合わせは、{無変換}と{変換}のほかに、{無変換}と{空白}、{空白}と{変換}の2種類があります。どの組み合わせでも、IMEは同じ中間コードを受け取るようになっています。

(*4) 親指シフト(NICOLA-J) NICOLA規格 | NICOLA 日本語入力コンソーシアムを参考にして、文字キーを[BS]に用いない「NICOLA-J型」を選びました。また、ここからリンクされているQ's Nicolatter 8 の配列図にならって、未定義の部分を「●」としています。

(*5) TRONなどの1打鍵系の仮名配列 漢字のストロークを単独打鍵の文字の組み合わせで確実に判定できるものであれば、どのような配列でも問題ありません。なお、TRONキーボードには左右の親指を同時に押した状態で入力する文字があるので、「両親指との同時打鍵」をオプションとして追加できるようにしました。

q2d.pl

 漢直用のローマ字テーブルをQwerty配列からDvorak配列に変換するperlスクリプトです。

#
# q2d.pl - Qwerty配列用のローマ字テーブルをDvorak配列用に変換する
#
# 使い方: perl q2d.pl < qwerty-table > dvorak-table
#
%q2d = (
	'1', '1',	'2', '2',	'3', '3',	'4', '4',	'5', '5',
	'6', '6',	'7', '7',	'8', '8',	'9', '9',	'0', '0',
	'q','\'',	'w', ',',	'e', '.',	'r', 'p',	't', 'y',
	'y', 'f',	'u', 'g',	'i', 'c',	'o', 'r',	'p', 'l',
	'a', 'a',	's', 'o',	'd', 'e',	'f', 'u',	'g', 'i',
	'h', 'd',	'j', 'h',	'k', 't',	'l', 'n',	';', 's',
	'z', ';',	'x', 'q',	'c', 'j',	'v', 'k',	'b', 'x',
	'n', 'b',	'm', 'm',	',', 'w',	'.', 'v',	'/', 'z',
#
#	'google-ime_tutc-kigo.utf'で、
#	ストローク内の【 】を【'】で代用している箇所を【-】に置換する
#
	'\'', '-',
);

while (<>) {
	chop;
	if (/^([\x20-\x7e]+)\t(.+)$/) {
		($stroke, $kanji) = ($1, $2);
		@a = split(//, $stroke);
		$stroke = "";
		for $x (@a) {
			if (defined($q2d{$x})) {
				$stroke .= $q2d{$x};
			} else {
				$stroke .= $x;
			}
		}
		printf("%s\t%s\n", $stroke, $kanji);
	} else {
		printf("%s\n", $_);
	}
}

(※) Google日本語入力のローマ字テーブルの書式に合わせています。他の書式の場合は適当に変更してお使いください。


 この記事は漢直 Advent Calendar 2015のために書いたものです。

イントロ的な何かの続き

 前回の記事 を書くためにWikipediaの「漢字直接入力」に関する記述 を確認しているうちに、もしかすると「仮名漢と漢直は併用できない」と思っている人が結構いるんじゃないかという気がしてきました。分類するために明瞭な境界線を引くのは百科事典としては当然のことですが、その分類用の境界線を何か実体のある隔壁のようなものだと考えると、「仮名漢と漢直は相容れない入力方式である」という誤った認識に誘導されるおそれがあります。

 誤変換ツイートを見て「そこで漢直ですよ!」なんて言ってる場合ではなかったのです。これからは、漢直に興味をもった人が「仮名漢を使うか、それとも漢直にしようか?」なんてことをつぶやいているのを見かけたら、こう返さなくてはなりません。

「仮名漢と漢直は併用できますよ!」

 そして、こんなサンプルを見せるのです。目の前で実演できればなお良いでしょう。

サンプル文を入力しているアニメーションGIF(04_fig1.gif)

 これは仮名と句読点などの打ち方をマスターした後、「仮」「名」「漢」「字」「変」「換」「直」「接」「入」「力」の打ち方だけを覚えている架空の人物が、普段の私よりもゆっくり入力している様子をキャプチャした動画です。(まだ打てない漢字は“よみ”を打ってから変換している芸の細かさに御注目ください)

 このように、最低限の仮名や句読点などの打ち方さえマスターしてしまえば、打てる漢字が全然なくても、入力できずに困るなんてことにはなりません。つまり、ローマ字入力の拡張版や2ストローク系の仮名配列などと同じようなものなのです。それに漢字が直接打てるという裏技が付いているのだと思ってください。

「これ、どうなってるの?」

 その御質問には、シンプルに「仮名漢のローマ字テーブルに漢字の打ち方を入れてあるんですよ」(*1)とお答えします。

 必要なものは、以下のリンク先から入手できます。

ダウンロード

種類名称入手先備考
日本語入力システムGoogle日本語入力 http://www.google.co.jp/intl/ja/ime/ Windows版・Mac版・Android版がある
(Windows8以上・Mac版・Android版での動作は未確認)
ローマ字テーブル TUT-Code http://www.gar.sakura.ne.jp/tut-code/software.html Qwerty配列用
(“google-ime_tutc.utf”と“google-ime_tutc-kigo.utf”を結合して別ファイルに保存したものを使う)
上記からダウンロードして結合したファイル(準備中)
(Qwerty配列用・Dvorak配列用を同梱する予定)
G-Code http://homeposition.net/gcode/download/gc3gIme.zip Qwerty配列用・Dvorak配列用が同梱されている
キー配列変更ソフト DvorakJ http://blechmusik.xii.jp/dvorakj/ Dvorak配列用のローマ字テーブルを使う場合に必要
打鍵図表示ソフト 漢索窓 https://code.google.com/p/tcode/downloads/list 漢直Winに同梱されている
(2015年12月現在の最新版は“kw128.zip”)

※ローマ字テーブルについて

インストールと設定

 必要に応じて、インストールと設定を行ってください。

  • ローマ字テーブル
    適当な場所に解凍する
  • Google日本語入力
    1. 添付されたドキュメントにしたがってインストールする
    2. ツール→プロパティで、以下のように設定する
      • 一般(基本設定)
        ローマ字入力・かな入力:ローマ字入力
        句読点:、。
        記号:「」・
      • 一般(キー設定)
        ローマ字テーブル:「編集...」→「編集」→「インポート...」でローマ字テーブルをインポートする
      • 入力補助
        自動英数変換を有効にする:オフ
        句読点変換を有効にする:オフ
    3. Google日本語入力プロパティを閉じる
  • DvorakJ
    1. 適当なフォルダに解凍して、インストールする
    2. DvorakJを起動する
    3. DvorakJの設定画面を開き、以下の設定を行う
      • 右枠の「日本語入力用配列」で、DvorakJ/data/lang/eng/Dvorakフォルダにある
        “Dvorak 配列 (英語配列キーボード版)”を選択する
        (※ローマ字テーブルで使っている記号が、日本語用のDvorak配列とは異なっているためです)
      • 右枠の「日本語入力の設定」で
        「日本語入力用配列を日本語入力時にのみ使用する(O)」を選択し、
        「かな入力用の設定で日本語入力用配列を使用する(K)」をオフにする
    4. DvorakJの設定画面を閉じる
    (※漢直Winを使って漢直する場合は、DvorakJをOFFにしてください)
  • 漢直Win
    1. 適当なフォルダに解凍する
    2. “kanchoku.ini”を適宜変更して保存する
      (※ここで選択した漢直のテーブルは、漢索窓でも使われます。また、[kansaku]セクションで漢索窓の設定ができます)
    3. 適当な場所に“kansaku.exe”のショートカットを作る

 上記の内容は、2015年12月4日現在のものです。それよりも新しい版をダウンロードした場合は、添付されたドキュメント等の最新の情報を御確認ください。


 この記事は漢直 Advent Calendar 2015のために書いたものです。

 Windows7上で「Google日本語入力+親指シフト+G-Code」(DvorakJ:ON)、ところにより「Google日本語入力+G-Code」(DvorakJ:OFF)で入力しました。


〔2015/12/13:追加〕

(*1) 「仮名漢のローマ字テーブルに漢字の打ち方を入れてあるんですよ」 漢字だけでなく仮名や記号の打ち方も通常のローマ字入力とは全然違うルールで入れてあります。

打鍵数は参考程度にするのがよい

 まず、前回の「打鍵数はこれでいいのか?」のおさらいから。「各入力方法の仕様比較」の表を、シフトを含む打鍵数で書き換えてみた。

表1

  親指シフトキーボード JISキーボード
文字キーの数 48 48
シフトキーの位置 中央(親指シフト) 両サイド(小指シフト)
入力モード 仮名モード 英数モード 仮名モード 英数モード
文字のレイアウト NICOLA Qwerty配列 JIS仮名配列 Qwerty配列
仮名の入力方法 かな入力 ローマ字入力 かな入力 ローマ字入力
打鍵数 清音 1 or
2(同側シフト)
(JISキーボードと同じ) 1 or
2(「を」)
1(母音) or
2(子音+母音)
(半)濁音 2(クロスシフト) 2(清音+(半)濁点) 2(子音+母音)
撥音(「ん」) 1 1 1(n) or
2(nn)
促音(「っ」) 2(同側シフト) 2(シフト) 1(次の文字の子音) or
3(xtu)
拗音(「きゃ」等) 3(単独+同側シフト) or
4(クロスシフト+同側シフト)
3(清音+シフト) or
4((半)濁音+シフト)
2(「じゃ」「ふぁ」等) or
3

 要するに、NICOLAはJIS仮名よりも(「を」を除く)同側シフトの仮名の分だけ打鍵数が多くなり、ローマ字入力に関しては、親指シフトキーボードとJISキーボードには何ら違いがない(元の表で省略されているのはそのためだ)。

 これではJISキーボードで仮名入力やローマ字入力を使っている人にとって、 親指シフトキーボードには何の魅力もないことになる。むしろ、不公平な比較アニメーションを見せられて、親指シフトキーボードに反感を抱く可能性すらある。

 そこで、「キーボード入力比較」のアニメーションの例文で溜飲を下げていただこう。(煩雑になるので、仮名に開いたテキストを使い、仮名漢字変換・改行・右寄せ等の打鍵は省略した)

【例文】(144文字)
はいけい なつのひかりもいくぶんしのぎやすくなりましたが、みなさまいかがおすごし
でしょうか。ほんじつ、まごにせがまれてちかくのうみへまいりましたら、りょうしさん
のいえで、とてもしんせんなひものをみつけました。あなたがおすきなのをおもいだして
、おおくりいたしましたから、ごしょうみください。なまぼしもありますから、はやくお
めしあがりください。とりいそぎ、おしらせまで。けいぐ

【NICOLA】(267打鍵)
(は)(い)(け)(い)( )((左て))(つ)((右き))(ひ)(か)((左た))((左せ))(い)(く)((右ふ))
(ん)(し)((右き))((左き))((左ふ))(す)(く)((左て))((左た))((右つ))(し)(た)((右か))
(、)((右は))((左て))(さ)((右つ))(い)(か)((右か))((右と))(す)((右こ))(し)((右て))
(し)((右い))(う)(か)(。)(ほ)(ん)((右し))(つ)(、)((右つ))((右こ))((右ち))(せ)((右
か))((右つ))((左さ))(て)(ち)(か)(く)((右き))(う)((右は))(へ)((右つ))(い)((左た))
((右つ))(し)(た)(ら)(、)((左た))((右い))(う)(し)(さ)(ん)((右き))(い)((左か))((右
て))(、)(と)(て)((左せ))(し)(ん)(せ)(ん)((左て))(ひ)((左せ))((右き))((左う))((右
は))(つ)(け)((右つ))(し)(た)(。)((左し))((左て))(た)((右か))((右と))(す)(き)((左
て))((右き))((左う))((右と))((左せ))(い)((右た))(し)(て)(、)((右と))((右と))(く)
((左た))(い)(た)(し)((右つ))(し)(た)(か)(ら)(、)((右こ))(し)((右い))(う)((右は))
(く)((右た))(さ)(い)(。)((左て))((右つ))((左ほ))(し)((左せ))((左し))((左た))((右
つ))(す)(か)(ら)(、)(は)((左ふ))(く)((右と))(め)(し)((左し))((右か))((左た))(く)
((右た))(さ)(い)(。)(と)((左た))(い)(そ)((左き))(、)((右と))(し)(ら)(せ)((右つ))
((右て))(。)(け)(い)((左く))

【JIS仮名】(223打鍵)
(は)(い)(け)(い)( )(な)(つ)(の)(ひ)(か)(り)(も)(い)(く)(ふ)(゛)(ん)(し)(の)(き)
(゛)(や)(す)(く)(な)(り)(ま)(し)(た)(か)(゛)(L(ね))(み)(な)(さ)(ま)(い)(か)(か)
(゛)(お)(す)(こ)(゛)(し)(て)(゛)(し)(L(よ))(う)(か)(L(る))(ほ)(ん)(し)(゛)(つ)
(L(ね))(ま)(こ)(゛)(に)(せ)(か)(゛)(ま)(れ)(て)(ち)(か)(く)(の)(う)(み)(へ)(ま)
(い)(り)(ま)(し)(た)(ら)(L(ね))(り)(L(よ))(う)(し)(さ)(ん)(の)(い)(え)(て)(゛)
(L(ね))(と)(て)(も)(し)(ん)(せ)(ん)(な)(ひ)(も)(の)(L(わ))(み)(つ)(け)(ま)(し)
(た)(。)(あ)(な)(た)(か)(゛)(お)(す)(き)(な)(の)(L(わ))(お)(も)(い)(た)(゛)(し)
(て)(L(ね))(お)(お)(く)(り)(い)(た)(し)(ま)(し)(た)(か)(ら)(L(ね))(こ)(゛)(し)
(L(よ))(う)(み)(く)(た)(゛)(さ)(い)(L(る))(な)(ま)(ほ)(゛)(し)(も)(あ)(り)(ま)
(す)(か)(ら)(L(ね))(は)(や)(く)(お)(め)(し)(あ)(か)(゛)(り)(く)(た)(゛)(さ)(い)
(L(る))(と)(り)(い)(そ)(き)(゛)(L(ね))(お)(し)(ら)(せ)(ま)(て)(゛)(L(る))(け)
(い)(く)(゛)

【Qwertyローマ字】(325打鍵)
(h)(a)(i)(k)(e)(i)( )(n)(a)(t)(u)(n)(o)(h)(i)(k)(a)(r)(i)(m)
(o)(i)(k)(u)(b)(u)(n)(s)(i)(n)(o)(g)(i)(y)(a)(s)(u)(k)(u)(n)
(a)(r)(i)(m)(a)(s)(i)(t)(a)(g)(a)(,)(m)(i)(n)(a)(s)(a)(m)(a)
(i)(k)(a)(g)(a)(o)(s)(u)(g)(o)(s)(i)(d)(e)(s)(h)(o)(u)(k)(a)
(.)(h)(o)(n)(j)(i)(t)(u)(,)(m)(a)(g)(o)(n)(i)(s)(e)(g)(a)(m)
(a)(r)(e)(t)(e)(t)(i)(k)(a)(k)(u)(n)(o)(u)(m)(i)(h)(e)(m)(a)
(i)(r)(i)(m)(a)(s)(i)(t)(a)(r)(a)(,)(r)(y)(o)(u)(s)(i)(s)(a)
(n)(n)(n)(o)(i)(e)(d)(e)(、)(t)(o)(t)(e)(m)(o)(s)(i)(n)(s)(e)
(n)(n)(n)(a)(h)(i)(m)(o)(n)(o)(w)(o)(m)(i)(t)(u)(k)(e)(m)(a)
(s)(i)(t)(a)(.)(a)(n)(a)(t)(a)(g)(a)(o)(s)(u)(k)(i)(n)(a)(n)
(o)(w)(o)(o)(m)(o)(i)(d)(a)(s)(i)(t)(e)(,)(o)(o)(k)(u)(r)(i)
(i)(t)(a)(s)(i)(m)(a)(s)(i)(t)(a)(k)(a)(r)(a)(,)(g)(o)(s)(h)
(o)(u)(m)(i)(k)(u)(d)(a)(s)(a)(i)(.)(n)(a)(m)(a)(b)(o)(s)(i)
(m)(o)(a)(r)(i)(m)(a)(s)(u)(k)(a)(r)(a)(,)(h)(a)(y)(a)(k)(u)
(o)(m)(e)(s)(i)(a)(g)(a)(r)(i)(k)(u)(d)(a)(s)(a)(i)(.)(t)(o)
(r)(i)(i)(s)(o)(g)(i)(,)(o)(s)(i)(r)(a)(s)(e)(m)(a)(d)(e)(.)
(k)(e)(i)(g)(u)

【TRONカナ】(234打鍵)
(は)(い)(右(の))(い)( )(な)(つ)(の)(左(ら))(か)(り)(も)(い)(く)((左右(も)))(ん)
(し)(の)(左(き))(右(ん))(す)(く)(な)(り)(ま)(し)(た)(右(か))(、)(右(し))(な)(さ)
(ま)(い)(か)(右(か))(右(を))(す)(右(こ))(し)(右(て))(し)(ょ)(う)(か)(。)(左(ょ))
(ん)(左(し))(つ)(、)(ま)(右(こ))(に)(左(に))(右(か))(ま)(れ)(て)(右(い))(か)(く)
(の)(う)(右(し))(左(な))(ま)(い)(り)(ま)(し)(た)(ら)(、)(り)(ょ)(う)(し)(さ)(ん)
(の)(い)(右(き))(右(て))(、)(と)(て)(も)(し)(ん)(左(に))(ん)(な)(左(ら))(も)(の)
(を)(右(し))(つ)(右(の))(ま)(し)(た)(。)(あ)(な)(た)(右(か))(右(を))(す)(き)(な)
(の)(を)(右(を))(も)(い)(右(た))(し)(て)(、)(右(を))(右(を))(く)(り)(い)(た)(し)
(ま)(し)(た)(か)(ら)(、)(右(こ))(し)(ょ)(う)(右(し))(く)(右(た))(さ)(い)(。)(な)
(ま)((左右(ょ)))(し)(も)(あ)(り)(ま)(す)(か)(ら)(、)(は)(右(ん))(く)(右(を))(右(
く))(し)(あ)(右(か))(り)(く)(右(た))(さ)(い)(。)(と)(り)(い)(左(る))(左(き))(、)
(右(を))(し)(ら)(左(に))(ま)(右(て))(。)(右(の))(い)(左(く))

【M式】(321打鍵)
(H)(Ai)(K)(Ei)( )(N)(母(Ai))(N)(O)(H)(I)(K)(A)(R)(I)(M)(o)(i)(K)
(u)(B)(u)(子(W))(S)(i)(N)(o)(G)(i)(Y)(a)(S)(u)(K)(u)(N)(a)(R)
(i)(M)(a)(S)(i)(T)(a)(G)(a)(、)(M)(I)(N)(A)(S)(A)(M)(A)(i)(K)
(a)(G)(a)(o)(S)(U)(G)(O)(S)(i)(D)(e)(子(S))(o)(u)(K)(a)(子(、))
(H)(On)(Z)(母(Ui))(、)(M)(A)(G)(O)(N)(i)(S)(e)(G)(a)(M)(a)(R)(e)
(T)(e)(T)(I)(K)(A)(K)(u)(N)(o)(U)(M)(I)(H)(e)(M)(A)(I)(R)(i)
(M)(a)(S)(i)(T)(a)(R)(a)(、)(子(R))(Ou)(S)(I)(S)(a)(子(W))(N)(o)
(I)(E)(D)(e)(、)(T)(o)(T)(e)(M)(o)(S)(母(i))(S)(母(e))(N)(a)(H)
(I)(M)(O)(N)(O)(W)(o)(M)(I)(T)(u)(K)(e)(M)(a)(S)(i)(T)(a)(。)
(a)(N)(a)(T)(a)(G)(a)(o)(S)(U)(K)(i)(N)(a)(N)(o)(W)(o)(O)(M)
(O)(i)(D)(A)(S)(i)(T)(e)(、)(o)(O)(K)(U)(R)(i)(i)(T)(a)(S)(i)
(M)(a)(S)(i)(T)(a)(K)(a)(R)(a)(、)(G)(O)(子(S))(Ou)(M)(I)(K)(u)
(D)(a)(S)(a)(i)(子(、))(N)(A)(M)(A)(B)(O)(S)(I)(M)(o)(a)(R)(i)
(M)(a)(S)(u)(K)(a)(R)(a)(、)(H)(A)(Y)(A)(K)(u)(o)(M)(E)(S)(i)
(a)(G)(a)(R)(i)(K)(u)(D)(a)(S)(a)(i)(子(、))(T)(O)(R)(i)(I)(S)
(O)(G)(i)(、)(o)(S)(i)(R)(a)(S)(e)(M)(a)(D)(e)(子(、))(K)(Ei)(G)
(u)

〔凡例〕
 左:左親指シフト
 右:右親指シフト
 L:左英字シフト
 R:右英字シフト
 子:子音シフト(左親指)
 母:母音シフト(右親指)
 その他:ノーマル打鍵時の仮名、記号、および(ローマ字変換前の)英数記号

 親指でシフトする方式なので無視するわけにもいかないと思い、TRONカナ配列とM式についても調べてみた。

 TRONカナ配列は、NICOLAの「清音のクロスシフトで濁音」という制約がなく、高頻度の仮名が単独打鍵となっているため、シフトを打つ回数が少ない。

 M式は、子音と母音の組み合わせをベースにして撥音・促音・拗音などを子音シフトと母音シフトで省打鍵化しているが、シフト回数を加算すると、その効果が相殺されている。

 この結果を見た限りでは、JIS仮名が最も打鍵数が少なく、Qwertyローマ字も打鍵数はそれほど多くはない。打ちやすさは他の最適化された配列に比べれば低くなるだろう。シフト操作とのトレードオフだから、当然、シフト操作のコストをどう計算するかで意見が分かれるはずだ。もっと正確に計算するにはキーの位置や運指パターンなども評価すべきだということになり、諸説入り乱れてキーボードを選ぶ前にどの説を選ぶのかという難しい問題になってしまう。結局、データを参考にしつつ、実物のキーボードと自分の手で試してみるしかないだろう。

親指シフトの仮名縛りを解く方法

 ところで、なぜ親指シフトキーボードは「親指シフト」という特定の仮名の配列や入力方法と抱き合わせになっているのだろうか。親指シフトキーがローマ字入力やJIS仮名入力のユーザーにも有効に活用できれば、小指でしかシフトできないキーボードに不満を感じている多くの人に支持されるのではないかと思うのだ。(※1)

 キーボード全体の物理的なデザイン/各キーの論理的な配列/同時打鍵シフトという入力方法が一体となってこそ真価を発揮できるというのは理解できるけれども、キー配列やシフト方法がオプションで選べた方がありがたいし面白い。もしも自由にカスタマイズできるのなら、親指シフトキーボードという土台の上で自分好みの配列を自作して快適な日本語入力を楽しむことができるだろう。

 そんなことを考えながら、以下のような表を作ってみた。キーボード自体を比較するわけではないので、キーボードの名前を記入する項目はない。

表2


シフトキーの種別
親指 小指 中指
日本語入力 仮名漢字変換 仮名入力 NICOLA
TRONカナ配列
JIS仮名配列
花配列
ローマ字入力 NCOLA?
M式
Qwerty配列
Dvorak配列
超多段シフト
漢字直接入力
2ストローク系 T-code
TUT-code
欧米語入力(※2) Qwerty配列
Dvorak配列
多言語入力(※3)

 この表を見れば分かるように、親指シフトキーボードが活躍できるエリアがたくさん残っている。まずは手始めにローマ字入力に親指シフトを取り入れてはどうだろうか? 「ローマ字入力にシフトキーなんか使わないだろう」なんて思った人には、「SKK 日本語入力」というキーワードで検索することをおすすめする。思っていたよりも世界は広い。


(※1)
エスリルのキーボード「NISSE」の「キーキャップの仕様別の割合」を見ると「親指シフト」を選ぶ人が20%いることが分かる。その逆に、JIS仮名仕様の「親指シフトキーボード」があったらどうだろう。親指でシフトできれば拗促音の入力が楽になるはずだ。英文やローマ字入力についても、Dvorak配列が選択できて親指でシフトできるとなれば、使ってみたいと思う人は今より増えるだろう。
(※2)
詳しくは知らないが、ドイツ語やフランス語などを入力する際に使うデッドキーはキーボードの片隅に追いやられている。これを親指シフトで入力できるようにすれば便利になるかもしれない。
(※3)
最近「親指シフトを世界に」というサイトを教えていただいて、僕のような単なる 思いつきではなく真面目に研究されている方々がいることに感銘を受け、日本語キーボードから国際的なキーボードへと発展することを願って「多言語入力」の欄を追加した。

打鍵数はこれでいいのか?

はじめに

 以前から気になっていたことだが、NICOLAの公式サイトにある比較アニメーションには違和感がある。親指シフト入力が優れた日本語入力方式であることを否定するつもりはないが、この比較方法には何だかアンフェアな匂いを感じるのだ。

不公平な打鍵の数えかた

NICOLA-Romaji.jpg

 「ニコラ」がいきなり片仮名で入力されているのは、どちらも同じだからまだいいとして、ローマ字入力で「つ」を「tsu」、母音の前ではない「ん」を「nn」で入力しているのは不自然だ。それに、ちょくちょく親指シフトキーが押されているのに、その分は打鍵数としてカウントされていない。「圧倒的な打鍵数の違い」を出すために意図的にやっているのではないだろうか?

 “《 「JISかな入力」を含む入力比較アニメーションはこちらへ 》”という案内があったので、もちろんそれも開いてみた。

NICOLA-JIS-Romaji.jpg

 どの方式でも同じペースで打鍵することを想定して入力にかかる時間を比較しているらしいことは一応理解できたが、このアニメーションでは速すぎて、どのように打鍵をカウントしているのかがよく分からない。

 そこで、「各入力方法の仕様比較」というページを見てみた。

NICOLA-Hikaku.jpg

 この表の「打鍵に必要なストローク数」という項目を見ると、親指シフトはすべて「1ストローク」となっているので、1文字単位で打鍵数を比較しようとしているのだと分かる。ところが、よく見てみると怪しいところがある。

 清音・濁音・半濁音・促音・句読点が1文字だというのはいいけれども、拗音というのは普通「きゃ」「きゅ」「きょ」のように2文字で表記するので、親指シフトで「1打鍵」というのは事実に反している。仮に拗音を小書きの「ゃ」「ゅ」「ょ」のことだと解釈すれば、JIS仮名で「2ストローク」というのはシフトをカウントしていることになる(句読点もJIS仮名では「2ストローク」となっているので、そう解釈するしかない)。つまり、「親指シフトはカウントしないが小指シフトはカウントする」ということだ。

 ローマ字入力についても、濁音と半濁音が「2 or 3ストローク」、拗音・促音が「1 or 2ストローク」となっているのがどういうことなのかよく分からない。一般的なローマ字入力では単独の「っ」「ゃ」「ゅ」「ょ」を2ストローク以下で打つ方法はない。拗音の場合は前の仮名、促音の場合は後の仮名と合わせて「3ストローク」となるのを2つに分けたとも考えられるが、そういう説明はどこにも書いてない。普通に2文字単位で比較した方が分かりやすいし実態にも合っているだろう。

 数字だけは「かなモードのままで入力可能」などと打鍵数とは直接関係ないことが書いてあるのも理解に苦しむ。(上の方には親指シフトキーボードの「かな/英字配列」が「3段」で「かな/英字キー数」が「30キー」と書いてある。これではどうやって数字を打つのか分からない)

 「打鍵数と入力速度比較」や「指の使用率比較」にも突っ込みどころがいくつかあるけれども割愛する。

 要するに、どんな基準で比較しているのかが不明瞭で、もしかすると親指シフトに有利な結果を出すために恣意的な方法で比較しているのではないかと疑う余地ができてしまっているのだ。

公平な打鍵の数えかた

 どんな方式に対しても公平な数えかたをするには、キー操作によって発生するキーコードを機械的にカウントするのがいいだろう。そのキーコードがどのように解釈されて、どの文字が入力されるのかなどという各方式の内部事情から独立した中立的な基準として使えるはずだ。

 実際のキーコードをそのまま書くと煩雑になるので、単純化して、キーが押されたことを示す“(”と離されたことを示す“)”の内側にキーの識別子を入れることにする。つまり、“(x)”は、xが押されてxが離された(単独打鍵)を示すわけだ。

  1. 逐次打鍵
    • (x)(x) : x押 ・ x離 ・ x押 ・ x離
    • (x)(y) : x押 ・ x離 ・ y押 ・ y離
  2. シフト打鍵
    • (x(y)) : x押 ・ y押 ・ y離 ・ x離
    • ((x)y) : x押 ・ y押 ・ x離 ・ y離
  3. 同時打鍵
    • ((xy)) : xy押 ・ xy離 (xyは順不同)

 逐次打鍵は説明不要だろう。しかし、逐次打鍵とシフト打鍵の区別は曖昧で、各方式の解釈に依存することになる。複数のキーを続けて打つ場合は隣接する打鍵が重なり合ってシフト打鍵のタイミングになる場合がある。通常のJIS仮名入力やローマ字入力では、先に打ったキーがシフトキーならシフト打鍵、文字キーなら逐次打鍵として処理される。

 同時打鍵は、実際にはシフト打鍵のどちらかのパターンに含まれることになる。xとyの打鍵順を問わないことを示すために別の表記にした。

 通常使われる複数のキーの組み合わせは、この中のどれかにあてはまるはずだ。CtrlとShiftを押したまま複数のキーを逐次打鍵する場合には“((CS(x)(y)(z)))”などとすればよい。

 この記法を使えば、キーが押されたことを示す“(”の個数を数えれば、どんな入力方式がどのように解釈しようとも、必ず打ったキーの数が分かることになる。

 このように、動かしがたい打鍵情報に基いて、単純にキーを押した回数を打鍵数だと考えるのが公平で妥当な方法だろうと思う。現にそのキーを押したという事実がある(その打鍵がなければ別の字が入力されてしまう)のだから、そのキーを無視してはならないはずである。

おわりに

 せっかくなので、上に書いた記法と数えかたを使って「日本語を大切に。ニコラ」という短文を各方式で入力した場合の打鍵列を比較してみる。

【親指シフト】(22打鍵)
((右ち))(ほ)(ん)((右こ))((左う))(た)(い)
(せ)(つ)((右ち))(。)(変)((右ち))(こ)(ら)
(片)(確)

【JIS仮名】(20打鍵)
(に)(ほ)(ん)(こ)(゛)(L(わ))(た)(い)(せ)
(つ)(に)(L(る))(変)(に)(こ)(ら)(片)(確)

【ローマ字】(28打鍵)
(n)(i)(h)(o)(n)(g)(o)(w)(o)(t)
(a)(i)(s)(e)(t)(u)(n)(i)(.)(変)
(n)(i)(k)(o)(r)(a)(片)(確)

〔凡例〕
 左:左親指シフトキー
 右:右親指シフトキー
 L:左英字シフトキー
 R:右英字シフトキー
 変:変換キー
 確:確定キー
 片:片仮名変換キー
 その他:ノーマル打鍵時の仮名、記号、および(ローマ字変換前の)英数記号

 驚くべきことに、JIS仮名の方が親指シフトより2打鍵も少なくなってしまった。この例文では、たまたま同時打鍵の「に」が3回も出てきたせいで打鍵数が増えてしまったのだ。このように、ある方式にとっては不利なテキストをわざと使うことは簡単にできるので、あまり打鍵数にこだわらない方がよいのではないかと思う次第である。

カレンダー

<   2016年12月
        1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31

最近のツイート

最近のコメント

このページについて

このページには、過去に書かれたブログ記事のうち、カテゴリ「ローマ字入力」に属しているものが含まれています。

次のカテゴリはローマ字漢直です。

最近の記事はメインページで、過去の記事はアーカイブで閲覧できます。

Creative Commons License
このブログはクリエイティブ・コモンズでライセンスされています。
Powered by Movable Type 4.261