説明

キー入力装置、その制御方法およびキー入力制御プログラム

【課題】 ユーザが誤ったホームポジションキーを基準として文字列を入力した場合であっても、ユーザがそのまま文字入力を継続できるようにする。
【解決手段】 ソフトウエアキーボードから入力される文字列の誤入力に基づいて、ユーザ固有のホームポジションを検出する。検出されたユーザ固有のホームポジションに応じてソフトウエアキーボード上に各キーを再配置する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、コンピュータ装置に対するテキストの入力技術に係り、とりわけソフトウエアキーボードに好適なテキスト入力技術に関する。
【背景技術】
【0002】
パーソナルコンピュータやワードプロセッサ等では、一般に、ユーザがテキストを入力するためのキーボードを備えている。操作に慣れたユーザは、キーボード上に2つのホームポジション(一般に、左手の人差し指の場合はFキー、右手の人差し指の場合はJキー)にそれぞれ両手の人差し指を置き、キーボードを見ることなく各キーを入力できる。いわゆる「タッチ・タイピング」である。
【0003】
タッチ・タイピングでは、ユーザが常にディスプレイを見ていられるので、誤入力に気付きやすく、視線の移動距離が小さいため目が疲れにくいなど、各種の利点がある。また、テキスト入力の効率も飛躍的に向上する。
【0004】
しかしながら、タッチ・タイピングを習得するには、特別な訓練が必要となるため、一般のユーザがその利点を享受するのは困難である。また、一般的なキーボードでは、ホームポジションとなる「F」キーと「J」キーに突起を設けることで、他のキーと区別しているが、ソフトウエアキーボードのように画面上に表示される仮想的なキーボードではこのような突起を設けることは困難である。
【0005】
したがって、たとえタッチ・タイピングを習得したユーザであっても、突起のないソフトウエアキーボードではタッチ・タイピングを実践するのは難しかった。
【0006】
特許文献1によれば、誤った入力文字を、キーボード上で1つ隣にあるの周辺文字と置換することにより、入力文字列を補正する仮名漢字変換装置が開示されている。また、特許文献2によれば、ユーザが誤ったホームポジションキーを基準として文字列を入力した場合であっても、正しいホームポジションキーからどの位ずれているかをユーザが入力するだけで、間違えて入力した文字列を正しい文字列に置換できる文字入力装置が開示されている。
【特許文献1】特開昭62−245364号公報
【特許文献2】特開平9−97130号公報
【発明の開示】
【発明が解決しようとする課題】
【0007】
特許文献1に記載の発明によれば、複数の文字からなるある文字列が入力された場合に、誤入力が1文字だけで他の文字が正しく入力されていれば、誤入力文字を1つ隣の文字に置換することで修正できる。しかしながら、ホームポジションがずれている場合など、入力された文字の全てが誤入力である場合は十分に修正できない欠点がある。すなわち、ユーザの指位置に対するキー配置などを補正することはできず、「タッチ・タイピング」などの連続した文字入力において適切に入力文字を補正することができない。
【0008】
また、特許文献2に記載の発明によれば、誤ったホームポジションキーを基準として文字列を入力したことにユーザが気付くことを前提としている。さらに、矢印キーなどを操作するなどして誤入力を手動で修正する必要がある。また、それ以上誤入力を続けないように指位置を正しいホームポジションキーへと移動する必要もある。よって、本来の「タッチ・タイピング」が目的とする入力効率が低下してしまう。
【0009】
そこで、本発明は、このような課題および他の課題の少なくとも一つを解決することを目的とする。なお、他の課題については明細書の全体を通して理解できよう。
【課題を解決するための手段】
【0010】
本発明によれば、たとえば、ソフトウエアキーボードから入力される文字列の誤入力に基づいてユーザ固有のホームポジションを検出し、検出された前記ユーザ固有のホームポジションに応じて前記ソフトウエアキーボード上に各キーを再配置するキー入力装置の制御技術が提供される。
【0011】
本発明に係るキー入力装置は、たとえば、複数のキーが配置されたキーボードからキーコード信号を入力する入力手段と、入力され複数のキーコード信号に対応する文字列が、意味を有する有意味文字列であるかまたは意味を有しない無意味文字列であるかを判定する意味判定手段と、無意味文字列と判定された前記文字列に含まれる各文字を、それぞれ前記キーボード上で所定のシフト量だけずらし、1以上の修正候補文字列を作成する修正候補作成手段と、前記修正候補文字列が有意味文字列となるときの前記シフト量に応じて、前記キーボード上の各キーに割り当てられている各文字を割り当て直すキー割り当て変更手段とを含む。
【発明の効果】
【0012】
本発明によれば、ユーザが誤ったホームポジションキーを基準として文字列を入力した場合であっても、ユーザが自己のホームポジションを修正することなく、そのまま文字入力を継続できるようになる。したがって、ユーザはタッチ・タイピングを実践しやすくなる。
【発明を実施するための最良の形態】
【0013】
以下に本発明の上位概念、中位概念および下位概念の理解に役立つ一実施形態を示す。なお、以下の実施形態に含まれる概念について、そのすべてが特許請求の範囲に記載されているとは限らない。ただし、これは特許発明の技術的範囲から意識的に除外したのではなく、特許発明と均等の関係にあるため特許請求の範囲には記載していない場合があることを理解していただきたい。
【0014】
[第1の実施形態]
図1は、実施形態に係るキー入力措置の例示的なブロック図である。CPU101は、ROM103に記憶されている制御プログラムに応じてキー入力装置の全体を統括的に制御する中央演算処理装置である。RAM102は、各種のデータが一時的に記憶されたり、バッファとして利用されたりする記憶手段である。各種データには、文字列の修正候補を登録したテーブル112が含まれてもよい。ROM103は、キー入力制御プログラム108や、有意味文字列を登録した辞書データ109、およびキーボード上の各キーの配置位置を管理するキーは位置情報111などを記憶する記憶手段である。
【0015】
表示インタフェース(IF)104は、表示装置105に表示するための表示信号を出力する制御手段である。表示装置105は、液晶表示装置、CRTなどの色覚的な出力手段である。入力IF106は、入力装置107から入力される入力信号(キーコード信号など)をCPU101に伝達したり、CPU101からの指示に応じて入力装置107を制御したりする制御手段である。入力装置107は、キーボード、ポインティングデバイス、およびタッチパネルなどの入力手段である。なお、入力装置107から入力されたキーコード(文字コードともいう。)はRAM102内の入力文字バッファ110に格納される。バッファ110に格納されている複数のキーコードによって、何らかの文字列が形成される。
【0016】
図2は、実施形態に係るキー入力装置の例示的な機能を示したブロック図である。キーボード201は、複数のキーが配置されており、打鍵されたキーに応じたキーコード信号を出力する。キーボード201は、入力装置101に相当するハードウエアキーボードであってもよいし、あるいはタッチパネルなどの入力装置107と表示装置105とによって実現されるソフトウエアキーボードであってもよい。キーコード信号は入力手段202に入力される。入力手段202は、CPU101や入力バッファ110などによって実現できる。
【0017】
意味判定手段203は、入力された複数のキーコード信号に対応する文字列が、意味を有する有意味文字列であるかまたは意味を有しない無意味文字列であるかを判定する。これは、CPU101が、辞書データ109を参照することにより実現できる。
【0018】
修正候補作成手段204は、無意味文字列と判定された前記文字列に含まれる各文字を、それぞれ前記キーボード上で所定のシフト量だけずらし、1以上の修正候補文字列を作成する。これは、CPU101がキー配置情報111を参照することによって実現できる。すなわち、キー配置情報111には、各キーごとに他のキーがどの方向にどれだけずれた位置にあるかを表す情報(シフト量)が含まれている。たとえば、「F」キーについて、シフト量が「1文字右」であれば、修正候補は「G」キーとなる。
【0019】
キー割り当て変更手段205は、修正候補文字列が有意味文字列となるときのシフト量に応じて、キーボード201上の各キーに割り当てられている各文字を割り当て直す。これは、CPU101によって実現できる。なお、キー割り当て変更手段205は、シフト量に応じて、キーボード上の各キーの配列位置を変更する位置変更手段を含んでもよい。これにより、たとえば、ソフトウエアキーボードであれば、ユーザの誤入力(癖を含む。)に合わせて、各キーの表示位置を変更することができ、その後の誤入力を削減できよう。もちろん、ユーザ固有のホームポジションを検出して、検出されたユーザ固有のホームポジションに応じてキーを再配置してもよい。これによって、ユーザごとに個別のキーボードを提供することができる。
【0020】
図3は、実施形態に係るキー入力制御方法の例示的なフローチャートである。ステップS301において、CPU101は、入力IF106を通じ、入力装置107(キーボード201)の打鍵を検出する。打鍵を検出すると、ステップS302において、CPU101は、打鍵により入力されたキーコードが、仮名漢字変換キーであるか否かを判定する。仮名漢字変換キーでなければ、ステップS303に進み、入力されたキーコードをバッファ110に格納する。
【0021】
仮名漢字変換キーであればステップS304において、CPU101は、バッファ110に記憶されている文字列を読み出し、当該文字列が無意味文字列か否かを判定する。たとえば、当該文字列が、辞書データ109に含まれているかどうかを検索し、抽出の有無により無意味文字列(有意味文字列)判定を実行する。一例を説明すると、ローマ字入力に設定されているときに、“konnnitiha”と入力されたとする。すると、辞書データ109に登録されている「こんにちは」にマッチするため、CPU101は、有意味文字列と判定する。“lpmmmoyojs”などと入力された場合には、辞書登録されているどの語ともマッチしないため、CPU101は、無意味文字列と判定する。そもそもローマ字入力の場合には、入力されたアルファベット三文字までの組み合わせが、どの「かな」にも変換できないものであれば、無意味と判定することができる。有意味文字列であればステップS309に進み、仮名漢字変換を実行する。
【0022】
一方、無意味文字列であれば、ステップS305に進み、CPU101は、入力された文字列を、キーボード上のキー配列にしたがって所定のシフト量だけずらし、修正候補文字列を作成する。CPU101は、処理対象となる文字の修正候補を上述のキー配置情報111を参照して決定する。キー配置情報111には、各キーの修正候補が、シフト量ごとに登録されている。シフト量は、1文字右、1文字左、1文字左下、1文字右下、1文字左上、1文字右上、2文字右、…、n文字右などである。修正候補文字列は、一旦、RAM102に記憶される。
【0023】
ステップS306において、CPU101は、作成した修正候補文字列が有意味文字列か否かを判定する。有意味文字列でなければ、ステップS305に戻り、次の修正候補文字列を作成する。
【0024】
なお、ステップS305において、予め複数の修正候補文字列を作成し、作成された修正候補文字列を修正候補テーブルに登録してもよい。当該テーブルは、RAM102に記憶しておくことができる。CPU101は、当該テーブルに登録されている各候補文字列について、上述の有意味文字列判定を実行する。
【0025】
有意味文字列が見つかると、ステップS307に進み、CPU101は、有意味文字列となるときのシフト量を決定し、RAM102に記憶する。ステップS308において、CPU101は、決定されたシフト量をRAM102から読み出し、このシフト量に応じてキー割り当てを変更する。
【0026】
ハードウエアキーボードについて、シフト量が1文字右であれば、たとえば、「F」キーが押されたときに「G」キーのキーコードが出力されるように、キーとキーコード(文字)との対応関係を変更する。他のキーについても同様に変更する。あるいは、キーコードの変換テーブルをRAM102に記憶しておき、Fキーのキーコードが検出されると、変換テーブルに基づいて文字Gに変換してもよい。
【0027】
ソフトウエアキーボードについてもハードウエアキーボードと同様に処理してもよいが、キー配置を自由に変更できる利点を生かして、次のようにキー割り当てを変更してもよい。CPU101は、上述のシフト量に応じて、ソフトウエアキーボード上における各キーの表示位置と検出位置とを変更する。たとえば、CPU101は、今までタッチパネル上でFキーに割り当てられていた検出領域を、Gキー用の検出領域に変更する。具体的には、各キーについて、タッチパネル上での座標データを管理するキー割り当てテーブルを変更し、RAM102に記憶する。また、CPU101は、キー割り当てテーブルを参照し、Fキーが表示されていた表示領域にGキーを表示させる。
【0028】
ステップS309において、CPU101は、仮名漢字変換処理を実行する。たとえば、有意味文字列を仮名漢字変換処理して変換文字候補を表示装置105に表示する。ユーザにより「次候補」が指示された場合、CPU101は、次候補を表示装置105に表示する。ユーザにより「確定」が指示された場合、CPU101は、文字入力を確定する。
【0029】
上述の説明を、具体例を用いて補足する。ここでは、ローマ字入力モードで「こんにちは」と入力する場合を例にする。ユーザがキーボード101を操作してテキスト入力するとき、ユーザの指位置がホームポジションから1キー分だけ右にずれていたとする。正しくホームポジションに両手が置かれていれば、ローマ字で“konnnitiha”と入力されるべきところを、指位置が1キー分右にずれていたために“lpmmmoyojs”と入力される。CPU101は、ユーザによりキーが打鍵されるごとに、入力された文字コードをバッファリング(一時蓄積)する(S303)。ここでは“l” “p” “m” “m” “m” “o” “y” “o” “j” “s”が、この順番どおりにバッファリングされる。
【0030】
ユーザにより変換キーが打鍵されるなどして変換が指示されると(S302)、意味判定手段203は、無意味文字列“lpmmmoyojs”を検出する(S304)。本実施形態のキー入力装置によれば、この無意味文字列“lpmmmoyojs”について、文字コードをキー配列にしたがって所定量だけシフトさせることにより修正候補テーブルを作成する。
【0031】
図4は、実施形態に係る修正候補テーブルの一例を示す図である。修正候補文字列について、辞書登録語(有意味文字列)とのマッチングをとる。「シフト量」が「1文字右」の文字列“konnnitiha”についてマッチング量が最大となるので、CPU101は、修正文字列“konnnitiha” を取得し、そのときの「シフト量」として「1文字右」を取得する。キー割り当て変更手段205は、各キーに対して「シフト量」分ずらして各文字コードを割り当て、ユーザによる指位置のずれ(すなわちホームポジションのずれ)を解消する。
【0032】
以上説明したように、本実施形態によれば、キーボードから入力される文字列の誤入力に基づいて有意味文字列となるときのシフト量を決定し、決定されたシフト量に応じて各キーの割り当てを変更するようにした。したがって、ユーザが誤ったホームポジションキーを基準として文字列を入力した場合であっても、キー配置(配列、位置および間隔など)が自動的に修正されるので、ユーザが自己のホームポジションを修正することなくそのまま文字入力を継続できるようになる。また、ユーザはタッチ・タイピングを実践しやすくなる。
【0033】
上述の実施形態について切り口を変えてみると、本発明は、ソフトウエアキーボードから入力される文字列の誤入力に基づいてユーザ固有のホームポジションを検出し、検出された前記ユーザ固有のホームポジションに応じてソフトウエアキーボード上に各キーを再配置する技術であることが理解できよう。
【0034】
[第2の実施形態]
第1の実施形態では、右手と左手のシフト量が同一であるものとして説明した。しかしながら、右手については正しいホームポジションにありながら、左手だけが誤ったホームポジションにあるような事態も、現実には発生しうる。
【0035】
たとえば「こんにちは」とローマ字入力でデータ入力する際に、ユーザの右手がホームポジションから1キー分だけ右にずれていたとする。正しくホームポジションに両手が置かれていれば、ローマ字で“konnnitiha”と入力されるべきところを、右手が1キー分右にずれていたために“lpmmotoja”と入力されてしまう。
【0036】
そこで、第2の実施形態では、左右別々にシフト量を検出してキー割り当てを変更する方法を説明する。
【0037】
図5は、第2の実施形態に係るキー入力制御方法の例示的なフローチャートである。なお、既に説明した個所については同一の参照符号を付すことにより説明を簡略化する。ステップS301において打鍵が検出されると、ステップS501に進み、CPU101は、キーの打鍵に使用された手を識別する。なお、本発明は、左右どちらかの手の指によって打鍵されたかを検知する具体的な手段・方法に限定されることはないが、そのような手段の一例について第3の実施形態で説明する。
【0038】
ステップS302において変換指示が検出されない場合は、ステップS503に進み、入力されたキーコードとともに、打鍵に使用された手の識別情報をRAM102のバッファ110に記憶する。
【0039】
このように本実施形態では、ユーザにより一つ一つのキーが打鍵されるごとに、それが左右どちらの手の指によって打鍵されたかを検出し、その検出結果を、その入力されたキーコードとともRAM102に記憶する。上述の例であれば、“l(右)” “p(右)” “m(右)” “m(右)” “m(右)” “o(右)” “t(左)” “o(右)” “j(右)” “a(左)”が、この順番でRAM102にバッファされる。
【0040】
仮名漢字変換が指示されると、ステップS304において無意味文字判定を実行する。文字列“lpmmotoja”は無意味な文字列なので、ステップS505に進む。
【0041】
ステップS505において、CPU101は、右手と左手とで個別のシフト量を適用して修正候補文字列を作成する。ステップS306において、候補文字列が有意味文字列でないと判定されると、シフト量を変更して他の候補文字列を作成し、有意味文字列判定を実行する。
【0042】
なお、上述のように修正候補テーブルを作成してもよい。たとえば、入力文字列“lpmmotoja”について、文字コードをキー配列にしたがって左右それぞれにずらすことにより修正候補テーブルを作成する。
【0043】
図6は、第2の実施形態に係る修正候補テーブルの一例を示す図である。図4のテーブルと比較すると、右手のシフト量と左手のシフト量とが設けられ、それぞれのシフト量に応じて対応する修正候補が登録されていることがわかる。この例では、「左手のシフト量」が「なし」で、「右手のシフト量」が「1文字右」となる文字列“konnnitiha”についてマッチング量が最大となる。よって、CPU101は、修正文字列“konnnitiha” を取得し、ステップS507に進む。
【0044】
ステップS507において、CPU101は、有意味文字列が取得されたときの「左手のシフト量」と、「右手のシフト量」とをRAM102に記憶する。各シフト量は、修正文字列“konnnitiha”を検索キーとして、修正候補テーブルを検索することにより抽出してもよいし、上述のS505において、現在の各シフト量をRAM102に予め記憶しおいてもよい。後者の場合は、S507を省略することができる。
【0045】
ステップS508において、CPU101は、右手のシフト量と、左手のシフト量をRAM102から読み出し、各シフト量に応じてキー割り当てを変更する。具体的な変更方法は、ステップS308で説明した通りである。たとえば、キー割り当て変更205は、左手により操作される各キーについては、キーの配置をずらさず、右手で打鍵される各キーについては「1文字右」にずらして文字コードを割り当て、ユーザによる指位置のずれを補正できる。
【0046】
このように第2の実施形態によれば、キーボード上におけるユーザの左手位置と右手位置を検出し、検出された左手位置と右手位置とに応じて、それぞれ左手シフト量と右手シフト量を決定する。そして、決定された左手シフト量に応じて、キーボード上のキーのうち左手により操作されるキーの割り当てを変更し、決定された右手シフト量に応じて、キーボード上のキーのうち右手により操作されるキーの割り当てを変更する。これにより、右手と左手でシフト量が異なる場合であっても適切にキーの割り当てを変更することができるとともに、第1の実施形態と同様の優れた効果を奏する。
【0047】
[第3の実施形態]
本実施形態では、ユーザにより左右どちらの手でキーが打鍵されたかを検出する方法について説明する。この例のハードウエア構成は、図1に示したものを採用できるが、説明の便宜上、入力装置107と表示装置105が一体となったタッチパネル付きディスプレイを採用するものとする。
【0048】
図7は、実施形態に係る右手左手識別方法の例示的なフローチャートである。なお、既に説明した個所は簡潔に説明する。ステップS701において、CPU101は、入力装置(タッチパネル)107から打鍵指示があったかどうかを判定する。打鍵指示は、タッチパネル上にユーザの指が乗ると、その押圧力がタッチパネルの感圧センサーによって検知され、押圧位置の座標データが、入力IF106からCPU101に伝達される。
【0049】
ステップS702において、CPU101は、所定時間内に入力された打鍵指示の数と、その打鍵位置をRAM102に記憶する。所定時間は、非常に短い時間である。なぜなら、実質的に同時に入力された打鍵指示を検出するための時間だからである。
【0050】
ステップS703に進み、CPU101は、打鍵指示数を読み出し、その値に応じて処理を分岐する。打鍵指示数が8であれば、ステップS706に進む。打鍵指示数が、7以下または11以上であれば、ステップS704に進み、CPU101は、警告指示を表示装置105から出力する。この警告表示は、たとえば、「手をパネルに正しく置いて下さい」というような教示メッセージであってもよい。もちろん、視覚的な情報の出力に代えて、音声出力、警告音の出力としてもよい。
【0051】
打鍵指示数が9ないし10であれば、ステップS705に進み、CPU101は、8つの打鍵指示を選定する。
【0052】
図8は、実施形態に係る打鍵指示の選定を説明するための図である。この例では、タッチパネル800において、ユーザが10本の指を置いた様子を示している。10の打鍵指示801は、それぞれ10本の指に対応している。CPU101は、すべての打鍵指示の各座標位置を読み出し、それに基づいてすべての打鍵指示を囲むことのできる最小の矩形802を算出する。つづいて、矩形802の短辺方向において、相対的に上方にある8箇所を識別対象として選定する。図8では、矩形803により囲まれている8つの打鍵指示801が、右手・左手の識別対象となる。このように四角形802を用いるのは、ユーザの親指による打鍵はスペースキーのみであることを仮定しているからであり、識別の対象から除外するためである。
【0053】
ステップS706において、CPU101は、選定された8つの打鍵指示について、相対的に右手にある4つの打鍵指示を右手による打鍵指示と認識し、それ以外(すなわち相対的に左側にある4つの打鍵指示)を左手による打鍵指示であると認識する。図8の例では、矩形805によって囲まれている4つの打鍵指示が、左手による打鍵指示として認識され、矩形804によって囲まれている4つの打鍵指示が、右手による打鍵指示として認識される。
【0054】
ステップS707において、CPU101は、各打鍵指示のトレース(入力追跡処理)を開始する。ステップS708において、新規の打鍵指示が検出されると、ステップS709に進み、その打鍵指示が左右どちらの手で操作されたかを識別する。すなわち、最初に検出された右手の打鍵指示の位置と、左手の打鍵指示の位置に応じて、それぞれの手または指の位置を推定することで、トレースを行なう。
【0055】
なお、指紋認識を行い、認識された指紋が左右どちらの手の指紋かを判断する事によって左右どちらの手で操作されたか識別する方式を採用してもよい。タッチパネルにタッチされた指紋を認識する技術は特開平11−327727号公報に開示がある。
また、タッチパネルにおいて複数の打鍵指示を検出する手段としては、たとえば、特開平08−147091号公報に開示されているもの、特開平08−328725号公報に開示されているものなどがあるが、本発明はこれら以外の手段を採用してもよい。
【0056】
以上説明したように本実施形態によれば、CPU101は、タッチパネルによって所定時間内(または実質的に同時)に入力される複数の打鍵指示を検出する。CPU101は、複数の打鍵指示が入力された入力位置と、該打鍵指示の数とを認識する。打鍵指示の数が所定数(たとえば、8ないし10)であれば、打鍵指示の入力位置に基づいて、それぞれの前記打鍵指示がユーザの右手または左手のいずれにより入力されたものであるかを推定もしくは識別することができる。すなわち、8つの打鍵指示のうち、相対的に左側に位置する打鍵指示を左手により入力されたものとして識別し、相対的に左側に位置する打鍵指示を左手により入力されたものとして識別することができる。
【0057】
このように本実施形態では、タッチパネル上における打鍵指示がどちらの手により入力されたものであるかを識別できる利点がある。また、どちらの手による打鍵指示かを識別できるので、上述の第2の実施形態を実現できるメリットがある。
【0058】
また、打鍵指示の数が、7以下または11以上である場合に、警告情報を出力するようにしたので、ユーザは、指の載せ方の誤りに気付きやすくなる。
【0059】
[第4の実施形態]
図9は、実施形態に係るキー入力装置の応用例を示す図である。この図のキー入力装置は、ディスプレイシステムとして実現したものであり、画面900およびタッチパネル901を含む本体部は、支持機構902によって支持されている。
【0060】
画面900には、実施形態に係るソフトウエアキーボード903が表示される。ソフトウエアキーボードは、上述のCPU101、RAM102およびROM103などにより構成される制御装置により入出力処理を制御される。
【0061】
図10は、実施形態に係るソフトウエアキーボードの一例を示す図である。画面900に表示されるソフトウエアキーボード903には、それぞれユーザのユーザの左手により操作されるキー群1001と、右手により操作されるキー群1002とが表示されている。CPU101は、右手用キー群1001と左手用キー群1002とを、青色(図の実線)、赤色(図の点線)などそれぞれ異なる表示色を用いて表示させる。本実施形態では、ユーザにより左手が操作されるときには青色のキーボードのキーが、右手が操作されるときには赤色のキーボードのキーが打鍵されたものとして認識する。
【0062】
なお、CPU101は、タッチパネル上の最初に入力された打鍵指示の位置の近傍にソフトウエアキーボード903を表示させる。近傍とは、打鍵指示の位置から手を大幅に動かすことなくキー入力できる位置を意味する。可能であれば手を移動させることなく、そのままキー入力できるほうが、ユーザには便利だからである。
【0063】
図11は、実施形態に係るキー入力装置において文字入力されたときの画面遷移の一例を示す図である。図において、ウインドウ1100は、表示装置105にメモを表示する「付箋アプリケーション」のメモ編集画面を示している。付箋アプリケーションは、ROM103または不図示のハードディスクドライブ装置に記憶されているものとする。付箋アプリケーションが起動すると、CPU101は、ソフトウエアキーボード1101を含むメモ編集画面1100を表示装置105に表示させる。ユーザによりソフトウエアキーボード1101が打鍵され文字入力が実行されると、図11(a)から(b)へと状態が遷移する。
【0064】
CPU101は、入力された文字をテキストエリア1102に表示する。またキーボード1101は、実施形態に係る発明の作用によって、右手用のキー群が右にずれて表示される。すなわち、右手用のキー群について上述の右手シフト量に応じたキー割り当ての変更がなされている。もちろん、左手手用のキー群について上述の左手シフト量に応じたキー割り当ての変更を行なってもよい。
【0065】
なお「付箋アプリケーション」は説明の便宜として用いたものであり、本発明は他のアプリケーションにも適用可能である。
【0066】
本実施形態によれば、左手により操作されるキーと、右手により操作されるキーとの表示態様を異ならしめて表示する。たとえば、それぞれの表示色、およびキーの外形を表す線種などの少なくとも一方を異ならしめて表示することで、右手用のキー群と左手用のキー群とを、ユーザは認識しやすくなる。基本的には、熟練したユーザであれば、キーの配置を見ることなくタッチ・タイピングを実践できる。しかしながら、キーの配置を確認しながら打鍵するような初心者にとっては、本実施形態に係る発明によって、右手キー群と左手キー群を視覚的に識別しやすくなろう。
【0067】
[他の実施形態]
以上、様々な実施形態を詳述したが、本発明は、複数の機器から構成されるシステムに適用してもよいし、また、一つの機器からなる装置に適用してもよい。たとえば、表示装置と入力装置とが一体となったキー入力システムに本発明を適用してもよいし、タッチパネルなどの入力装置が接続されたパーソナルコンピュータに本発明を適用してもよい。
【0068】
なお、本発明は、前述した実施形態の各機能を実現するソフトウェアプログラム(本実施形態では図3、図5または図7に示すフローチャートに対応したプログラム)を、システム若しくは装置に対して直接または遠隔から供給し、そのシステム若しくは装置に含まれるコンピュータが該供給されたプログラムコードを読み出して実行することによっても達成される。
【0069】
したがって、本発明の機能・処理をコンピュータで実現するために、該コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、上記機能・処理を実現するためのコンピュータプログラム自体も本発明の一つである。
【0070】
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等、プログラムの形態を問わない。
【0071】
プログラムを供給するための記録媒体としては、たとえば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、MO、CD−ROM、CD−R、CD−RW、磁気テープ、不揮発性のメモリカード、ROM、DVD(DVD−ROM,DVD−R)などがある。
【0072】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続し、該ホームページから本発明のコンピュータプログラムそのもの、もしくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるWWWサーバも、本発明の構成要件となる場合がある。
【0073】
また、本発明のプログラムを暗号化してCD−ROM等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせ、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
【0074】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される他、そのプログラムの指示に基づき、コンピュータ上で稼動しているOSなどが、実際の処理の一部または全部を行い、その処理によっても前述した実施形態の機能が実現され得る。
【0075】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によっても前述した実施形態の機能が実現される。
【図面の簡単な説明】
【0076】
【図1】図1は、実施形態に係るキー入力措置の例示的なブロック図である。
【図2】図2は、実施形態に係るキー入力装置の例示的な機能を示したブロック図である。
【図3】図3は、実施形態に係るキー入力制御方法の例示的なフローチャートである。
【図4】図4は、実施形態に係る修正候補テーブルの一例を示す図である。
【図5】図5は、実施形態に係るキー入力制御方法の例示的なフローチャートである。
【図6】図6は、実施形態に係る修正候補テーブルの一例を示す図である。
【図7】図7は、実施形態に係る右手左手識別方法の例示的なフローチャートである。
【図8】図8は、実施形態に係る打鍵指示の選定を説明するための図である。
【図9】図9は、実施形態に係るキー入力装置の応用例を示す図である。
【図10】図10は、実施形態に係るソフトウエアキーボードの一例を示す図である。
【図11】図11は、実施形態に係るキー入力装置において文字入力されたときの画面遷移の一例を示す図である。

