花のくに
作成者:冨樫 雅文

公開日:1999年11月 8日
最終更新日:2004年 2月24日


   

花のくに
では
中指シフト方式仮名文字配列

についての
情報

提供します




」は標準キーボードを用いて仮名文字を入力するための配列で、「」とともに使用することができます。「花」配列の特徴はシフトキーを文字キー領域の中央に配置して中指でシフト操作ができるようにした点にあります。
 

中指シフト方式

花は中指シフト方式による仮名文字配列である。JISで定める仮名文字は63字あるので、これを標準キーボードの文字キー48鍵を使用して入力するためには、ひとつのキーのふたつ以上の仮名文字を定義したうえでシフトキー機構によって多重定義された文字を区別する必要がある。従来のJISカナ配列はその典型例である。このときシフトキーは両手の小指の位置にあるので、「小指シフト」ということができる。また、「親指シフト」の仮名文字配列では、小指より強い親指の位置に新たに仮名文字用のシフトキーを設け、この親指シフトキーの同時押し(または順次押し)によってシフト側の文字を入力するようになっている。JIS仮名配列が4段すべてを使用していたのに対し、親指シフト方式では3段構成になっていて、タッチタイピングへの配慮がなされている。JIS仮名配列もその後改良を加えた新JIS仮名配列では4段構成から3段構成へ変えた。

これらの仮名配列では、文字キー領域の外側にあるシフトキーを小指や親指で押すという共通の思い込みにもとづいている。もともと下段の左右両端にシフトキーを配置したのは、タイプライターの開発初期に大文字しか打てなかったものにシフト機構を導入して小文字も打てるようにした際、既存のキーボードに対して「最小限の改造」で済むように文字キー領域に手を付けないでその外縁部に追加したことに由来している。今のシフトキーの位置は、このような100年前の手抜き工事の残滓であって合理性のカケラも認めることができない。親指シフトはそれにくらべて改善されてはいるが、文字キー領域の外側にシフトキーを置くという、技術の持つ慣性の呪縛から遁れ得ていない。

シフトキーは本当に「付け足し」なのだろうか?

仮に33鍵を使って仮名文字63字を配列し、高頻度の33字を(シフトしない)ノーマル側に置き、残り30字をシフト側に追いやるくとすると、シフト操作を必要とするこれら30字の低頻度文群の総使用頻度は約14%になり、これにともなうシフトキーの使用頻度は約12%にも達する。これを左右ふたつのキーに担わせるとしてもそれぞれ約6%の使用頻度となり、これは最高頻度文字である濁点「゛」(約10%)に次ぐ頻度でありその次の「い」(5、7%)を凌いでいる。仮名文字の使用頻度からみるかぎり、シフトキーは文字キー領域の外縁にとってつけるような「付け足し」などではなく、最重要なキーであることがわかる。

そこで、「シフトキーに最も良い場所を与える」という方針を打ち出す。器用に動くということと最も長いという条件から中指を使用することとし、さらに中指のホームポジションである(Qwerty配列の)「」と「」の位置にシフトキーを置くことにする。つまり、シフトキーを最上席である文字領域の中央に誘致することから仮名配列の設計を始めようというのである。

これが「中指シフト方式」である。
 

仮名文字配列 〜花〜
文字配列を決める方法は多いが、この配列では、主観を排するためと作業の高速化のために計算機を使用して「最も良い配列」を決定した。
使用するキーは3段11列の33キーとする。「D」と「K」の位置にシフトキーを置き、31文字をノーマル側に、32文字をシフト側に置く。通常の文字キーを使用するのでシフトは順次押しとする。その上で、最も良い配列の定義とは、
・ 1文字当たりの平均入力速度が最も速い
・ 各指にかかる負荷があらかじめ指定したものに最も近い
というふだつの条件を満たすこととする。つまり、良い配列とは「速く打てて疲れない」配列のことであると考えた。これらの条件を数値的にあきらかにするために、3種類のデータを用意する:
・ 仮名文字使用頻度
・ 打鍵速度(キーからキーへの移動時間)
・ 指使用頻度分布(自由に打鍵したときの各指の使用瀕度)


