11月19日

「カーネーション」昨日の分を視聴中。親父が怒り出したときに卓袱台を片付けるという技術を、人類はまだ発明していなかったようである。
kami_kazushige 9:05am via HootSuite

さて、これから何をしようか。(1)「カーネーション」の続きを見る。(2)「紙の民」の続きを読む。(3)「卓袱台」の「袱」という字をG-Codeに追加する。(4)とりあえずこのウインドウを閉じる。
kami_kazushige 9:42am via HootSuite

 そんなわけで「袱」を追加。

c1	袱
〔GcodeGoogleD.txt〕

11月15日

 さらに以下の13文字を追加。「珈」と「琲」は「コーヒー」以外にはまず使わないので片仮名の「コ」と「ヒ」のストロークからの連想で割り当ててみた。

l2	噂
s2	綾
l3	筈
y7	琲
l8	乖
'9	鬱
.9	蒼
p9	躁
l9	勃
u9	蝶
f0	翔
e0	濤
u0	珈
〔GcodeGoogleD.txt〕

 このへんの漢字は熟語のバリエーションが少ないので、実際に打ってみて微調整するのは簡単だ。もともとそのつもりでユーザー定義領域を300文字分空けておいたのだった。

11月14日

 「漢索窓」に添付された“g.tbl”には、以前試しに追加していた「披彙央誕紹鍵茸誰韓」の9文字が入っているけれども、手元にあるデータを調べてみると一部のテーブルに「茸」が入っているだけだった。

 これは「松茸」が漢直対応になったときにこっそり追加した漢字で、実は(Qwerty配列では)「k3」という連想式になっているんだけれども、そんなことは今はどうでもいい。

 とりあえず残りの8文字を「GoogleIME」と「Gimmodoki」に追加してみたが、どうも打ちにくい。たぶんそれで削除したんだろうと思う。せっかくなので、あれこれ試して割り当てを変えてみた。

y1	披
r1	蔽
w2	只
h2	拉
n2	麺
g3	彙
c3	央
r3	誰
h3	鍵
t3	茸
n3	誕
s3	韓
m3	梨
z3	媛
t2	滋
h4	茨
z4	埼
.7	阜
o7	栃
e7	潟
u7	准
i7	沖
r9	紹
〔GcodeGoogleD.txt〕

 ついでに以前から追加しようと思っていた漢字も入れてみた。これで、県名は全部入力できるようになっただ。(おっと、「」も未定義だったか)

11月12日

 GoogleIMをインストールせずに秀丸エディタ上で仮名漢+漢直で入力できるという凄いマクロがあって、ハマってしまった。

 今まで漢字の打ち方を調べる時は、秀丸でコピーして漢索窓でダブルクリック(またはEnterを打鍵)するしかなくて面倒だったので、何とかできないものかと思ってマクロをいじっているうちに実現できてしまった。こんなことがこんなに簡単にできるなんて…、などと言って喜んでいるうちに、Gimmodokiの作者・IKKIさんが確定文字列の打鍵図が自動で表示できるようにしてくれた。できるまでに何年もかかった「漢ナビ」と同じことが、これほど簡単に実現できるなんて、本当に夢のようだ。

 あらためて、IKKIさんに感謝。

9月12日

 「漢直Win 1.28」付属の「漢索窓」を入れてさらに快適になった。G-Codeのテーブルが入っているのは本当にありがたい。ところで未定義の部分に、こんな漢字を追加してたんだっけ?

;; 後に追加されたと思われる『披彙央誕紹鍵茸誰韓』の 9 文字を含みます。

 自分でもすっかり忘れていた。こりゃ、リハビリが必要だな。

9月11日

 借り物のノートパソコンに「Google 日本語入力」と「DvorakJ」を入れて、やっとまともに入力できる環境が整った。今まで、読みにくいソースに(日本語で)コメントを入れるというただでさえ面倒な作業が、輪をかけて介になっていた。