【特許請求の範囲】
【請求項1】
複数のキーが配置されたキーボードからキーコード信号を入力する入力手段と、
入力され複数のキーコード信号に対応する文字列が、意味を有する有意味文字列であるかまたは意味を有しない無意味文字列であるかを判定する意味判定手段と、
無意味文字列と判定された前記文字列に含まれる各文字を、それぞれ前記キーボード上で所定のシフト量だけずらして得られる1以上の修正候補文字列を作成する修正候補作成手段と、
前記修正候補文字列が有意味文字列となるときの前記シフト量に応じて、前記キーボード上の各キーに割り当てられている各文字を割り当て直すキー割り当て変更手段と
を含むキー入力装置。
【請求項2】
前記キー割り当て変更手段は、
前記シフト量に応じて、前記キーボード上の各キーの配列位置を変更する位置変更手段である
ことを特徴とする請求項1に記載のキー入力装置。
【請求項3】
前記キー割り当て変更手段は、
前記キーボード上におけるユーザの左手位置と右手位置を検出する位置検出手段と、
検出された前記左手位置と前記右手位置とに応じて、それぞれ左手シフト量と右手シフト量を決定するシフト量決定手段と、
決定された前記左手シフト量に応じて、前記キーボード上のキーのうち左手により操作されるキーの割り当てを変更し、決定された前記右手シフト量に応じて、前記キーボード上のキーのうち右手により操作されるキーの割り当てを変更する個別変更手段と
を含むことを特徴とする請求項1または2に記載のキー入力装置。
【請求項4】
前記キーボードは、
ユーザ打鍵位置を検出するタッチパネルと、
前記タッチパネルに対応して設けられた表示装置と
検出された前記ユーザ打鍵位置の近傍にキーを表示する表示制御インタフェースと
により構成されるソフトウエアキーボードであることを特徴とする請求項3に記載のキー入力装置。
【請求項5】
前記個別変更手段は、
決定された前記左手シフト量と前記左手の打鍵位置とに応じて、前記ソフトウエアキーボード上のキーのうち左手により操作されるキーの表示位置を変更し、決定された前記右手シフト量と前記右手の打鍵位置に応じて、前記ソフトウエアキーボード上のキーのうち右手により操作されるキーの表示位置を変更する表示位置変更手段を含む
ことを特徴とする請求項4に記載のキー入力装置。
【請求項6】
前記左手の打鍵位置と前記右手の打鍵位置に応じて、前記左手により操作されるキーと、前記右手により操作されるキーとの表示態様を異ならしめて表示する表示態様変更手段をさらに含むことを特徴とする請求項4または5に記載のキー入力装置。
【請求項7】
前記表示態様変更手段は、前記左手により操作されるキーと、前記右手により操作されるキーとについて、それぞれの表示色、およびキーの外形を表す線種の少なくとも一方を異ならしめて表示することを特徴とする請求項6に記載のキー入力装置。
【請求項8】
所定時間内に入力される複数の打鍵指示を検出するタッチパネルと、
前記タッチパネル上における前記複数の打鍵指示が入力された入力位置と、該打鍵指示の数とを認識する認識手段と、
前記打鍵指示の数が所定数である場合に、前記打鍵指示の入力位置に基づいて、それぞれの前記打鍵指示がユーザの左手または左手のいずれにより入力されたものであるかを識別する識別手段と
を含むことを特徴とするキー入力装置。
【請求項9】
前記打鍵指示の数が、7以下または11以上である場合に、警告情報を出力する出力手段をさらに含む請求項8に記載のキー入力装置。
【請求項10】
前記推定手段は、
前記打鍵指示の数が、9または10である場合に、相対的に前記タッチパネル上の情報に位置する8つの打鍵指示を選択し、選択された8つの前記打鍵指示のうち、相対的に左側に位置する打鍵指示を左手により入力されたものとして推定し、相対的に左側に位置する打鍵指示を左手により入力されたものとして推定することを特徴とする請求項9に記載のキー入力装置。
【請求項11】
複数のキーが配置されたキーボードからキーコード信号を入力する入力工程と、
入力され複数のキーコード信号に対応する文字列が、意味を有する有意味文字列であるかまたは意味を有しない無意味文字列であるかを判定する意味判定工程と、
無意味文字列と判定された前記文字列に含まれる各文字を、それぞれ前記キーボード上で所定のシフト量だけずらして1以上の修正候補文字列を作成する修正候補作成工程と、
前記修正候補文字列が有意味文字列となるときの前記シフト量に応じて、前記キーボード上の各キーに割り当てられている各文字を割り当て直すキー割り当て変更工程と
を含むキー入力装置。
【請求項12】
タッチパネルから所定時間内に入力される複数の打鍵指示を検出する検出工程と、
前記タッチパネル上における前記複数の打鍵指示が入力された入力位置と、該打鍵指示の数とを認識する認識工程と、
前記打鍵指示の数が所定のしきい値以上である場合に、前記打鍵指示の入力位置に基づいて、それぞれの前記打鍵指示がユーザの左手または左手のいずれにより入力されたものであるかを識別する識別工程と
を含むことを特徴とする操作手の判別方法。
【請求項13】
複数のキーが配置されたキーボードを有するコンピュータに対し、
前記キーボードからキーコード信号を入力する入力工程と、
入力され複数のキーコード信号に対応する文字列が、意味を有する有意味文字列であるかまたは意味を有しない無意味文字列であるかを判定する意味判定工程と、
無意味文字列と判定された前記文字列に含まれる各文字を、それぞれ前記キーボード上で所定のシフト量だけずらして1以上の修正候補文字列を作成する修正候補作成工程と、
前記修正候補文字列が有意味文字列となるときの前記シフト量に応じて、前記キーボード上の各キーに割り当てられている各文字を割り当て直すキー割り当て変更工程と
を実行させるキー入力制御プログラム。
【請求項14】
タッチパネルを有するコンピュータに対し、
前記タッチパネルから所定時間内に入力される複数の打鍵指示を検出する検出工程と、
前記タッチパネル上における前記複数の打鍵指示が入力された入力位置と、該打鍵指示の数とを認識する認識工程と、
前記打鍵指示の数が所定のしきい値以上である場合に、前記打鍵指示の入力位置に基づいて、それぞれの前記打鍵指示がユーザの左手または左手のいずれにより入力されたものであるかを識別する識別工程と
を実行させるコンピュータプログラム。
【請求項15】
ソフトウエアキーボードから入力される文字列の誤入力に基づいてユーザ固有のホームポジションを検出する検出手段と、
検出された前記ユーザ固有のホームポジションに応じて前記ソフトウエアキーボード上に各キーを再配置する再配置手段と
を含むキー入力装置。
【請求項16】
ソフトウエアキーボードから入力される文字列の誤入力に基づいてユーザ固有のホームポジションを検出する検出工程と、
検出された前記ユーザ固有のホームポジションに応じて前記ソフトウエアキーボード上に各キーを再配置する再配置工程と
を含むキー入力装置の制御方法。
【請求項17】
表示装置に表示されるソフトウエアキーボードから文字列を入力するコンピュータに対し、
前記ソフトウエアキーボードから入力される文字列の誤入力に基づいてユーザ固有のホームポジションを検出する工程と、
検出された前記ユーザ固有のホームポジションに応じて前記ソフトウエアキーボード上に各キーを再配置し、再配置後の各キーを前記表示装置に表示するする工程と
を含むコンピュータプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate


【公開番号】特開2006−86934(P2006−86934A)
【公開日】平成18年3月30日(2006.3.30)
【国際特許分類】
【出願番号】特願2004−271010(P2004−271010)
【出願日】平成16年9月17日(2004.9.17)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】