これらのデータを使用して、あらかじめ乱数を使って作成した仮の配列を出発点にして、ふたつの文字位置の交換によってして少しづつ配列を変えながら「より良い配列」であるかを判定する試行錯誤をくりかえして最終的に「最も良い配列」(どのような入れ換えをしてももはや改善しない状態)を見つけ出す。いわゆる最適化計算が実行された。さらに、出発点を変えて10000回のこのような最適化計算の結果から10000種の候補を挙げ、これらの中からさらに「最も良い配列」を見つけた。

それが「」配列である(10000回の最適化計算のの中の7737番目)。

おおざっぱな計算によると、ランダムに作った配列が「花」配列と同じ程度の性能を持つ確率は約「10の23乗分の1」である。これに対し、1PPMは10の6乗分の1、つまり100万分の1である。10の23乗分の1とは、たとえば、さかづき一杯の水の中の1個の水分子(HO)ていどの割合である。

下の図は「花」配列を表わしている。1枚目は、ノーマル側とシフト側をひとつにまとめたもの、2枚目はノーマル側のみの配列、3枚目はシフト側のみの配列をそれぞれ示している。

シフト側の文字は必ず「クロスシフト」(反対側の手でシフトキーを押す)で打つこととする。
 
 

「花」配列 赤字はノーマル側  青字はシフト側  はシフトキー
 

「花」配列 -ノーマル側-  はシフトキー
 

「花」配列 -シフト側-

 

花配列を使用する際に…

花配列を使用しているとあることに気が付く。指が最下段に行くことがとても多い。ローマ字入力をしているときはそれほどでもないが、花へ移行すると(最下段へ行くために)やたらと指を曲げて打っていることがわかる。
下の表は花配列を使用したときに、指が上・中・下の3段の間をどのような確率で移動するかを示している。
 
第2打上段
第2打中段
第2打下段
第1打上段
7.8%
14.7%
8.1%
第1打中段
14.6%
18.6%
10.6%
第1打下段
7.8%
12.1%
5.9%
段間遷移確率

最下段の使用率は約25%で全体の1/4である。(Qwerty)ローマ字にくらべると(XやVや/などの低頻度文字がない分)花では最下段もバランスよく使われている。これには、花配列を設計する際に基礎データとして使用した自由打鍵データが手首を机上面につけないで浮かぜて打鍵していることも影響している。手首を接地して打っていると最下段には指が届きにくい。ずいぶんと指を曲げないと届かない。

花配列では手首を浮かせて打つと楽に打てるようになる。 または、手首を置くパームレストを使用するとよい。

また、右手と左手の使用率は下の表のようになる。
 
第2打左手
第2打右手
第1打左手
11.9%
38.0%
第1打右手
30.2%
19.9%
手間遷移確率

さらに、

同手打鍵率   =31.8%
同指打鍵率   =28.5%
同手同指打鍵率= 7.7%
である。とくに同手同指打鍵率(同じ手の同じ指を使って連続して打つ確率)が7.7%と低く抑えられていることは重要で、並列動作がきかないこのような打鍵列は最も打ちにくいものである。
また、交互打鍵率(左右の手を交互に使って打つ確率)は68.2%である。

所要打鍵数

花配列による入力ととローマ字入力における1文字当たり所要打鍵数を下の表に示す。
濁音を2文字とする(「が」を「か」と「゛」の2文字とする)計算と濁音を1文字とする(「が」を1文字とする)計算で異なる。
花配列ではシフトキーを押すことも1打鍵として計算する。
 
ローマ字
濁音を2文字とする
1.18
約1.5
濁音を1文字とする
1.31
約1.7
1文字当たり所要打鍵数

 

花の姉妹

風2.20版からは、花配列と同時に誕生した残り9999種の配列のうち、第2位から第10位までの配列を新たに標準の仮名配列として加えた:

 
順位/10000
配列名
1文字平均打鍵時間
指負荷バランス
評価値
172.709ミリ秒
0.0441
−7.1229
172.958ミリ秒
0.0575
−7.0932
173.395ミリ秒
0.0141
−7.0905
173.233ミリ秒
0.0415
−7.0831
173.288ミリ秒
0.0395
−7.0802
173.486ミリ秒
0.0198
−7.0790
173.402ミリ秒
0.0291
−7.0789
173.532ミリ秒
0.0197
−7.0755
173.529ミリ秒
0.0202
−7.0753
10
173.319ミリ秒
0.0431
−7.0751

 

花のたより

花についての質問や意見、また花を使用した感想や不具合などは下記へお送りください

e−mail   togasi.masatomo@nifty.ne.jp