[ 日記の目次 | 前の回 | 次の回 | G-Code (目次) | m(as)m's home position ]

 最近、XOOPS Cubeというソフトをインストールしました。各種のモジュール(ユーザーの方々が、ブログ/Wiki/フォーラム/チャット/SNSなどを開発して公開しています)を追加すれば、いろんなモノに化けるという面白いシステムです。

 さっそく「第二実験室」という名前を付けて、あれこれ実験しています(2009年12月末公開を目指して、現在鋭意準備中です)。


[ 錬金術師の実験室 | m(as)m's home position ]

(2007-10-14)

どんなキー操作にするか

 “速記入力”の操作方法が煩雑では本末転倒になってしまいます。例えば、

  • コントロール+何とかキーで“速記入力”モードに切り替わる
  • シフト+何とかキーを押している間は“速記入力”状態になる
などという面倒なやり方は避けたいところです。そこで、まだ使われていない簡単なキー操作を捜してみたところ、変換操作に使うキー[*1]にはまだ機能を追加する余地があることに気付きました。

 ここで、〔変換〕を押してから離すまでの間のキー操作を、少し詳しく見てみます。

〔変換〕を押して離す

 この「」と「」の部分をあえて詳しく書くと、

〔変換〕を押して、特に何もせず、離すすると、変換結果が表示される。[*2]

となります。これを、

〔変換〕を押して、文字キーを打って、離す。すると、変換結果に何かが追加される。

に変えてやれば、新たな機能を追加することができます。

 つまり、〔変換〕を押している間に(それを一種のシフト状態とみなして)文字キーを打つと、それだけで“速記入力”ができることになります。もともと変換操作のために押したキーなので、シフト操作のための新たなコストは発生しません。

 しかも、〔変換〕を押してから離すまでという条件があるので、通常のシフト操作中の逐次打鍵とは違って、

  • 1打鍵・2打鍵(・3打鍵…)のパターンを使い分けることができる
  • 変換結果によって別の文字列を割り当てることができる
というメリットも出てきます。これならば、充分、実用になるでしょう。

割り当て方の問題

 ここまでは、主に入力の仕組みの話でした。それだけなら今までに何度か[*3]考えてみました。

 問題は、変換結果に追加する文字列[*4]をどこで区切ってどのキーに割り当てるか、ということです。ここから先は、考えるだけでなく実際に試してみなくては分かりません。

 入力の仕組みをある程度作ったところで、とりあえず頻度の高そうな送り仮名を適当なキーに割り当てました[*5]。いろんな文章を入力してみて、どんなパターンが快適かを確かめながら、少しずつ変更したり追加したりしていきます。

 主な仮り仮名を追加していくうちに気付いたことが、いくつかあります。

    (1) 送り仮名をひとつ追加すると、その組み合わせパターンのために多くの割り当てを追加しなくてはならなくなる
    (2) 同じ送り仮名が状況によって別の位置に表示されると、妙に気になる
    (3) 同じ送り仮名(を含むパターン全部)を、あるキーから別のキーに移動しても、違和感はなく、すぐに慣れる

 (1)は、予想していたことですが、キーの組み合わせが爆発的に増えてしまって、割り当て作業が事実上不可能になりました。割り当て作業を中断して、同じパターンをまとめて定義できるように入力ソフトの方を改良しました。

 (2)は、はっきりとは覚えていないキーでも割り当て方に矛盾があれば気付くということです。なんとなく試し打ちをするだけでチェックできるのは有り難いことです。

 (3)は、頻度の高い送り仮名と交換したり、別のパターンに合わせたりするために移動した場合です。新しいキーやパターンを何度か打って覚えてしまえば、とりあえず古い記憶は上書きされるようです(記憶が定着した後で変更するのは避けた方がいいかもしれません)。

 こんな感じで、手さぐりしながら割り当てを続けていきます。時間のかかる作業ですが、機械的に一気に処理するより試行錯誤の過程を楽んだ方がいいような気がしています。

覚えやすい仕組み

 そんなに多くのパターンをどうやって覚えるのかと心配する必要はありません。送り仮名の打ち方をひとつ覚えるたびに応用範囲が爆発的に広がるだけのことです。

 打ち方を調べるために何か特別な操作をする必要はありません。〔変換〕を押したときに、仮想鍵盤の表示を見るだけです。

  • 〔変換〕を押している間は、仮想鍵盤に送り仮名の候補が表示される

  • 入力行:
    入力  
    仮想鍵盤:
     ‐   ‐   ‐   ‐ 
     ‐   ‐   です 
     ‐   ‐   ‐ 
     
     ‐ 
     まで 
     から 
     ‐ 
      
     ‐ 
     いたす 
     
     ‐   ‐   ‐   ‐ 
     する   せず   させる 
     して   しない   すれば 
     しよう   した   します   できる 

 仮想鍵盤には、送り仮名の候補が表示されます。その中に入力したい送り仮名があれば(〔変換〕を押したままで)表示された位置のキーを打ち、なければいつも通りに〔変換〕を離すだけです。

  • 続けて入力できる送り仮名があれば、それも仮想鍵盤に表示される

  • 入力行:
    入力して  
    仮想鍵盤:
     ‐   ‐   ‐   ‐ 
     ‐   しまう   くる 
     ‐   みる   おく 
     ‐   ‐   ‐   ‐ 
     
     ‐ 
     ‐ 
     ‐ 
     ‐ 
      
     ‐ 
     ‐ 
     ‐ 
     ‐ 
     
     ‐   ‐   ‐   ‐ 
     いる   ‐   ‐ 
     ある   いて   いない   ‐ 
     ください   いた   います   ‐ 

 実際にやってみて分かったことですが、1打鍵するごとに送り仮名が入力されていくのは、予想以上に快適です。一度これを知ってしまうと、1字ずつ入力するのが億劫になります。ローマ字入力で「ja」と打てば「じゃ」と入力されることを知っていながら、わざわざ「zya」などと打つ気になれないのと同じような感じです。

 覚えようと努力しなくても、楽なやり方を選んでいくだけで自然に覚えてしまいます。

打ち方が予想できる

 いくつかの送り仮名の打ち方を覚えると、まだ一度も入力したことのない送り仮名の打ち方が予想できるようになります。

 例えば「入力」の送り仮名のうち、

    +する
    +した
    +します
これだけ覚えた段階で、「+しました」の打ち方が予想できるのです。

 さらに「+できる」を覚えると「+できた」「+できます」「+できました」も予想通りに入力できます[*6]。この調子で送り仮名を一つ覚えるたびに応用範囲が広がっていくわけです。

 連想式でないことは確かですが、無想式ともかなり違った感じになりました。それでは一体何式なのかというと、ピカソだけに“類推式”[*7]なのです。


[*1] 【変換操作に使うキー】
仮名から漢字に変換するときは、普通、スペースか変換キーを押します。以下、このキーを〔変換〕と書くことにします。

[*2] 【すると、変換結果が表示される。】
厳密には、

〔変換〕を押すと、変換結果が表示される。その後、特に何もせず〔変換〕を離す。

と書くべきですが、分かりやすく説明するために順序を入れ替えました。

[*3] 【今までに何度か】
以下のページにあれこれと書きましたが、今とはかなり内容が違っているので、あくまでも参考程度にしてください。
「G-Quick」(2001)、「G-Code」で速記を(2000)、「漢ナビ2」(2000)

[*4] 【変換結果に追加する文字列】
たいていは数文字程度の活用語尾や助動詞や助詞などです。以下、これを「送り仮名」と呼ぶことにします(文法的には適切ではないかもしれませんが、ほかに簡潔な用語を思い付かなかったので)。

[*5] 【適当なキーに割り当てました】
適当とはいっても、次のようなルールに沿って割り当てています。
  • 同じ送り仮名は必ず同じキーで入力できるようにする
  • 使用頻度や運指を考慮して調整する
  • 「S→する」「T→した」「D→です」「M→ます」などのような連想を使わない

[*6] 【予想通りに入力できます】
もちろん、そのためには予想を裏切らない割り当て方をしておく必要があります。今のところ基本的な送り仮名は全て予想通りの入力が可能です。

[*7] 【ピカソだけに“類推式”】
分かる人には分かると思いますが、実際はその逆で、“類推”→“ピカソ”という言葉遊びです。ついでに、辞書にちょとした企みを仕掛ています。

[ Picasso (目次) | 錬金術師の実験室 | m(as)m's home position ]

(2001-09-10)


G-Codeを加速する簡単な方法

 G-Codeを使って漢字を直接入力しても、話す速さにはとても追いつけない。「G-Codeで速記を」や「漢ナビ2」に書いた方法を試すには時間がかかる。そこで、もっと手軽に試せる簡単な方法について考えてみた。

交ぜ書き変換の応用

 「交ぜ書き変換」は、本来は漢直の補助入力手段として使われている。
 この仕組みを応用すると、「漢字+1ストローク+変換」で送り仮名(など)を補完して一文節をまとめて入力できるようになる。

(図1)「私」+1ストローク(左手側)
+―――――+―――――+―――――+―――――+ +―――――+
|     |     |     |     | |     |
+―――――+―――――+―――――+―――――+ +―――――+
|たち   |たちは  |どもも  |としては | |から   |
+―――――+―――――+―――――+―――――+ +―――――+
|からは  |どもと  |どもは  |ども   | |どもの  |
+―――――+―――――+―――――+―――――+ +―――――+
|としても |どもに  |のほう  |には   | |からも  |
+―――――+―――――+―――――+―――――+ +―――――+

(図2)「思」+1ストローク(右手側)
+―――――+ +―――――+―――――+―――――+―――――+
|     | |     |     |     |     |
+―――――+ +―――――+―――――+―――――+―――――+
|いまして | |いますから|って   |いましたが|うわけで |
+―――――+ +―――――+―――――+―――――+―――――+
|うのです | |うので  |います  |いますが |いました |
+―――――+ +―――――+―――――+―――――+―――――+
|われるので| |うが   |われます |わない  |えない  |
+―――――+ +―――――+―――――+―――――+―――――+

[ (裏話) | (目次) | 錬金術師の実験室 | m(as)m's home position ]

(2001-05-05)

キーボードの使い心地

 キーボードも一種の筆記具だから使い心地は大切です。

 キータッチがよく話題になります。確かにキータッチはキーボードの使い心地を左右する大きな要素ですが、人によって好みが異なるため、これが一番といったようなものを決めることはできません。

 ここでは、もっとキーボード全体に目を向けてみます。

キーのレイアウト

 キーのレイアウトを見ると、どのキーボードも英文用の機械式タイプライターと基本的に同じだということに気付くでしょう。

 現在、最も多く見かけるキーボードは、図1のようなレイアウト[*1]になっています。

(図1)
 ______ ______ ______ ______ ______ ______ ______ ______ ______ ______
|      |      |      |      |      |      |      |      |      |      |
|  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   |  ,   |  .   |  /   |
        |______|______|______|______|______|______|______|______|______|______|

       (固定ピッチフォントでも表示が崩れる場合は、サイズを変更してみて下さい)

 このレイアウトには問題があります。詳しく言うと、「キーの物理的なレイアウト」と「文字の論理的なレイアウト」のどちらにも問題があるのです。

物理レイアウトの問題点

 現在のキーボードの物理レイアウトは、タイプライターの機械的な制約[*2]があった時代の名残りで、キーが横方向に少しずれています。右手側はともかく、左手側のキーは手首を不自然にひねらなくては打てない形になっています。

 左手の負担を軽くするために、左右に分離したキーボード[*3]もあります。

(図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   |  ,   |  .   |  /   |
        |______|______|______|______|______|        |______|______|______|______|______|

 しかし、図2のように左手側のキーのずれが元のままでは、あまり効果がありません。左右に分離するだけでなく、左手側のずれの向きを逆にした方がもっと打ちやすくなることは容易に想像できます。

(図3)
         ______ ______ ______ ______ ______  ______ ______ ______ ______ ______
        |      |      |      |      |      ||      |      |      |      |      |
        |  1   |  2   |  3   |  4   |  5   ||  6   |  7   |  8   |  9   |  0   |
      __|______|______|______|______|______||______|______|______|______|______|__
     |      |      |      |      |      |      |      |      |      |      |      |
     |      |      |      |      |      |      |      |      |      |      |      |
    _|______|______|______|______|______|      |______|______|______|______|______|_
   |      |      |      |  -   |      |          |      |  -   |      |      |      |
   |      |      |      |      |      |          |      |      |      |      |      |
 __|______|______|______|______|______|          |______|______|______|______|______|__
|      |      |      |      |      |                |      |      |      |      |      |
|      |      |      |      |      |                |      |      |      |      |      |
|______|______|______|______|______|                |______|______|______|______|______|

 図3のレイアウトは従来のものよりも優れていますが、難点が二つあります。第一に従来のレイアウトよりも場所をとること、第二に左手側のキーの位置関係が従来とは大きく異なることです。

 たとえデスクトップ機のキーボードを変えることができたとしても、空間的な制約のある携帯機にも同じものを搭載できない限り、二種類のレイアウトを使い分ける必要が出てきます。このときに左手側のキーの位置関係の違いがミスタイプの原因に[*4]なってしまいます。

 レイアウトの改善がミスタイプの元になっては本末転倒なので、多少打ちにくくても従来のレイアウトで統一した方が現実的には問題が少ないというのも一つの考え方です。しかしそれでは、単なる現状の追認にすぎません。

 図3のような左右分離型キーボードと共用してもミスタイプを誘発しないような携帯機用のレイアウトを作ればよいのです。

(図4)
 ______ ______ ______ ______ ______ ______ ______ ______ ______ ______
|      |      |      |      |      |      |      |      |      |      |
|  1   |  2   |  3   |  4   |  5   |  6   |  7   |  8   |  9   |  0   |
|______|______|______|______|______|______|______|______|______|______|
|      |      |      |      |      |      |      |      |      |      |
|      |      |      |      |      |      |      |      |      |      |
|______|______|______|______|______|______|______|______|______|______|
|      |      |      |  -   |      |      |  -   |      |      |      |
|      |      |      |      |      |      |      |      |      |      |
|______|______|______|______|______|______|______|______|______|______|
|      |      |      |      |      |      |      |      |      |      |
|      |      |      |      |      |      |      |      |      |      |
|______|______|______|______|______|______|______|______|______|______|

 図4のような格子状のレイアウトであれば、図1図2図3のどのレイアウトと共用してもミスタイプを誘発するほどの違いはありません。

 格子状レイアウトの問題点は、従来のものとは感覚的に少々異なることです。つまり、見た目と手触りに違いがあるのですが、それには簡単な方法で対処できます。

(図5)
   ______ ______ ______ ______ ______ ______ ______ ______ ______ _______
  /      /      /      /      /      /      /      /      /      /      /
 /  1   /  2   /  3   /  4   /  5   /  6   /  7   /  8   /  9   /  0   /
/______/______/______/______/______/______/______/______/______/______/__
  /      /      /      /      /      /      /      /      /      /      /
 /      /      /      /      /      /      /      /      /      /      /
/______/______/______/______/______/______/______/______/______/______/__
  /      /      /      / -    /      /      / -    /      /      /      /
 /      /      /      /      /      /      /      /      /      /      /
/______/______/______/______/______/______/______/______/______/______/__
  /      /      /      /      /      /      /      /      /      /      /
 /      /      /      /      /      /      /      /      /      /      /
/______/______/______/______/______/______/______/______/______/______/

 図5のようにキートップの形状を変えれば、物理的には図4の格子状レイアウトと同じでも、感覚的には図1のような従来のキーボードとの違いが目立たなくなります。ただし、これはあくまでも図4に移行するまでの一時的なデザインです。

 図5図1は、感覚的にはあまり違いはありませんから、充分に共用可能です。図5図1の共用から、図4図3の共用へと徐々に移行していけば、より快適なキーボードを利用できるようになると考えられます。

(図6)
 ______ ______ ______ ______ ______              ______ ______ ______ ______ ______
|      |      |      |      |      |            |      |      |      |      |      |
|  1   |  2   |  3   |  4   |  5   |            |  6   |  7   |  8   |  9   |  0   |
|______|______|______|______|______|            |______|______|______|______|______|
|      |      |      |      |      |            |      |      |      |      |      |
|      |      |      |      |      |            |      |      |      |      |      |
|______|______|______|______|______|            |______|______|______|______|______|
|      |      |      |  -   |      |            |      |  -   |      |      |      |
|      |      |      |      |      |            |      |      |      |      |      |
|______|______|______|______|______|            |______|______|______|______|______|
|      |      |      |      |      |            |      |      |      |      |      |
|      |      |      |      |      |            |      |      |      |      |      |
|______|______|______|______|______|            |______|______|______|______|______|

 さらに、図3のジグザグになったハの字型を図6のように格子状配置を保ったまま左右に分離することにより、図1図2図3図4図5のどのレイアウトと共用した場合にもキーのずれを感覚的に補正できるようになります。

 最終的には、デスクトップ機では図6、携帯機では図4のレイアウトを用いるのが、最もストレスの少ない組み合わせだと考えられます。

 図6のようなレイアウトの製品には、NECのエルゴフィットキーボードや、Kinesis Corporationのcontoured keyboardや、TelePrint SystemsのMaltron Ergonomic Keyboardがあります。
 図4のような製品は、残念ながら今はまだないようです。以前、私はセンターシフト観音開き蜂の巣などという多少マニアックなものを提案していましたが、そこまで凝らずに、こういうオーソドックスな形でいいんですが、どこか作ってくれるところはないものでしょうか?

論理レイアウトに関連する問題点

 Qwerty配列よりもDvorak配列の方が良い[*5]と言われていますが、一度普及してしまった配列はすぐには変えられないようです。JISの仮名配列についても同様です。現在普及しているのは旧JIS配列と呼ばれているもので、新JIS配列はほとんど普及しないまま廃止されてしまいました。

 普通、キートップには文字が印刷されていますが、このような刻印はない方がよいと思います。キーボードが('A'とか'B'とかいう具体的な)文字コードを送り出していないのであれば[*6]、予めキートップに文字を印刷しておくことはできないはずです。
 私が今使っているノートパソコンは、英語はDvorak配列、日本語はG-Codeに変えてあるので、キートップにQwertyや仮名の刻印があるのは無意味です。文字キーの刻印を削るのには案外時間がかかりましたが、とてもすっきりしました。キーボードは本来こうあるべきだと思います。

 刻印がなくては初心者が困るだろうという意見も当然あると思います。しかし、キーボードの論理レイアウトを決めているのはソフトウェアなのだから、ソフトウェアの側でキーボードの論理レイアウトを表示するなどのサポートをすればよいでしょう。どうしても実物のキートップに文字をのせたい人はシールを貼り付けて、不要になったら剥がせばよいのです。
 むしろ、刻印があるせいで、文字はキーに固定されているものだという誤解を与え、文字の論理レイアウトを選択する余地を奪っているのではないでしょうか? それに、キーを見ながら打つ癖が付く原因[*7]はキートップの刻印にあるのです。

 私は、論理レイアウトの標準規格は不要だと考えています。ユーザーが自由に変更できるのだから、物理レイアウトのようにどれか一つに決める必要はないでしょう。

理想的なキーボードとは

 これはキーボードマニアが集まるとよく話題になることですが、ユーザーが自分用にカスタマイズした論理レイアウトや入力方式の設定を、別のキーボードにコピーできれば便利でしょう。記憶メディアやネットワークを介して、必要なときに必要なだけの変更を手軽にできるようなシステムを作るわけです。こういう規格なら大歓迎です。

 キーボードは人間が直接ディジタルな情報を入力できる装置です。そこから先の機械同士の世界には厳密な規格が必要でしょうが、それ以前の人が触れる部分には機械的な規格は不要です。機械よりも人間の身体に合わせて作ってほしいところです。これもよく言われることですが、最低でも「大・中・小」の三種類のサイズぐらいはあった方がいいでしょう。あとは、論理レイアウトもキートップも既存の特定の方式を前提にせず、真っ白なのが理想[*8]です。


[*1]
【最も多く見かける…図1のようなレイアウト】
英語用/日本語用で若干の違いがあったりして話が複雑になるので、便宜上、右端の記号類のキーは省略します。
[*2]
【タイプライターの機械的な制約】
文字を打ちつけるバーをずらす必要があったために、キーの位置もずらしたのだと説明されています。もしもこれをもう一工夫する人がいたら現在のキーボードの物理レイアウトも変わっていたかもしれませんが、今さら言っても仕方ありません。
[*3]
【左右に分離したキーボード】
最上段の数字の「6」が左手側になっている製品もあります。
ある時期、この手のデザインのキーボードが相次いで発売されました。穿った見方をすれば、これは訴訟対策だったのではないかと考えられます。
[*4]
【左手側のキーの位置関係の違いがミスタイプの原因に】
中段から下段に指を移動する際に、従来は右に半分ずらしていたところを今度は左に半分ずらさなくてはなりません。このずれを合わせるとちょうどキー1個分に相当するので、指先の感覚だけでは両者の違いが分からず、間違って隣のキーを打ってしまうことになるわけです。
それよりもずれが少ない中段から上段への移動の際は、指先の感覚だけで位置の違いを補正できます。
[*5]
【Qwerty配列よりもDvorak配列の方が良い】
これに対して「有意な差はない」という反論もあるようですが、「Dvorak配列よりもQwerty配列の方が良い」という説は見かけません。
完全に中立・公平な実験をしようと思ったら、キーボードやタイプライター(の絵や写真なども含む)を生まれてから一度も見たことも触ったこともない人を被験者にしなくてはならないでしょう。ほんの少しでもキーボード(のキートップに刻印された文字)を見たことがある人には、そのレイアウトを潜在的に記憶している可能性があるからです。
[*6]
【キーボードが…文字コードを送り出していないのであれば】
私が知らないだけで、世の中には文字コード(や制御コード)を送り出すキーボードがあるのかもしれません。そのようなキーボードがもしもあったとしたら、それはそれで面白いと思います。キーボードから日本語の文字コードを直接送り出すような仕掛けが作れるかもしれないからです。
[*7]
【キーを見ながら打つ癖が付く原因】
刻印をなくすことはキートップを見ずにタイプする習慣を身に付けるには有益ですが、キーボードを打ってみようとする意欲を失わせるおそれもあります。だから、キーを見ながら打ちたい人のために、キートップに貼るシールを添付すればいいと思います。
刻印を削るのに比べれば、シールを貼るぐらいは楽なことです。それに、最初から刻印されているキーボードよりも自分でシールを貼ったキーボードの方に親しみを感じるのではないでしょうか。
[*8]
【真っ白なのが理想】
メーカーにはメーカーの都合があるのかもしれませんが、ソフトウェアで変更できることまで抱え込まずに、使いやすいハードウェア作りに徹してくれればと思います。そのうえで、独自の文字配列や入力方式などをソフトウェアとして(キーボードとは別に)提供してくれれば、より多くのユーザーに受け入れられることでしょう。
(2001-05-05 付記)
その後、文字が一切印刷されていない「これが打てるか!」という名のキーボードが発売されました。今はまだ物珍しさで注目されていますが、これが当たり前になる日も遠くはないでしょう。

[ リンク集 | 漢字直接入力 | 錬金術師の実験室 | m(as)m's home position ]

(2001-04-16)

4月16日

 久しぶりにリンクのチェックをしたら、「M式の世界」のアドレスが変わり、POBoxの新しいページができていた。(+0)

4月15日

 ここのトップページが宝島社の「週刊ウルトラ1」4月24日号の“マニコアWEB”(P.111)にされた。ページをめくっていて、SONYの携帯電話(SO503i HYPER, C406S)にあのPOBox載されているという記事(P.78~79)を見つけて大喜び。(+5)

8月21日

 何日か前、別のものをしているときに、偶然、Perkyというキーボードを自作している人のページを見つけた。指のを使うことでホームポジションのキーを二にするという発想も新だけど、何といってもそれを実に作ってしまうところが凄いと思う。(+5)


[ 日記の目次 | 前の回 | 次の回 | G-Code (目次) | m(as)m's home position ]

(2000-08-07)

8月 7日

 キートップを逆にひねった子状キーボードのことをあれこれ書いているうちに、「キーボード」のページを全部書き換えてしまった。(+1)

7月15日

 CGIとJavaScript動作チェック用に「gNavi」を作ってみた。G-Codeのストロークが出るだけの簡単なもの。(+1)

7月 3日

 「印の宅配のサンプルは要りませんか」という売が来た。つい反射的に断ってしまったが、こういう時期だから新はなかなかいないだろう。もっと話を聞いておけばよかった。(+7)

6月17日

 速記入力に関する情報を検索していて、テープ起こしに便利な「おこしやす」というソフトを見つけた。Windows上で、エディタで入力しながらWAVファイルの「再生」と「して少しき戻し」がキーで作できる。とにかくこれは便利。(+4)

6月15日

 「キーボード入力を検する」オフに行って来た。お土にいただいた田先生の論文の中の「速記入力用キーボード」と「同時打ちキーの間工学」を読んで、大び。これなら本当に速記入力できるかもしれないぞと、ますます妄想を深めている。(+6)

6月12日

 「G-Code」で速記をやってみようと考えているうちに、だんだん想がらんできて、とうとう「漢ナビ2」なんてものに発してしまった。それはそれでいいけれど、ソフトと辞書を一体が作るんだ?(+4)

5月29日

 オムロンソフトウェアから「楽々日本語」というソフトが出るらしい。学習した文字列を先頭の一文字でび出すというもの。「i」で「いつもお世話になっております。」に変換するというい。ワープロ速記などとは違って、タイピングの手な初心者けの機能のようだ。打鍵数をらすのが目標でも、方向はいろいろある。(+8)

5月17日

 朝、新聞のテレビを見ていて「タイムボカン2000」という文字にび上がる。何だこれは? テレビ東京で水曜夜6時? どうして今まで気付かなかったのか…。とにかくこれは見るしかない。

 あの悪トリオが今度はをやっているじゃありませんか。17年ぶりにシリーズ再開とは。るべし、タツノコプロ。(+6)

4月22日

 昨日から『東京セブンローズ』(上ひさし・文秋刊・1999)を読んでゐる。

 わざわざワープロを使つて、仮名・舊漢字で書いたのだらうか。それとも最初のあたりは手書きなのか。(+8)

4月15日

 INPUT METHOD RING というのをみつけて、さっそく参加。とりあえず、それだけ。(+0)

3月10日

 『文界』4月号に「ワープロ・パソコンVS.原稿用紙」というアンケート結果が載っている。回答者が140人の作家、評論家などに限られているのは残な気もするが、文だから仕方がないか。

 同誌の2月号に載された石川九の文章に対するコメントは、パソコン誌やネット上では(私が目にしている範囲では)まだないようだ。こういうことに興味を持つ人が少ないのだろうか。大事な問題だと思うんだけど。(+17)

3月 3日

 今度は昭和30年代後半の仕事。漢字は引用文の中だけだから、一置換は使えない。QXエディタ分けすると、「―」と「一」、「二」と「ニ」、「へ」と「ヘ」などが簡単に見分けられる。これにはほんとに重宝してるので、今、URLを調べたついでに送金した。
 メールマガジンの『オババのひとりごと』にHP無料広告った。

	----------------------------------------------------------------

	★http://www.asahi-net.or.jp/~QX5S-MSMR/kanchoku.html
	最近、漢字を入力ミスして困ったことはありませんか?
	思い通りの漢字が自由にタイプできると気持ちいいですよ。
	目から鱗が、肩からは重い甲羅が落ちます。(笑)

	○いろいろな方法があるんですね。でも、指で覚えちゃうと楽なんですよ。
	----------------------------------------------------------------

きちんと内容を見てコメントしてくれているのが有り難い。せっかくだから日記だけでも更新しておく。(+9)

2月 7日

 この頃、OCRデータの修正をやり始めた。予想していた通り、分的な漢字の直しには漢直が利だ。…とはいっても、原稿後間もない頃の物だから、難しい漢字がぞろぞろ出てくる。覚えてもすぐに忘れるが、これを何度かしているうちに定着する漢字もあるだろうか。(+8)

1月 4日

 どういうわけか年のれから、12+22+…+n2=n(n+1)(2n+1)/6(nは自然数)が成する理を考えている。まだ納得できる説明ができない。一が1の立方体をn段み上げたピラミッドの体積が、一辺がnの正方形を面とするさがnの四の体積(n3/3)よりも少し大きいだろうと見当はつくけれども、2n+1がどこから出てくるのかがよく分からない。立体で考えちゃいかんのだろうか?(+14)


[ 日記の目次 | 前の回 | 次の回 | G-Code (目次) | m(as)m's home position ]

(2000-06-12)

「漢ナビ2」について

 「漢ナビ2」は、「漢ナビ」に、漢直と“速記入力”の組み合わせという新しい入力方法を導入した大幅な改訂版です。漢直と速記を組み合わせようと考えた経緯については、「G-Code」で速記をのページを御一読ください。

 今はまだ構想を練っている段階ですが、随時、このページで途中経過を公表していきます。


“熟語補完”の拡張で“速記入力”

 「漢ナビ」には“熟語補完”という機能がある。これは、漢字の最後のキーをシフトしながら打つと、その漢字の後に続く漢字のグループを仮想鍵盤に表示するというものだ。仮想鍵盤に表示された漢字は1打鍵で入力できる。このときもシフト打鍵すると、さらに次の漢字グループが表示される。

 補完できる漢字はあくまでも1字ずつだ。熟語補完を使って「漢字」を入力しても、次に「直接入力」が1打鍵で入力できるというようなことはない。これは漢字の第1打鍵を覚えるための補助的な機能だから仕方ないけれども、ちょっと不便な感じもする。

 スペースとの同時打鍵を第1打とする2ストロークを“速記入力”に利用しようと考えていたときに、このことを思い出した。

  1. 2ストロークの“速記入力”を覚える場合も、打鍵ガイドを表示した方が便利だろう
  2. 打鍵ガイドの表示タイミングは、スペースを押し下げた時が適当だろう
  3. スペースを押したまま候補を選択した場合は、その後に続く仮名文字列のグループを表示してはどうか
  4. それならば、単漢字や熟語を打った後にスペースを押し下げた場合にも、それに続く仮名文字列の候補を表示するのが自然だ
  5. 候補が多いときは、スペースを再度打って次の面に進めばよい
  6. 打鍵ガイドを見なくても入力できるように、同じ文字列は同じキーに割り当てるべきだ
  7. 一定の文字列が常に同じ打鍵で確定するのだったら、わざわざ2ストロークにする必要はない

 こうして、“熟語補完”の拡張(超多段シフト的な操作方法)で“速記入力”ができるという考えに至った。

辞書の内容

 以下のような6種類の変換を行うための辞書が必要だ。

  1. 漢字文字列→漢字文字列群
  2. 仮名文字列→漢字文字列群
  3. 漢字文字列→仮名文字列群
  4. 仮名文字列→仮名文字列群
  5. 空文字列→仮名文字列群
  6. 仮名文字列→打鍵位置

 1と2は接頭語から変換する場合や漢字文字列を一気に補完する場合、5は接続詞や副詞などを単独で入力する場合に使う。

 1~5は、任意の文字列から任意の文字列(群)に変換する辞書に統合できる。この辞書の中に打鍵位置も入れておけば、6の変換を個別に行う必要がなくなって変換時間を短縮できる。

ドライバの動作

 ドライバは、以下のような動作を行う。

  1. スペースが押されたら、IMEの未確定文字列を検索用のキーにコピーする
  2. キーを使って検索し、候補群(文字列群と打鍵位置)を受け取る
  3. 仮想鍵盤に候補群を表示する
  4. 文字キーが打鍵されたら、該当する文字列を確定入力する
    (スペースが押された状態なら、確定した文字列をキーにコピーして2へ)
  5. スペースが押されたら、次の候補群に進める(3へ)

 本当は「取り消し」や「前候補群」などの処理も必要だが、細かい説明は省略した。また、候補群の数は仮想鍵盤8面程度、文字列の長さは5文字程度までに制限しておいた方がいいだろう。

(2000-06-12)


付記

 Windows XP が出たころからWindows用のIMEがどんどん減っていき、95~Meとは全く別のXPに「漢ナビ」を移植するのも難しそうだったので、この数年間はJava用のInput Methodをコツコツと作っています。

 もちろん、最初から漢直を前提とした仮名漢字変換方式で、これまで考えてきたような“速記入力”にも対応しています。Input Method本体と仮名漢字変換辞書と“速記入力”辞書を並行して作っているわけですが、まあだいたい「こんなものを作ろうとしています」という感じを伝えるためのサンプル版ができたかな、といった段階です。

 このJava用のInput Methodと“速記入力方式”は、近いうちに公開したいと思っております。

(2007-10-07)


[ 「漢ナビ」 | 漢字直接入力 | m(as)m's home position ]

(2000-06-12)


G-Codeで速記するには

 G-Code(に限らず、2ストローク系漢直)を使うと、漢字の打鍵数が少なくなった分だけ入力速度が上がる。しかし、現状のままでは速記できるほどではない。

 速記するには、漢字仮名交じり文を分速300~350字で入力できる必要がある。これは、全ての文字を2ストロークで入力できると仮定しても、毎分600~700打鍵という超人的な打鍵速度に相当する。超人でない人が2ストローク系の漢直で速記しようとすれば、打鍵数を減らすしかない。

仮名入力が漢直共通の弱点

 漢字が2打鍵で入力できるのはいいけれど、仮名の入力にも2打鍵以上必要になってしまうことが、2ストローク系漢直に共通する弱点だ。G-Codeの仮名配列は他の漢直ほどには最適化していないので、特にこの弱点が目立ってしまう。これは何とかして改善したいところだ。

 また、漢直と仮名漢を併用していると、文節の先頭に変な仮名があってうまく変換できないことがある。例えば「目から鱗が」の「目」を直接入力した後に「からうろこが」をまとめて変換すると「目空鱗が」となってしまうのだ。これを防ぐには「から」を打った後に確定キーを叩けばいいのだが、ついうっかり忘れてしまう。

 もしも「から」のような仮名文字列を2ストロークで“速記的”に直接確定入力できたら、どんなに快適だろう。つまり、漢字だけではなく、変換対象以外の仮名文字列(送り仮名や付属語など)も直接入力できるようにするわけだ。これは、本来の速記とは少し目的が異なるかもしれないが、試してみる価値はある。

利用可能な打鍵パターン

 以前、親指シフトとG-Codeの組み合わせを試したことがある。仮名の入力を楽にしようと思ったからだ。親指シフトは普通通りに(無変換/変換キーを親指シフトキーとして)打鍵し、漢字はG-Codeで(第1打鍵をスペースと同時打鍵して)直接入力する。確かに仮名の入力は楽になったが、漢字の入力が少し重くなることと、G-Codeで仮名と記号を割り当てた中段・上段の左右交互打鍵が遊んでしまうのが難点だった。

 この関係を逆転させて、G-Codeは元のままで、スペースとの同時打鍵を“速記的”な入力に流用してはどうだろうか。スペースとの同時打ちを第1打鍵として、2打鍵目で仮名文字列を直接入力するのだ。この方法ならば、本来のG-Codeを一切変更することなく、新しい2ストロークの打鍵パターンを追加することが可能になる。

割り当てる文字列の選び方

 打鍵パターンが確保できたので、その打鍵パターンで入力する文字列を考える。実際に効果のある割り当て方をするには、使用頻度と入力コストのほかに、話し言葉と聞き打ちに特有の事情も考慮しなくてはならない。そもそも頻度を調べようとしても、どこで区切るのかを決めておかなくては、数えることさえできない。

 例えば「しなければならないだろうというようなことも」というような極端に長い文字列を2ストローク化しても、実際には末尾の「ことも」を聞くまで打つことができず、待期時間が増えるだけだ。むしろ単純に「しなければ」「ならない」「だろう」「という」「ような」「ことも」のように、聞いた端から反射的に打っていった方が入力速度は上がるだろう。人間の作業記憶の容量が「7プラスマイナス2」と言われていることからも、適当な長さに区切ったものを数回に分けて打った方が入力者の負担は少なくなると考えられる。

 たまたま手元に3,887,660文字分の国会の議事録のテキストデータ(漢字含有率は32.9%)があったので、2文字以上の仮名文字列がどの程度入っているかを調べてみた。その結果、90,711種類(テキスト全体の54.0%)の仮名文字列が抽出できた。

 単純に頻度順に並べるだけでは実用的ではない(表1)ので、頻度と文字列の長さの積を基準にして(表2)、さらに別の文字列に含まれる場合を加算した(表3)。ついでに、漢字と仮名の組み合せを抽出したところ、246,078種類(80.0%)だった(表4)。

(表1)(表2)(表3)(表4)
頻度文字列 頻度*長さ 文字列 頻度*長さ 文字列 頻度*長さ文字列
8136その 16272その 1329488その 13192思います
6578この 13156この 1309314して 7830非常に
5201する 13143これは 926888つて 7472思うのであります
4764から 11439います 733534には 5467考えております
4761して 10836につきましては 495912これは 5244私は
4381これは 10585であります 477750という 4940思いますが
3813います 10402する 467584この 4389或いは
3521つて 9528から 452739であり 3948次第であります
2708として 9522して 426082する 3459対して
2526には 9196において 401980において 3327対する
2299において 8922でございます 359284について 3156関する
2117であります 8136それから 329628まして 3116場合には
2034それから 8124として 328431として 3032次第でございます
1912について 7648について 300778これ 2975思つております
1882そういう 7528そういう 299672から 2925思うのです
1873いは 7259におきましては 253464ます 2826先ほど
1660こういう 7042つて 219004そういう 2628思うのでありますが
1598という 6657うのであります 218750では 2582申し
1548につきましては 6640こういう 200103ついて 2472場合に
1487でございます 5788あるいは 191346やはり 2400思うのですが

本当に話す速度で入力できるのか

 大雑把な見積りだが、1文字を平均1打鍵で入力できれば、分速300~350字も無理ではないだろう。

 例えば、「短縮できるように」の「できる」と「ように」を、それぞれ2ストローク化すれば、8文字を8打鍵で入力できる計算になる。これは8文字中6文字(75%)が短縮できる場合だが、漢字が2文字増えて「短縮入力できるように」となると、短縮できるのは10文字中6文字(60%)となるため、「できるように」をまとめて2ストローク化する必要がある。

(表5)
短縮できる
部分の比率
短縮する
文字列の長さ
100.0% 2字
75.0% 3字
66.7% 4字
62.5% 5字
60.0% 6字
58.3% 7字
57.1% 8字
56.3% 9字
55.6%10字
55.0%11字
54.5%12字
54.2%13字
53.8%14字

 表5のように、短縮できる部分が少なくなるほど、長い文字列を2ストローク化しなければならなくなる。前記の議事録のデータのように短縮できる部分が54%しかない場合は、13~14文字を2ストロークで入力しなくてはならない。さらに減って50%以下になると、1文字平均1打鍵で入力するのは不可能になってしまう。

 仮名文字列の長さは、平均すると5.4文字で、10文字以上続くことは滅多にない。本当に話す速さで入力しようとするならば、短縮できる部分を60%以上は確保しなくてはならない。そのためには、漢字を含む文字列(平均5.8文字)も、ある程度は2ストローク化する必要があるだろう。ただし、漢字の使用頻度は仮名に比べて分野や時期によるばらつきが多いと思われるので、注意しなくてはならない。

文字列の割り当て方

 基本的には、「頻度*長さ」が大きいものから、打ちやすい順に割り当てればよい。しかし、共通点のある文字列をグループ化するなどして覚えやすくした方がいいだろう。また、漢字を含む文字列を割り当てる場合には、漢字のストロークとの関係も考えなければならない。

 上・中・下段の30鍵の2ストロークなら900パターン、最上段を加えて40鍵の2ストロークにすれば1,600パターンになる。それでも足りなければ、第2打鍵もシフトして3ストロークに拡張するか、第1打鍵のシフトキーに「変換」や「無変換」も使うことで拡張できる。「だ」「である」「です」のような文体の違いを3個のシフトキーに振り分けるのもいいかもしれない。

 2ストローク方式だけでは足りなかったら、坂元正剛さんの「新ワープロ速記法」のように略語変換を活用する方法もある。語頭や語尾のバリエーションが多いような場合、任意の長さの読みで登録できるのは都合がいい。G-Codeは平仮名と片仮名の打ち分けができるので、片仮名の読みで略語登録すれば、通常の仮名漢字変換に悪影響が出る心配もなくなる。ただし片仮名の入力にも2打鍵を要するため、本来の速さには及ばないだろうけれども。

 今、基本的な900パターンの割り当てに取りかかっているが、これは予想以上に手間のかかる作業だ。最初の「その」にしても、「そのとき」「そのため」「そのような」「そのほか」「そのまま」「そのときに」などとの関連をどうするか、「その結果」のように抽出したデータには含まれていないものをどうするか、こんなことまで考え始めると、なかなか結論が出せない。この調子では、当分完成しそうにない。

(2000-06-10)


漢字だけなら追いつける

 文字列の割り当てもできないうちに練習のことを考えるのも気の早い話だが、練習方法を視野に入れて設計することは悪いことではない。

 ところで、(話し言葉でも書き言葉でも)日本語の文章中の漢字含有率が50%以上になることはほとんどない。普通は30~40%程度だろう。300~350字/分の30~40%といえば90~140字/分だから、通常の2ストローク漢直でも、漢字の部分だけなら話す速度で打てるということだ。

 これは、聴き打ちの練習に応用できる。録音テープを聴きながら、漢字の部分を打てば漢直の練習、仮名の部分を打てば仮名2ストローク速記の練習になる。仮に漢字含有率が40%だとすると、漢字は40%の速度、仮名は60%の速度で打てればよい。これならば目標が高すぎて挫折するおそれも少ないだろう。また、何度も小刻みにテープを「停止→巻き戻し→再生」しなくてもよいし、録音せずに放送などを聴きながら練習することもできる。

打鍵ガイドへの応用

 もっと面白い応用方法も考えられる。打った漢字をキーとして、その漢字の後に続く仮名文字列の候補を仮想鍵盤上に表示するのだ。

 これは、G-Codeの“熟語補完”の延長だと考えれば分かりやすいかもしれない。“熟語補完”と同じように入力ソフトに依存することになるけれども、そういう機能を想定して仮名文字列を割り当てるのも悪くはないと思う。ある漢字を打った後にスペースを押すと、例えば図1や図2のような打鍵ガイドが表示されるようにする(図は説明のために適当に並べたものだが、実際は様々な条件を考えて調整する)。

(図1)「私」を打った後に表示するガイド(左手側)
+―――――+―――――+―――――+―――――+ +―――――+
|     |     |     |     | |     |
+―――――+―――――+―――――+―――――+ +―――――+
|たち   |たちは  |どもも  |としては | |から   |
+―――――+―――――+―――――+―――――+ +―――――+
|からは  |どもと  |どもは  |ども   | |どもの  |
+―――――+―――――+―――――+―――――+ +―――――+
|としても |どもに  |のほう  |には   | |からも  |
+―――――+―――――+―――――+―――――+ +―――――+

(図2)「思」を打った後に表示するガイド(右手側)
+―――――+ +―――――+―――――+―――――+―――――+
|     | |     |     |     |     |
+―――――+ +―――――+―――――+―――――+―――――+
|いまして | |いますから|って   |いましたが|うわけで |
+―――――+ +―――――+―――――+―――――+―――――+
|うのです | |うので  |います  |いますが |いました |
+―――――+ +―――――+―――――+―――――+―――――+
|われるので| |うが   |われます |わない  |えない  |
+―――――+ +―――――+―――――+―――――+―――――+

 ここで(スペースを離して)候補が表示されている位置のキーを打つと、該当する仮名文字列が確定入力されるわけだ。スペースを押したまま打鍵した場合は、その後に続く仮名文字列の候補群が表示されるようにする。

漢直+「風」+「POBox」

 考えているうちに、冨樫雅文さんの「風」と増井俊之さんの「POBox」を合わせたように感じになってきた。この入力方法は、以下の点で、当初考えていたような2ストロークで仮名文字列を入力するやり方よりも優れている。

  • 多様な仮名文字列を限られた打鍵パターンに割り当てる必要がない
  • 候補となる仮名文字列が絞りこまれるため、規則性を導入しやすい
  • スペースの打鍵回数とキーの位置だけを覚えればよい
  • 漢字の2ストローク入力との干渉が起きにくい
  • 打鍵数の削減によって入力速度の上昇が見込める

 文字列とキーの位置の関係は固定するが、スペースの打鍵回数は既入力の文字列によって変わるようにする。例えば単独の「思」と熟語の「意思」とでは全く異なる候補群になるからだ。できるだけ打鍵数を減らすという狙いもある。この点が、本家の「風」とは若干異なっている。

 もう一つの本家「POBox」との主な違いは、キーボード入力を前提にしていること、ユーザーの入力結果を学習しないこと、文節単位で個別に変換することだ。

 ここまでくると、G-Codeを拡張するだけでは勿体ない。そこで、「風」を見習って、前段階の入力方式には依存しないようにする。つまり、G-Codeだけでなく、T-codeTUT-code超絶技巧入力などの2ストローク系漢直と自由に組み合わせて使えるようにするわけだ。

今後の計画

 このようなわけで、辞書データと入力ソフトの開発を同時に進めなくてはならなくなってしまった。詳しいことは、「漢ナビ2」のページで引き続き検討する。

(2000-06-12)


別の方法

 「漢ナビ」のバージョンアップには時間がかかりそうなので、もっと簡単な方式を考えてみた。詳しくは「G-Quick」のページで。

(2001-09-10)


[ (裏話) | (目次) | 錬金術師の実験室 | m(as)m's home position ]

(2000-02-07)

漢字に使う領域

 40×40鍵の2ストロークのうち、比較的打ちやすい1000個を漢字用の領域にしました。残りは、システム予約(補助機能など)、ユーザー定義領域として空けておきます。

    +――+――+――+――+――+      ひ:平仮名・記号 ...  100
    |\1|最上|上段|中段|下段|      カ:片仮名・記号 ...  100
    |2\|LR|LR|LR|LR|      漢:漢字・記号 ..... 1000 (※)
    +――+――+――+――+――+      未:未使用 .........  300
    |最R|シシ|未未|未未|未未|      シ:システム予約 ...  100
    |上L|シシ|未未|未未|未未|      -------------------------
    +――+――+――+――+――+          (計)             1600
    |上R|漢漢|カ漢|カ漢|漢漢|
    |段L|漢漢|漢ひ|漢ひ|漢漢|    (※)同じキーの2連打(30個)には記号を割り当てます。
    +――+――+――+――+――+        +―+―+―+―+ +―+  +―+ +―+―+―+―+
    |中R|漢漢|カ漢|カ漢|漢漢|        |◆|▲|↑|△| |◇|  |ヵ| |〃|〒|ヶ|※| (上段)
    |段L|漢漢|漢ひ|漢ひ|漢漢|        +―+―+―+―+ +―+  +―+ +―+―+―+―+
    +――+――+――+――+――+        |●|←|◎|→| |○|  |☆| |【|々|】|★| (中段)
    |下R|漢漢|漢漢|漢漢|漢漢|        +―+―+―+―+ +―+  +―+ +―+―+―+―+
    |段L|漢漢|漢漢|漢漢|漢漢|        |■|▼|↓|▽| |□|  |\| |〆|〇|§|/| (下段)
    +――+――+――+――+――+        +―+―+―+―+ +―+  +―+ +―+―+―+―+

割り当て規則

 「pubdic」のデータを元にして、次のような条件で機械的に割り当てました。

  • 利用する機会の*高そうな*漢字を打鍵しやすい位置に割り当てる
  • 同じ漢字に続く漢字のグループの第1打鍵を、*できるだけ*分散させる
  • 平仮名に続きやすいものは、*なるべく*「右→左」または「左→左」に割り当てる

 かなりアバウトな規則ですが、匙加減を変えて生成した複数の配列候補から、最も妥当と思えるものを選びました。
 その結果、一般的によく使われる漢字でも、熟語に含まれることの少ないものは未定義となりました(必要に応じてユーザー定義領域に割り当ててください)。

ダウンロード

gc2str.lzh ストローク表(基本セット)
gc3str.lzh ストローク表(拡張セット)
gc2can.lzh 「かんな」用データ(基本セット)
gc3can.lzh 「かんな」用データ(拡張セット)
gc_wxg.lzh 「WXG」用データ(基本+拡張セット)

※なお「松茸」用データは「松茸 Ver 4.1」に付属しています。

練習するには?

 これで、「かんな」「松茸」「WXG」を利用して入力できるようになりました。しかし、これだけでは習得するのが大変です。テキストを使った練習もいいのですが、「G-Code」のメリットを最大限に引き出すには「熟語補完(入力した漢字の直後に続きそうな漢字の候補を仮想鍵盤に表示する)」機能が必要です。
 現在公開中の「漢ナビ」というIME拡張ソフトには熟語補完機能も入っていますので、どうぞお試し下さい。

2ストローク基本セット

 以下のストローク表のとおりです。

| ・|・・・・|  ・|・・・・|  ・|・・・・|  ・|・・・・| | ・|・・・・| 
| ・|・・・・|  ・|・・・・|  ・|・・・・|  ・|・・・・| | ・|・・・・| 
| ・|・・・・|  ・|・・・・|  ・|・・・・|  ・|・・・・| | ・|・・・・| 
| ・|・・・・|  ・|・・・・|  ・|・・・・|  ・|・・・・| | ・|・・・・| 
|                                                        |              
| 視|接異望散|  字|楽速車居|  集|得画常退|  薄|様古起式| | 盛|割反弱失| 
| ゎ|(―)‥|  ゝ|〈っ〉ゞ|  ゃ|『ゅ』ょ|  ぱ|ぴぷぺぽ| | ば|びぶべぼ| 
| わ|ゐ?ゑを|  ら|りるれろ|  や|「ゆ」よ|  ま|みむめも| | は|ひふへほ| 
| 早|放調信利|  等|乗理苦論|  業|全解流度|  知|好転開勝| | 電|場急戦返| 
|                                                        |              
| 打|配増義光|  減|思結良絶|  身|事体面情|  加|質産精決| | 治|形密任向| 
| ~|、ん。…|  だ|ぢづでど|  ざ|じずぜぞ|  が|ぎぐげご| | ぁ|ぃぅぇぉ| 
| な|にぬねの|  た|ちつてと|  さ|しすせそ|  か|きくけこ| | あ|いうえお| 
| 法|動別的悪|  強|落会足口|  力|意物国作|  通|回然白当| | 成|実安変色| 
|                                                        |              
| 確|休検雑血|  表|持在能参|  冷|残破格置|  適|止選満広| | 掛|熱要報計| 
| 来|食直化言|  定|名引外有|  目|地付用発|  学|重心平金| | 和|新同書着| 
| 込|正行取長|  切|高見小入|  上|一大出気|  生|手無合下| | 水|立分中明| 
| 愛|量記対軽|  算|売細難断|  進|過遠抜死|  近|受空送点| | 乱|感味語交| 
|                                                        |              


 |・・・・|・ | |・・・・|・  |・・・・|・  |・・・・|・  |・・・・|・ |
 |・・・・|・ | |・・・・|・  |・・・・|・  |・・・・|・  |・・・・|・ |
 |・・・・|・ | |・・・・|・  |・・・・|・  |・・・・|・  |・・・・|・ |
 |・・・・|・ | |・・・・|・  |・・・・|・  |・・・・|・  |・・・・|・ |
              |                                                        |
 |局辺富役|敏 | |激非茶号|紙  |声台私脱|科  |他毛政例|官  |博完洋支|江 |
 |ヮヽャパ|バ | |〔《“ピ|ビ  |ヴッュプ|ブ  |〕》”ペ|ベ  |‐ヾョポ|ボ |
 |ーダザガ|ァ | |,ヂジギ|ィ  |ンヅズグ|ゥ  |.デゼゲ|ェ  |・ドゾゴ|ォ |
 |八世馬順|谷 | |沢端幸追|教  |久音未初|特  |病津男奇|改  |太末仕路|尾 |
              |                                                        |
 |暗横単両|防 | |節城員再|門  |優花今種|船  |番補屋室|指  |総宮組都|村 |
 |ワラヤマ|ハ | |ヰリ‘ミ|ヒ  |!ルユム|フ  |ヱレ’メ|ヘ  |ヲロヨモ|ホ |
 |ナタサカ|ア | |ニチシキ|イ  |ヌツスク|ウ  |ネテセケ|エ  |ノトソコ|オ |
 |保井次親|雄 | |南西素者|神  |北頭期半|最  |健極品何|社  |土夫根元|波 |
              |                                                        |
 |球豊周賀|雨 | |閉仮館軍|経  |短店鉄春|武  |独丸買規|円  |必首五佐|試 |
 |石機二主|可 | |線連公風|天  |代時所後|部  |差先月性|道  |島東家海|清 |
 |美川文前|数 | |年自本田|山  |御人不子|日  |原野内多|間  |相真木方|三 |
 |純女共骨|赤 | |民戸志角|関  |郎十運吉|万  |器厳値老|夜  |低市四松|千 |
              |                                                        |


| |・・・・|・  |・・・・|・  |・・・・|・  |・・・・|・ | |・・・・|・ 
| |・・・・|・  |・・・・|・  |・・・・|・  |・・・・|・ | |・・・・|・ 
| |・・・・|・  |・・・・|・  |・・・・|・  |・・・・|・ | |・・・・|・ 
| |・・・・|・  |・・・・|・  |・・・・|・  |・・・・|・ | |・・・・|・ 
|                                                        |              
| |歴党捨昭|九  |載述継泊|済  |毒戻釈診|逸  |迫添頼汚|策 | |承了障躍|臭 
| |◆印説折|撃  |圧▲勢談|案  |装位↑渡|住  |帰価給△|略 | |混栄歩聞|◇ 
| |貴厚滅筆|黒  |現走替弁|話  |離寄静消|製  |問少命読|振 | |念造違務|収 
| |願賛似損|映  |却謝練資|慮  |闘訴育刻|疎  |求烈伏惑|煮 | |責埋眠祝|従 
|                                                        |              
| |忠矢剛尺|甲  |貫森偏危|令  |隔勇絵宅|隊  |逃淡兼訓|探 | |煙婦垂俊|層 
| |屈秘照傷|布  |使服駆容|礼  |焼除労待|巻  |席腹復熟|守 | |護設備列|移 
| |●越図換|殺  |工←制温|約  |快深◎留|突  |積議火→|納 | |職応便達|○ 
| |湿録託踏|察  |酷介査欲|没  |唱舞廃敵|評  |遊妙鈍請|借 | |疑称免揚|触 
|                                                        |              
| |誘避提援|就  |竜嘆測昇|阿  |札沼境虫|茂  |捕飲刊系|貸 | |創皮操態|複 
| |息答伸去|延  |認示写払|敗  |訳覚税弾|聴  |倒証養勤|考 | |習営縮負|害 
| |暴続観射|飛  |荒伝投告|詰  |演校座固|曲  |降存痛助|張 | |押注限想|修 
| |■航染束|覧  |笑▼婚挙|裁  |宿締↓与|興  |属呼蔵▽|禁 | |帯導易賞|□ 
|                                                        |              


 ・|・・・・| | ・|・・・・|  ・|・・・・|  ・|・・・・|  ・|・・・・| |
 ・|・・・・| | ・|・・・・|  ・|・・・・|  ・|・・・・|  ・|・・・・| |
 ・|・・・・| | ・|・・・・|  ・|・・・・|  ・|・・・・|  ・|・・・・| |
 ・|・・・・| | ・|・・・・|  ・|・・・・|  ・|・・・・|  ・|・・・・| |
              |                                                        |
 酸|邪供嫌課| | 財|軟狂劣樹|  衣|潔果左旧|  技|医板詞蒸|  倉|透六競父| |
 ヵ|階我因料| | 院|〃悲史省|  王|客〒底陰|  伊|率遺ヶ福|  露|百林準※| |
 星|余永即級| | 派|眼英区類|  母|如段予更|  堂|薬豪之華|  橋|具由岡朝| |
 雅|飯刀迷七| | 柄|鋭尊登領|  専|審縁肌件|  師|封模友儀|  吸|芳著故隆| |
              |                                                        |
 側|郷麗宝協| | 幕|懸材鹿項|  黙|忌充採騒|  個|懐識腰巡|  否|基嶋研依| |
 裏|鳥瀬講才| | 顔|以額町辛|  俗|誤題推権|  背|雪益比繰|  浮|若恵遅惨| |
 ☆|整士片至| | 米|【微河欠|  粗|司々葉青|  各|草崎】終|  型|羽卑里★| |
 右|浦芸寺秀| | 秋|随丈康児|  硬|兵輪辞浅|  堅|陸彦筋晴|  坂|腕諸植油| |
              |                                                        |
 典|杯偽穏仲| | 夏|併概超農|  際|霊裕統効|  週|潮閑盤慶|  攻|灯砂帳標| |
 簡|歯粉黄処| | 震|酒懇像費|  喜|洗寝紀既|  界|滑版執象|  敬|干始構往| |
 虚|善肉団香| | 判|管逆並繁|  活|壮則寒条|  申|歌徳建孝|  章|玉藤陽状| |
 \|塩哀園編| | 狭|〆貧京均|  吹|湯〇群甘|  包|荷県§恐|  愚|岩丁商/| |
              |                                                        |

仮名配列の変更

 漢字配列との関係で、仮名配列の一部を変更しました。

  • 平仮名(右左)と片仮名(左右)の両方に割り当てた記号の片方を削除
  • "【"・"】"・"ヵ"・"ヶ"を漢字配列に移動
  • "ヴ"を「ワ゛行ウ段」に移動
  • "!"を「ワ行ウ段」、"?"を「わ行う段」に移動
  • ","・"."・"‘"・"’"・"“"・"”"・"‥"・"…"・"―"・"~"・"‐"・
    "ゝ"・"ゞ"・"ヽ"・"ヾ"・"〔"・"〕"・"〈"・"〉"・"《"・"》"を追加

3ストローク拡張セット

 30個の記号を2連打から3連打に変更することで、3ストローク文字を1170個追加できます。そのうちの870個に漢字を割り当てました。残りの300個は未使用(ユーザー定義領域)です。

| ・|・・・・|  ・|・・・・|  ・|・・・・|  ・|・・・・| | ・|・・・・| 
| ・|・・・・|  ・|・・・・|  ・|・・・・|  ・|・・・・| | ・|・・・・| 
| ・|・・・・|  ・|・・・・|  ・|・・・・|  ・|・・・・| | ・|・・・・| 
| ・|・・・・|  ・|・・・・|  ・|・・・・|  ・|・・・・| | ・|・・・・| 
|                                                        |              
| ・|・・・・|  ・|・・・・|  ・|・・・・|  ・|・・・・| | ・|・・・・| 
| 卓|針泰劇縦|  猛|験罪献浸|  耐|脳拠係惜|  港|稲尽訪皆| | 迎|煩緩景宇| 
| 脚|頂程隠討|  融|致亡滞律|  怪|争銀胆頑|  族|陣麻弘警| | 冬|夕源渋庁| 
| 祖|漫潤諾威|  也|乾宣削庭|  架|雲忍救歓|  斉|幼擦困副| | 潜|艦氷担奪| 
|                                                        |              
| ・|・・・・|  ・|・・・・|  ・|・・・・|  ・|・・・・| | ・|・・・・| 
| 聖|梅鮮克砲|  崩|脈漁腐謹|  徒|妻岸濃幾|  途|寿及奥毎| | 歳|粋寂智刺| 
| 織|敢盗浜希|  慢|許臨険竹|  珍|紛舌敷譲|  術|摩仁牛乳| | 築|尚魚漢魔| 
| 泉|柔蛇到署|  被|跡須銃犯|  炎|池童曜刑|  寛|縫恥宏紅| | 招|排濁停絡| 
|                                                        |              
| ・|・・・・|  ・|・・・・|  ・|・・・・|  ・|・・・・| | ・|・・・・| 
| 双|佳漏仏範|  賢|豆宜緒箱|  塚|虐苛枝寸|  遇|傾裂凍邦| | 襲|償鳴壊勘| 
| 憎|沈耳奏忙|  症|府悠丹句|  恒|展票占巨|  互|晩飾暑暖| | 慣|髪葬授奉| 
| 浄|索肥囲奮|  貞|慰拝届涼|  影|貨刈緑誌|  浴|卒鼻為贈| | 賃|朗浩候稿| 
|                                                        |              


 |・・・・|・ | |・・・・|・  |・・・・|・  |・・・・|・  |・・・・|・ |
 |・・・・|・ | |・・・・|・  |・・・・|・  |・・・・|・  |・・・・|・ |
 |・・・・|・ | |・・・・|・  |・・・・|・  |・・・・|・  |・・・・|・ |
 |・・・・|・ | |・・・・|・  |・・・・|・  |・・・・|・  |・・・・|・ |
              |                                                        |
 |・・・・|・ | |・・・・|・  |・・・・|・  |・・・・|・  |・・・・|・ |
 |契菌盲薫|伴 | |墨亜猫岐|瓶  |芽呂誉漠|尋  |墓倫睦環|乙  |爽渇灰鎖|弄 |
 |綿謙胡拡|股 | |携箇銭漬|涙  |呆幻宴旨|衝  |弟抵掲稽|功  |詩溶勉熊|忘 |
 |弥奨煎眉|暫 | |郵礁剤偶|姓  |玄霧臣遍|詠  |漸宛霜軸|遣  |沿孔伯旗|汲 |
              |                                                        |
 |・・・・|・ | |・・・・|・  |・・・・|・  |・・・・|・  |・・・・|・ |
 |撤顕愁駐|癒 | |紫鶴軒稚|葛  |摂騎撰祐|択  |胎狩翼毅|履  |捻漂垢搾|悶 |
 |季壁祥銅|鋼 | |蓄己拾街|兄  |緊掃描跳|乏  |杉杜摘働|賎  |牡滝傍朴|桜 |
 |妥瞬鼓販|酌 | |恭澄芝洞|企  |脇幡恨粘|磯  |汎輩沙駅|冥  |庄怯孤据|億 |
              |                                                        |
 |・・・・|・ | |・・・・|・  |・・・・|・  |・・・・|・  |・・・・|・ |
 |搬零冊握|胴 | |彼衡賜飼|亀  |窓丘愉瞭|刃  |拭獄悦唯|喪  |懲尖遷怒|捜 |
 |患癖飽吟|遮 | |麦垣殆堀|仙  |塁辱趣棒|彫  |掌附羊征|甚  |迂促沸炊|戯 |
 |笠督喝汗|憶 | |繕晦墜棲|滴  |絞卵符陶|媒  |唾祈馴吐|掘  |辰桑鍛抄|郡 |
              |                                                        |


| |・・・・|・  |・・・・|・  |・・・・|・  |・・・・|・ | |・・・・|・  
| |・・・・|・  |・・・・|・  |・・・・|・  |・・・・|・ | |・・・・|・  
| |・・・・|・  |・・・・|・  |・・・・|・  |・・・・|・ | |・・・・|・  
| |・・・・|・  |・・・・|・  |・・・・|・  |・・・・|・ | |・・・・|・  
|                                                        |               
| |・・・・|・  |・・・・|・  |・・・・|・  |・・・・|・ | |・・・・|・  
| |◆那鎮普|犬  |偉▲憂衰|厭  |湖峰↑州|頃  |砕羅龍△|衛 | |雀昨詳鬼|◇  
| |磨枚荘暮|蒲  |況施啓氏|液  |冠将棟衆|尻  |宗凡焦拙|奈 | |浪凄凶怠|房  
| |控抑挿隣|遂  |畑株寡膨|栗  |扱頓覆憤|催  |縛惚驚預|兆 | |弔壇債魂|塞  
|                                                        |               
| |・・・・|・  |・・・・|・  |・・・・|・  |・・・・|・ | |・・・・|・  
| |粒仰貯酔|蹴  |炭耕殿励|鉱  |剣腸鏡糖|輸  |粛奔悩畳|刷 | |核罰磁餅|譜  
| |●憲侵裸|徹  |爆←旅彩|究  |恋牧◎窮|菜  |券庫倍→|恩 | |謀棄還抱|○  
| |括溜渉糸|篭  |脂輝閣匹|舟  |錯看膜枯|剥  |袋姦揺喧|殊 | |紋弦戒燃|堪  
|                                                        |               
| |・・・・|・  |・・・・|・  |・・・・|・  |・・・・|・ | |・・・・|・  
| |殖床幹雷|唐  |募徴般駄|逝  |昌哲泥悔|網  |噴旋皇序|猟 | |阪拘幅凝|慎  
| |昧伐斜監|呈  |響逐揃粧|淫  |肝籍銘夢|顧  |騰拍含鉢|抗 | |委棚縄巧|域  
| |■昼舎柱|胸  |巣▼累第|穂  |革祭↓柳|肩  |泳療災▽|塗 | |誠君鑑陳|□  
|                                                        |               


  ・|・・・・| | ・|・・・・|  ・|・・・・|  ・|・・・・|  ・|・・・・| |
  ・|・・・・| | ・|・・・・|  ・|・・・・|  ・|・・・・|  ・|・・・・| |
  ・|・・・・| | ・|・・・・|  ・|・・・・|  ・|・・・・|  ・|・・・・| |
  ・|・・・・| | ・|・・・・|  ・|・・・・|  ・|・・・・|  ・|・・・・| |
               |                                                        |
  ・|・・・・| | ・|・・・・|  ・|・・・・|  ・|・・・・|  ・|・・・・| |
  ヵ|菊廉蜂瓜| | 杓|〃膳勿宵|  腺|禅〒凸暢|  羨|剰錠ヶ慕|  柏|峻湾挟※| |
  暇|析乞睡拒| | 鳩|柿吾翌炉|  抹|鷹菅覇傑|  髄|扇僕疫謡|  闇|獲繋軌醸| |
  慨|姿鶏篤這| | 乃|坊筒綱距|  弓|姫藍駒桃|  骸|蔭禍爵午|  棺|咲稼妖廻| |
               |                                                        |
  ・|・・・・| | ・|・・・・|  ・|・・・・|  ・|・・・・|  ・|・・・・| |
  堕|僅蕩矯猪| | 撲|掻釣賄薦|  駿|痴鈴臓豚|  喚|雇罵鉛臆|  芦|努侍哉岳| |
  ☆|遜聡呑誇| | 嫁|【齢盟妊|  需|賓々塵靴|  稀|径廷】醜|  薮|阻窃頻★| |
  巳|灼坦洲臼| | 班|叙帖鮫詮|  妄|韻湧租貼|  怖|嘱訂賑禿|  綴|穴欧袖升| |
               |                                                        |
  ・|・・・・| | ・|・・・・|  ・|・・・・|  ・|・・・・|  ・|・・・・| |
  轄|捲填翻呪| | 獣|鋳弊賊殻|  匠|汁晶簿圏|  貌|暦疾胃閲|  繊|抽唆秒皿| |
  匂|潰斗萌楚| | 桁|錬昂些把|  卸|召揮陥脅|  拓|珠蓮貝坪|  汰|蘇曽曇喫| |
  \|帝婆庸享| | 糾|〆熔侮妬|  疲|餓〇叱萎|  嘉|俄赦§磐|  悟|椎淋糧/| |
               |                                                        |

それ以上の拡張セット

 同様にして、30個の記号を1打鍵多くすることによって、1170文字分の領域が確保できます。このように、利用可能なキーの組み合わせをフル活用しながら最小限の変更で拡張できる点がG-Codeの特徴です。
 普通はそんなに多くの漢字は必要ないと思いますが、2000文字では足りないという方は、どうぞ御自由に拡張してください。


[ (裏話) | (目次) | 錬金術師の実験室 | m(as)m's home position ]

カレンダー

<   2012年5月
    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