JP2000339091A - ソフトウェアキーボード装置 - Google Patents

ソフトウェアキーボード装置

Info

Publication number
JP2000339091A
JP2000339091A JP11152971A JP15297199A JP2000339091A JP 2000339091 A JP2000339091 A JP 2000339091A JP 11152971 A JP11152971 A JP 11152971A JP 15297199 A JP15297199 A JP 15297199A JP 2000339091 A JP2000339091 A JP 2000339091A
Authority
JP
Japan
Prior art keywords
character
group
cursor
software keyboard
character group
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP11152971A
Other languages
English (en)
Other versions
JP3841590B2 (ja
Inventor
Toshiaki Shinohara
稔昌 篠原
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nintendo Co Ltd
Original Assignee
Nintendo Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nintendo Co Ltd filed Critical Nintendo Co Ltd
Priority to JP15297199A priority Critical patent/JP3841590B2/ja
Publication of JP2000339091A publication Critical patent/JP2000339091A/ja
Application granted granted Critical
Publication of JP3841590B2 publication Critical patent/JP3841590B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Input From Keyboards Or The Like (AREA)

Abstract

(57)【要約】 【課題】 入力ディバイスの数および機能と、入力結果
をユーザに示す表示面積が共に制限された環境下におい
て、ユーザが肉体的および心理的負担が少なく、文字が
入力できるソフトウェアキーボード装置を提供すること
を目的とする。 【解決手段】 ソフトウェアキーボード装置(SKA)
は、第1の文字群を、第1の所定数の文字から成る第1
の文字グループ(Gc)と、第1の所定数より少ない第
2の所定数の文字から成る第2の文字グループ(Gv)
とに分け、第1のおよび第2の文字グループに含まれる
文字を互いに対向かつ平行な方向に連続して表示する文
字グループ表示部と、ユーザの指示に基づいて、ポイン
タを一文字分ずつ移動させて、表示された文字のそれぞ
れを、指し示すポインタ(19、19e)と、ポインタ
が、第1の文字グループ内の何れかの文字を指し示して
いる時は、ポインタの位置に応じて第2の文字グループ
全体の表示位置をシフト制御するための表示位置制御部
を有する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、小型軽量化された
デジタル携帯機器のように、入力ディバイスの数および
機能と、入力結果をユーザに示す表示面積が共に制限さ
れた使用環境下において、ユーザの肉体的および心理的
負担が少なく、文字が入力できるソフトウェアキーボー
ド装置に関する。
【0002】
【従来の技術】近年、腕時計、携帯電話、携帯用オーデ
ィオ機器、携帯用ビデオ機器および携帯情報端末等に代
表される小型軽量化されたデジタル携帯機器が、社会に
広く普及している。その結果、多くのユーザは、そのよ
うなデジタル携帯機器に文字情報を入力したいという要
望を持っている。しかしながら、そのようなデジタル携
帯機器においては、携帯性を追求した結果、ユーザが文
字入力を行うために利用できる入力ディバイスの数およ
び機能が制限されている。さらに、ユーザが、自身の入
力内容を確認するために必要とする表示部の面積も制限
されている。
【0003】このような環境下で、従来提供されている
文字入力装置の代表的なものとしては、カーソルキーを
操作して、全ての入力可能な文字を順番に表示させ、所
望の文字が表示された時点で、選択のための入力ディバ
イスを操作して選択するものがある。この場合、所望の
文字が直ちに表示されれば良いが、平均的に、その入力
装置に用意されている全文字数の半分を表示させる必要
がある。
【0004】
【発明が解決しようとする課題】このような、状態にお
いて、数十万以上の文字の種類があると言われる日本語
を、制限された入力ディバイスおよび限られた表示面積
の従来の文字入力手段を用いて入力するのは、実際上不
可能と言わざるを得ない。そこで、本発明においては、
そのような制限された環境下においても、人間の行動心
理を考慮し、比較的キー・ストロークが少なくなるよう
工夫したソフトウェアキーボードを提案する。行動心理
とは、画面から得られる情報を基に次にどの様にカーソ
ルを移動させるのかという観点である。
【0005】ソフトウェアキーボードにより日本語を入
力する場合、50音全てを画面に網羅すると目的の文字
を探すのに手間取り、キー・ストローク(入力装置の操
作回数)が多くなる傾向にある。最近流行の携帯電話や
ミニディスク装置等は文字入力ができるが結構厄介な入
力をしなければならず、ユーザにかなりな肉体的および
心理的負担がかかり、精神衛生上良くない。また、ミニ
ディスク装置等に備えられている表示装置の表示画面を
占有するキーボード部の割合が多くなる。本発明は上記
の課題を解決するために成されたもので、ボタン数の少
ない入力装置で、簡単に日本語入力することを可能に
し、ローマ字入力を行えるソフトウェアキーボードを提
供することを目的とする。
【0006】
【課題を解決するための手段および発明の効果】第1の
発明は、同一の文字種から成る第1の文字群に含まれる
文字を組み合わせて、第1の文字群に含まれる文字とは
異なる文字種から成る第2の文字群に含まれる文字を選
択して、デジタル機器に入力するためのソフトウェアキ
ーボード装置であって、第1の文字群を、所定の基準に
従って、第1の所定数の文字から成る第1の文字グルー
プと、第1の所定数より少ない第2の所定数の文字から
成る第2の文字グループとに分け、第1の文字グループ
および第2の文字グループを互いの近傍に表示する文字
グループ表示部と、ユーザの指示に基づいて、ポインタ
を一文字分ずつ移動させて、表示された第1の文字グル
ープおよび第2の文字グループに含まれる文字のそれぞ
れを、指し示すポインティング部と、ポインタが、第1
の文字グループ内の何れかの文字を指し示している時
は、ポインタの位置に応じて第2の文字グループ全体の
表示位置をシフト制御するための表示位置制御部とを備
え、表示位置制御部は、ポインタが、第2の文字グルー
プの現在の表示位置と対向する領域外の文字を指し示そ
うとする時は、第2の文字グループの対応する端部の文
字が、ポインタが指し示そうとする文字と対向するよう
に、第2の文字グループ全体の表示位置をシフトさせる
ことを特徴とする。
【0007】上述のように、第1の発明においては、第
1の文字グループの文字を選択した場合には、その上下
の何れかの位置には、必ず第2の文字グループの文字が
表示されているので、第2の文字グループの文字を選択
する際にポインタを移動させる工程数を低減できる。
【0008】第2の発明は、第1の発明において、文字
表示部は、第1の文字グループおよび第2の文字グルー
プに含まれる文字を互いに対向かつ平行な方向に連続し
て表示することを特徴とする。
【0009】第3の発明は、第2の発明において、文字
グループ表示位置制御部は、さらに、ポインタが、平行
方向に第2の文字グループの端部より外側に移動しよう
とする場合には、第2の文字グループの対応する端部の
文字が、ポインタが指し示そうとする位置に在るよう
に、第2の文字グループ全体の表示位置をシフトさせる
ことによって、ポインタが、第1の文字グループに平行
に移動する場合には、ポインタによって、第2の文字グ
ループに含まれる文字が指し示されることを特徴とす
る。
【0010】上述のように、第3の発明においては、第
2の文字グループから、第1の文字グループの文字を選
択するために、所望の文字の直下或いは直上の位置にカ
ーソルを動かす間も第2の文字グループがカーソルに追
随して移動するので、ユーザに安心感を与えることがで
きる。
【0011】第4の発明は、第3の発明において、文字
グループ表示位置制御部は、ポインタが、第2の文字グ
ループから移動して、第2の文字グループの内部の文字
を指し示そうとする時は、第2の文字グループ全体の表
示位置をシフトしないように、文字表示部を制御するこ
とを特徴とする。
【0012】上述のように、第4の発明においては、第
1の文字グループから第2の文字グループに移動した場
合は、第2の文字グループを移動しないようにロックす
ることによって、カーソル移動に対する第2文字グルー
プの追随移動の方法を多様化している。
【0013】第5の発明は、同一の文字種から成る第1
の文字群に含まれる文字を組み合わせて、第1の文字群
に含まれる文字とは異なる文字種から成る第2の文字群
に含まれる文字を選択して、デジタル機器に入力するた
めのソフトウェアキーボード装置であって、第1の文字
群を、所定の基準に従って、第1の所定数の文字から成
る第1の文字グループと、第1の所定数より少ない第2
の所定数の文字から成る第2の文字グループとに分け、
第1の文字グループおよび第2の文字グループに含まれ
る文字を互いに対向かつ平行な方向に連続して表示する
文字グループ表示部と、ユーザの指示に基づいて、ポイ
ンタを一文字分ずつ移動させて、表示された第1の文字
グループおよび第2の文字グループに含まれる文字のそ
れぞれを、指し示すポインティング部と、ポインタが、
平行方向に第2の文字グループの端部より外側に移動し
ようとする場合には、第2の文字グループの対応する端
部の文字が、ポインタが指し示そうとする位置に在るよ
うに、第2の文字グループ全体の表示位置をシフトさせ
ることによって、ポインタが、第1の文字グループに平
行に移動する場合には、ポインタによって、第2の文字
グループに含まれる文字が指し示されることを特徴とす
るソフトウェアキーボード装置。
【0014】上述のように、第5の発明においては、第
2の文字グループを選択した後に、第1の文字グループ
を選択するために、選択する第1グループの文字の直下
或いは直上の位置にポインタを動かす時も、第2の文字
グループがポインタに追随して移動するので、ユーザに
安心感を与えることができる。
【0015】第6の発明は、第1、第2、第3、第4、
および第5の発明の何れかにおいて、ポインティング部
は、ポインタが、第1の文字グループの端部の文字の外
側の位置を指示しようとする時は、ポインタを第1の文
字グループのもう一方の端部に在る文字を指示するよう
に移動させることを特徴とする。
【0016】上述のように、第6の発明においては、カ
ーソルを第1グループの一端から他端へ循環移動させる
ことによって、カーソルの移動に対する第2の文字グル
ープの追随移動との相乗効果により、第2の文字グルー
プの文字を選択する際にポインタを移動させる工程数を
低減できる。
【0017】第7の発明は、第4の発明において、ポイ
ンティング部は、ポインタが、第2の文字グループの端
部の文字の外側の位置を指示しようとする時は、ポイン
タを第2の文字グループのもう一方の端部に在る文字を
指示するように移動させることを特徴とする。
【0018】上述のように、第7の発明においては、カ
ーソルを第2グループの一端から他端へ循環移動させる
ことによって、第2の文字グループの文字を選択する際
にポインタを移動させる工程数を低減できる。
【0019】第8の発明は、第3および第5の発明の何
れかにおいて、ポインティング部は、第2の文字グルー
プの端部の文字が、第1の文字グループの端部の文字に
対向するように、表示位置がシフトされた第2の文字グ
ループの端部の外側の位置を、ポインタが指示しようと
する時は、第1の文字グループのもう一方の端部に在る
文字に対向する位置に、ポインタを移動させることを特
徴とする。
【0020】上述のように、第8の発明においては、カ
ーソルの循環移動に追随して第2の文字グループを循環
移動させることによって、ユーザに安心感を与えること
ができる。
【0021】第9の発明は、第1、第2、第3、第4、
第5、第6、第7および第8の発明の何れかにおいて、
第2の文字群に含まれる文字は、ダブルバイトコードで
規定される文字であり、第1の文字群に含まれる文字
は、シングルバイトコードで規定される文字であること
を特徴とする。
【0022】上述のように、第9の発明においては、シ
ングルバイトで規定される数の少ない文字を組み合わせ
ることで、ダブルバイトコードで規定される非常に数の
多い文字を表現できる。
【0023】第10の発明は、第9の発明において、第
2の文字群に含まれる文字は、日本語であり、第1の文
字群に含まれる文字は、アルファベット26文字である
ことを特徴とする。
【0024】上述のように、第10の発明においては、
カーソルの移動に対して、第2の文字グループに含まれ
るアルファベットが追随移動して表示されるので、第1
の文字グループに含まれる文字の後に第2の文字グルー
プに含まれるアルファベットをつなげることが容易であ
る。
【0025】第11の発明は、第10の発明において、
第1のグループには、子音に対応するアルファベットが
含まれ、第2のグループは、母音に対応するアルファベ
ットが含まれることを特徴とする。
【0026】上述のように、第11の発明においては、
カーソルの移動に対して、母音行を追随移動させて表示
されるので、子音の後に母音をつなげて構成されること
が殆どである日本語の仮名文字を表現するためのポイン
タの移動工程数が低減できる。
【0027】第12の発明は、第11の発明において、
第2の文字グループに含まれる文字は、A、I、U、
E、およびOの5文字であり、第1グループに含まれる
文字は、アルファベットから第2の文字グループに含ま
れる文字を除く21文字であることを特徴とする。
【0028】上述のように、第12の発明においては、
26文字の子音に対応するアルファベットを指し示すポ
インタに移動して、5文字の母音に対応するアルファベ
ットが追随移動して表示されるので、子音の後に母音を
つなげて構成されることが殆どである日本語の仮名文字
を表現するためのポインタの移動工程数が低減できる。
【0029】第13の発明は、第9の発明において、第
1の文字グループに含まれる文字を、所定の基準に基づ
いて、少なくとも2つ以上のサブグループに分けられる
ことを特徴とする。
【0030】第14の発明は、第13の発明において、
サブグループのそれぞれは、第2の文字グループに両側
に、互いに平行に表示されることを特徴とする。
【0031】第15の発明は、第14の発明において、
サブグループのそれぞれは、第2の文字グループの片側
に、互いに平行に表示されることを特徴とする。
【0032】
【発明の実施の形態】以下に、図1〜図28を参照し
て、本発明の実施形態にかかるソフトウェアキーボード
装置について説明する。その後、図29〜図55を参照
して、本発明をゲーム機に適応した実施例について、詳
しく説明する。
【0033】先ず、図1および図2を参照して、本実施
形態にかかるソフトウェアキーボード装置SKAの構成
と主な動作について説明する。その後、図3〜28につ
いて、ソフトウェアキーボード装置SKAにおける文字
入力方法について具体的に説明する。
【0034】図1に示すように、本実施形態にかかるソ
フトウェアキーボード装置SKAは、プログラム源1、
入力器19、表示器21および文字入力器本体100を
含む。プログラム源1は、ソフトウェアキーボード装置
SKAの動作を実行させる各種コンピュータプログラム
を格納しており、好ましくは、不揮発性の記憶手段によ
って構成されている。
【0035】入力器19は、ユーザが操作して自身の指
示をソフトウェアキーボード装置SKAに伝える手段で
あり、好ましくは、キーボード等のポインティングディ
バイスと選択決定入力ディバイスを備えている。
【0036】文字入力器本体100は、CPU5とRA
M13を内蔵している。CPU5は、プログラム源1に
格納されている各種プログラムをロードすると共に、入
力器19から入力されるユーザの指示に基づいて、ロー
ドされたプログラムを実行する。RAM13は、CPU
5がプログラムを実行する際に必要な作業領域を提供す
るワーキングメモリである。なお、CPU5は、ソフト
ウェアキーボード装置SKA全体の動作を制御する制御
装置でもある。
【0037】なお、プログラム源1は、文字入力器本体
100に対して、脱着可能に接続できるように構成して
も良いし、また、CPU5やRAM13のように、予め
文字入力器本体100に内蔵するように構成しても良
い。
【0038】表示器21は、CPU5の実行結果を映像
や音声で表示して、ユーザの指示結果を表示したり、ユ
ーザに新たな指示の入力を促す。この目的のために、本
発明において、プログラムの実行結果およびユーザの指
示に応じて、キーボードの状態が適正に変化して表示器
21に表示される。以降、この表示器21に画像や音声
で表示されるキーボードを「ソフトウェアキーボード」
と称する。
【0039】次に、図2に示すフローチャートを参照し
て、ソフトウェアキーボード装置SKAの動作について
説明する。ソフトウェアキーボード装置SKAに電源が
投入されて、その動作が開始される。
【0040】先ず、ステップ#1000において、プロ
グラム源1から各種プログラムが文字入力器本体100
にロードされる。そして、処理は、次のステップ#20
00に進む。
【0041】ステップ#2000において、プログラム
源1からロードされたプログラムに従って、ソフトウェ
アキーボード装置SKAの各種要素およびパラメータが
初期化される。そして、処理は、次のステップ#300
0に進む。
【0042】ステップ#3000において、ステップ#
2000で初期化された状態が、表示器21に表示され
る。つまり、表示器21には、ユーザによる指示が入力
される前の状態のソフトウェアキーボードが表示され
る。そして、処理は、次のステップ#4000に進む。
【0043】ステップ#4000において、ユーザによ
る入力器19の状態が取得される。つまり、入力の有無
およびその入力内容を検出すると共に、検出結果に基づ
いて、以下に続く各ステップ#5000、#6000、
#7000、#8000、および#9000の何れかが
選択的に実行される。
【0044】例えば、ユーザがカーソル移動のための入
力ディバイスを操作していれば、処理は、ステップ#4
000からステップ#5000に分岐する。
【0045】ユーザが入力したアルファベットを決定す
るように入力ディバイスを操作していれば、処理は、#
7000に分岐する。
【0046】ユーザが#7000で決定されたアルファ
ベットの組み合わせから変換された仮名から、さらに変
換される漢字の候補の何れかを選択するように入力ディ
バイスを操作すれば、処理は、#6000に分岐する。
【0047】また、ユーザが、#5000で表示された
ソフトウェアキーボードSKB上のアルファベットを選
択した後に、そのアルファベットの選択を取り消すよう
に入力ディバイスを操作すれば、処理は、ステップ#8
000に分岐する。
【0048】さらに、ユーザが、表示されているソフト
ウェアキーボードSKBの動作モードを変更するよう
に、入力ディバイスを操作すれば、処理は、ステップ#
9000に分岐する。
【0049】ステップ#5000において、入力器19
に含まれるポインティングディバイスの動作状態を表す
ポインタパラメータの値に応じて、表示器21に表示さ
れるソフトウェアキーボードが変更される。
【0050】ステップ#5000、ステップ#600
0、ステップ#7000、ステップ#8000、および
ステップ#9000における処理については、後ほど、
図32を参照して、詳しく説明する。
【0051】前述のステップ#5000、#6000、
#7000、#8000、および#9000の何れかが
選択的に実行された後、処理は、ステップ#4000に
戻る。そして、ステップ#4000において、再度、取
得された入力器19の状態、つまり、ユーザの指示に基
づいて、ステップ#5000、#6000、#700
0、#8000、および#9000の何れかが選択的に
実行される。このようなステップ#4000〜#900
0の処理が繰り返し実行されることによって、ユーザ
は、所望の文字を、ソフトウェアキーボード装置SKA
を用いて選択して入力できる。
【0052】次に、図3および図4に、ソフトウェアキ
ーボードが表示されている表示器21の状態を例示す
る。図3の左上に位置するのがソフトウェアキーボード
SKB、その下に日本語を入力する日本語入力ラインエ
ディタ、最下行にローマ字入力時はローマ字入力変換ラ
インが配置される。ソフトウェアキーボードSKBは、
A〜Zのアルファベット26文字で構成されている。
【0053】同図において、ローマ字入力変換ラインに
は、ソフトウェアキーボードSKBを利用して、アルフ
ァベット26文字のそれぞれが適正に選択された組み合
わせが、平仮名の「かん」にローマ字変換された例がロ
ーマ字入力変換ライン上に表されている。さらに、この
ようなローマ字入力変換ラインで、アルファベットから
ローマ字変換された平仮名が、さらに、漢字に変換され
た例が日本語入力ラインエディタ上に示されている。同
例において、「日本語入力は」が既に入力済みである。
【0054】図4に、図3においてローマ字変換された
平仮名の「かん」が漢字変換される様子を示す。漢字変
換によって、「かん」に対応する漢字が漢字候補ライン
に表示されている。入力モード・アイコンを利用して、
漢字変換モードの「漢」、平仮名文字入力の「あ」、カ
タカナ文字入力の「ア」、アルファベット文字入力の
「A」、記号・句読点文字入力の「記」、数字・漢数字
文字入力の「数」、ギリシャ文字入力の「ギ」、漢字コ
ード(SJIS、JIS)による入力の「コ」を選択で
きる。
【0055】母音グループ追随切換アイコンを利用し
て、ソフトウェアキーボードSKBの動作モードである
「追随モード1」、「追随モード2」、および「静止モ
ード」の3つの動作モードが選択できる。これらの3つ
の動作モードにおいて、主に母音用アルファベット群の
移動許可の制御および禁止の制御の方法が異なる。これ
については、後ほど、図5〜図26を参照して詳述す
る。
【0056】次に、図5を参照して、本実施形態にかか
るソフトウェアキーボードSKBの基本的な構成につい
て、先ず説明する。その後、ソフトウェアキーボードS
KBの3つの動作モードである「追随モード1」、「追
随モード2」、および「静止モード」のそれぞれについ
て具体的に説明する。
【0057】図5に、図3および図4に示したソフトウ
ェアキーボードSKBを拡大して示す。同図に明示する
ように、ソフトウェアキーボードSKBにおいて、アル
ファベット26文字は、「A」、「I」、「U」、
「E」、および「O」の日本語の母音を表す5文字より
なる母音グループGvと、残りの21文字の子音を表す
文字よりなる子音グループGcに分けられている。な
お、同図において、母音グループGvの各アルファベッ
トは、好ましくは、日本語の母音「あ」、「い」、
「う」、「え」、および「お」の順番に配置されるが、
必要に応じて、任意の順番に配置しても良い。また、表
示器21の表示面積の有効利用および、文字の選択動作
の便を図って、子音グループGcは、さらに3つの子音
サブグループGc1、Gc2、およびGc3に分けられ
ている。
【0058】同図に示すように、第1の子音サブグルー
プGc1は、日本語の「か行」、「さ行」、「た行」、
「な行」、「は行」、「ま行」、「や行」、「ら行」、
および「わ行」のそれぞれに対応する、アルファベット
の「K」、「S」、「T」、「N」、「H」、「M」、
「Y」、「R」、および「W」で構成される。なお、第
1の子音サブグループGc1を構成する9文字のアルフ
ァベットは、ユーザの感性的な簡便性から、好ましく
は、図示したように「K」、「S」、「T」、「N」、
「H」、「M」、「Y」、「R」、および「W」の順番
に配置されるが、必要に応じて、任意の順番で配置して
も良い。
【0059】第2の子音サブグループGc2は、日本語
の「じゃ行」、「が行」、「ざ行」、「だ行」、「ふぁ
行」、「ちゃ行」、「ば行」、「ぱ行」、および「小文
字行」のそれぞれに対応する、アルファベットの
「J」、「G」、「Z」、「D」、「F」、「C」、
「B」、「P」および「L」で構成される。なお、第1
の子音サブグループGc1と同様に、第2の子音サブグ
ループGc2は9文字のアルファベットから構成され
る。また、第2の子音サブグループGc2においても、
ユーザの感性的な簡便性から、好ましくは、図示したよ
うに「J」、「G」、「Z」、「D」、「F」、
「C」、「B」、「P」および、「L」の順番に配置さ
れる。しかしながら、必要に応じて、各文字を、任意の
順番で配置しても良い。
【0060】第3の子音サブグループGc3は、通常の
日本語ではないが最近よく用いられる英語特有の音に対
応するアルファベットの「Q」、「X」、および「V」
の3文字で構成される。前述の第1の子音サブグループ
Gc1、および第2の子音サブグループGc2と同様
に、必要に応じて、「Q」、「X」、および「V」は、
任意の順番に配置しても良い。
【0061】前述の如く、アルファベット26文字は、
母音グループGv、第1の子音サブグループGc1、第
2の子音サブグループGc2、および第3の子音グルー
プGc3の4つのグループに分けられる。さらに、アル
ファベット26文字は、各グループ毎にその構成文字を
左から右へ順番に配置して、4段に渡って配列される。
第1段目には、第1の子音サブグループGc1が配列さ
る。第2段目には母音グループGvが中央揃えされた状
態で配列される。そして、第3段目および第4段目に
は、それぞれ、第2の子音サブグループGc2および第
3の子音グループGc3が配列される。
【0062】つまり、同例において、母音グループGv
の左端部の文字「A」が、第1の子音サブグループGc
1の「T」、および第2の子音サブグループGc2の
「Z」に対向する位置に配置されている。そして、母音
グループGvの右端部の文字「O」は、第1の子音グル
ープGc1の「Y」、および第2の子音サブグループG
c2の「B」に対向する位置に配置されている。さらに
詳述すれば、母音グループGvの「I」は、第1の子音
サブグループGc1の「N」と第2の子音サブグループ
Gc2の「D」のそれぞれと対向している。同様に、
「U」は「H」と「F」のそれぞれに対向し、「E」は
「M」と「C」のそれぞれに対向してる。そして、第3
の子音サブグループGc3の「Q」、「X」、および
「V」は、第2の子音サブグループGc2の「D」、
「F」、および「C」とそれぞれ対向している。
【0063】なお、同図において、主に、文字を囲むよ
うに表示されている四角形の枠は、文字選択用カーソル
(以降、「カーソル」と称する)の現位置を示してい
る。カーソルは、原則として、アルファベットの在ると
ころのみ一文字単位で自由に移動できる。しかし、第2
段目の母音グループGvのアルファベット群は、特殊な
移動を行う。このカーソルの移動に対する母音グループ
Gvのアルファベット群の特殊な移動方法をソフトウェ
アキーボードの動作モードと呼ぶ。ソフトウェアキーボ
ードの動作モードには、「追随モード1」、「追随モー
ド2」、「静止モード」の3種類ある。なお、カーソル
の移動は、前述の入力器19をユーザが操作して、ソフ
トウェアキーボード装置SKAに指示する。以下に、ソ
フトウェアキーボードSKBの3つ動作モードの違いに
ついて詳述する。
【0064】なお、以下にソフトウェアキーボードSK
Bの動作モードについて、図面を参照して説明する前
に、各動作モードにおけるカーソルと母音グループGv
の移動原理について簡単に述べる。
【0065】(追随モード1)追随モード1において、
カーソルが母音グループGv内を移動する場合と、子音
グループGc内を移動する場合において、若干動作が異
なる。先ず、カーソルが子音グループGc内および母音
グループGv内を移動する場合は、自由に移動できる。
但し、カーソルが子音グループGc内を、母音グループ
Gvの両端部の何れかに対向する同列に位置する文字を
越えて、左右方向の何れかに移動しようとする際には、
母音グループGvのその端部の文字が、子音グループG
c内を移動するカーソルの直下或いは直上に在るように
追随して、母音グループGv全体が左右方向に移動す
る。そして、カーソルが子音グループGcの端部の文字
を越えてさらに、移動しようとすると、カーソルは同子
音グループGcの他端部の文字に循環移動する。そし
て、母音グループGvが、この循環移動したカーソルの
直下或いは直上に在るように追随して、母音グループG
v全体が移動する。
【0066】「カーソルの循環移動」とは、例えば最左
端までカーソルを移動した時点で、次は最右端に移動し
たい時に、わざわざ右方向にカーソルを移動させなくて
も、左に一文字分の移動指示すれば、一気に数文字分を
飛び越して最右端に移動することである。これは、スト
ローク量の低減を追求する場合は必要不可欠な手法であ
る。なお、母音グループGv全体の循環移動も、カーソ
ルの循環移動と同様である。
【0067】一方、カーソルが母音グループGv内を移
動する場合について説明する。この場合、カーソルは母
音グループGv内を自由に移動できる。しかし、カーソ
ルが母音グループGvの両端部を越えて、ソフトウェア
キーボードSKBの両端部までの間を、左右の何れかの
方向に移動しようとする際には、母音グループGvのそ
の端部の文字がカーソルに追随して、母音グループGv
全体が移動する。そして、カーソルがソフトウェアキー
ボードSKBの一端部を越えてさらに移動しようとする
場合は、カーソルは、ソフトウェアキーボードSKBの
他端部まで、循環移動すると共に、母音グループGvの
他端部の文字が循環移動したカーソルの位置に在るよう
に、母音グループGv全体がカーソルに追随して移動す
る。
【0068】(追随モード2)追随モード2において、
カーソルが母音グループGvの内部を移動する場合を除
いて、前述の追随モード1と同様である。つまり、カー
ソルが子音グループGc内を移動する際のカーソルの移
動と、母音グループGvの移動は、追随モード1の場合
と全く同じである。しかしながら、追随モード2におい
て、カーソルが母音グループGv内を移動する場合に
は、カーソルが母音グループGvの範囲を越えて移動す
ることはできない。それ故に、母音グループGv内を移
動するカーソルに、母音グループGvが追随移動するこ
とはない。
【0069】つまり、カーソルが子音グループGcから
母音グループGvに移動する場合には、子音グループG
c内を移動するカーソルに追随している母音グループG
vが、カーソルが移動する直前の追随位置で固定され
る。そして、カーソルは位置を固定された母音グループ
Gvの内部を自由に移動できる。そして、カーソルがそ
の固定された母音グループGvの両端部を越えて移動し
ようとすると、カーソルは母音グループGvの他端部に
循環移動される。
【0070】(静止モード)静止モードにおいて、各文
字グループ内を自由に移動が可能である。但し、母音グ
ループGvは初期状態で固定されたままで、カーソルの
移動に対する追随移動は行わない。また、カーソルが、
異なるグループ間を移動する際には、その移動距離が最
小になるような位置に在る文字が選択される。
【0071】図5に示す例に照らして追随モード1につ
いてさらに説明する。図5において、第1の子音サブグ
ループGc1、第2の子音サブグループGc2、および
第3の子音サブグループGc3から成る子音用アルファ
ベット領域(上から1段目、3段目、4段目)におい
て、各子音グループGc中でカーソルを左右に移動させ
る場合について考える。カーソルを左右に動かした結
果、カーソルの各子音グループGcにおける位置が、母
音グループGvの左右端の「A」および「O」に対応す
る位置を越える場合がある。
【0072】つまり、第1の子音サブグループGc1に
おいて、カーソルが「T」から「S」に移動する、或い
は「Y」から「R」に移動する場合である。なお、第2
の子音サブグループGc2において、カーソルが「Z」
から「G」に移動する、或いは「B」から「P」に移動
する場合である。より正確に言うならば、母音グループ
Gvの両端の文字の上下に位置する子音グループGcの
文字よりもさらに、外側の文字にカーソルを移動させる
場合である。このようなカーソル移動を、「母音グルー
プGvの限界越移動」と称する。このように、カーソル
が母音グループGvの限界越移動を行う場合には、その
カーソルに追随する母音グループGv全体の移動が行わ
れる。
【0073】また、母音グループGv内においてのカー
ソル移動についても同様に母音グループGv全体の追随
移動が行われる。つまり、母音グループGv内で、カー
ソルを「A」からその左隣の空白部に動する場合、カー
ソルの移動に追随して、母音グループGv全体が一つ左
隣に移動する。
【0074】<追随モード1:カーソルが母音グループ
Gv内を移動>以下に、図5〜図10を参照して、前述
の追随モード1における、カーソルが母音グループGv
内を移動する際のソフトウェアキーボードSKBの具体
的な動作例について説明する。今、図5に示すように、
カーソルが母音グループGvの「I」の位置に在る時
に、カーソルを「I」の左隣の「A」に位置に移動させ
る。この場合は、図6に示すように、カーソルのみ通常
に移動して、母音グループGvのカーソルに対する追随
移動は生じない。
【0075】さらに、カーソルを「A」の左隣の空白部
(第1の子音サブグループGc1の「S」と、第2の子
音サブグループGc2の「G」の間の位置)に移動させ
る。この場合、図7に示すように、母音グループGv全
体が、カーソルが「A」上に在るままで、カーソルの移
動に追随して移動する。つまり、母音グループGvを構
成するアルファベットの各文字が一文字分ずつ左隣に移
動する。
【0076】そして、カーソルを母音グループGvの左
端の左隣の空白部に、さらに移動させる。この場合、図
8に示すように、母音グループGvはカーソルに追随し
て、カーソルが「A」上に在るままで、ソフトウェアキ
ーボードSKBの左端まで移動する。
【0077】さらに、ソフトウェアキーボードSKBの
左端を越えて、なお左側に移動するようにカーソルの移
動を指示する。この場合、図9に示すように、母音グル
ープGv全体がソフトウェアキーボードSKBの右端に
接するように移動すると共に、カーソルは「O」の位置
に移動する。
【0078】なお、さらに左隣に、カーソルを移動する
ように指示すると、図10に示すように、母音グループ
GvはソフトウェアキーボードSKBの右端に接した状
態のままで、カーソルだけが「O」から「E」の位置に
移動する。なお、前述の一連の左方向のカーソル移動と
は逆に、右方向へのカーソル移動を行う時も、母音グル
ープGvは前述の動作原理に従った動作を行う。
【0079】<追随モード1:カーソルが子音グループ
Gc内を移動>次に、図11〜図19を参照して、前述
の追随モード1において、カーソルが子音グループGc
内を移動する際のソフトウェアキーボードSKBの動作
について具体的に説明する。
【0080】図11に示すように、ソフトウェアキーボ
ードSKBのカーソルが第1の子音サブグループGc1
の文字、例えば、「N」の位置に在り、母音グループG
vが標準の位置にある状態において、ユーザが入力器1
9を操作して、カーソルを「N」の左隣の「T」の位置
に移動するように指示した場合を考える。この場合、カ
ーソルの移動後の位置である「T」のソフトウェアキー
ボードSKBにおける左右方向の位置は、標準状態の母
音グループGvの左端の文字である「A」の左右方向の
位置と同じである。つまり、「T」は「A」に対向する
位置にある。それ故に、図12に示すように、母音グル
ープGvはカーソルに追随することなく、カーソルのみ
が「T」上向きに移動する。
【0081】さらに、カーソルを左隣の「S」の位置に
移動するように、指示した場合について考える。この場
合、ソフトウェアキーボードSKBにおける「S」の左
右方向の位置は、母音グループGvの標準状態における
左端の文字「A」よりも左側に位置している。つまり、
「S」は母音グループGvの何れの文字とも対向してい
ない。このような状態で、第1の子音サブグループGc
1において、カーソルを「T」から「S」の位置に移動
させると、図13に示すように、カーソルの移動に追随
して、母音グループGv全体が左隣に移動する。その結
果、母音グループGvの左端の文字である「A」が、第
1の子音サブグループGc1のカーソルが位置している
「S」の直下に位置する。なお、カーソルが第2の子音
サブグループGc2の「Z」から、左隣の「G」の位置
に移動させる場合に、前述の場合の同様に、母音グルー
プGvはカーソルの移動に追随して移動する。
【0082】なお、さらに、左にカーソルを移動するよ
うに指示すると、図14に示すように、カーソルは第1
の子音サブグループGc1の左端の文字「K」に位置す
る。そして、母音グループGvも、カーソルの移動に追
随して、ソフトウェアキーボードSKBの最左端に接す
る。この状態で、ソフトウェアキーボードSKBの左端
を越えてなお、左隣にカーソルを移動するように指示す
ると、図15に示すように、カーソルは第1の子音サブ
グループGc1の最右端の「W」上向きに移動する。そ
して、このカーソルの移動に追随して、母音グループG
vの全体がソフトウェアキーボードSKBの右端に接す
るように移動する。
【0083】さらに、左にカーソルを移動するように指
示すると図16に示すように、カーソルは「W」の左隣
の「R」上向きに移動する。このような、カーソルの左
右位置は、その時点での母音グループGvの左端および
右端よりはみ出さない。それ故に、母音グループGv
は、カーソルの移動に追随することなく、ソフトウェア
キーボードSKBの右端に接した状態で止まる。なお、
このような状態において、カーソルが、第3の子音サブ
グループGc3の「L」に在る時に、カーソルをさら
に、左隣に動かせば、カーソルは「P」の位置に移動す
るが、母音グループGvはカーソルの移動に追随しな
い。
【0084】また、この動作モードの場合に、カーソル
が図17に示すように、第3の子音サブグループGc3
の「X」上に位置している時に、カーソルをさらに、左
に移動するように指示した場合を考える。この場合、カ
ーソルは、母音グループGvの現在の左端位置を越え
て、左隣に動こうとする。結果、図18に示すように、
カーソルは第3の子音サブグループGc3の「Q」上向
きに移動すると共に、母音グループGv全体がカーソル
の移動に追随して左隣に移動する。
【0085】さらに、カーソルを「Q」の位置から、左
隣に動かすように、入力器19を操作する場合について
考える。この場合、第3の子音サブグループGc3の左
端の文字である「Q」の左隣は、空白位置であるので、
カーソルは「Q」の位置から、第3の子音サブグループ
Gc3の右端の文字である「V」の位置に移動する。な
お、この「V」の位置は、母音グループGvの左右端の
内側の位置である。それ故に、図19に示すように、カ
ーソルが「Q」から「V」に移動して、母音グループG
vはカーソルの移動に追随することはない。また、前述
の一連の左方向のカーソル移動とは逆に、右方向へのカ
ーソル移動を行う時も上記の動作原理に従った動作を行
う。
【0086】<追随モード1:カーソルが異なる文字グ
ループ間を移動>次に、図20および図21を参照し
て、追随モード1において、カーソルが異なる文字グル
ープに移動する際のソフトウェアキーボードSKBの動
作について説明する。先ず、図20に示したソフトウェ
アキーボードSKBの状態で、カーソルを下向きに移動
するように連続して指示する。この場合は、カーソル
は、「K」→「A」→「J」→「Q」→「N」→「E」
→「D」→「Q」の位置の順番に移動する。一方、カー
ソルを上向きに移動するように連続して指示すると、カ
ーソルは、「Q」→「D」→「E」→「N」→「Q」→
「D」の位置の順番に移動する。
【0087】つまり、追随モード1において、母音グル
ープGvは、その左端の文字「A」が、カーソルの在る
第1の子音サブグループGc1の左端の文字「K」の直
下に追随している。それ故に、この状態で、縦方向に連
続して対向する位置に配置された文字「K」、「A」、
および「J」上を連続的に移動し、第3の子音サブグル
ープGc3において、最も「J」に近くに位置する
「Q」に移動するのである。
【0088】また、図21に示したソフトウェアキーボ
ードSKBの状態で、カーソルを下向きに移動するよう
に連続して指示すると、「W」→「O」→「L」→
「V」→「M」→「I」→「C」→「V」の順番にカー
ソルが移動する。一方、カーソルを上向きに移動するよ
うに連続して指示すると、「V」→「C」→「I」→
「M」→「V」→「C」の順番にカーソルが移動する。
【0089】<静止モード:同一文字グループ内の移動
および異なる文字グループ間移動>次に、図22を参照
して、ソフトウェアキーボードSKBの動作モードが静
止モードにおける、カーソルの移動と母音グループGv
の関係について説明する。ソフトウェアキーボードSK
Bが静止モードの際には、カーソルの移動はアルファベ
ットの在るところのみを自由に移動可能であるが、母音
グループGvは初期状態で固定されたままで、カーソル
に移動に対する追随移動は行わない。そして、カーソル
が異なる文字グループ間を移動する際には、その移動距
離が最小になるような位置に在る文字が選択される。
【0090】図22に例示するように、第1の子音サブ
グループGc1の左端の「K」の位置に在るカーソル
を、さらに、左隣に移動するように指示する場合につい
て考える。この場合、カーソルは、第1の子音サブグル
ープGc1の右端の「W」の位置に移動する。このよう
に、カーソルを文字グループの一端からさらに、外側に
移動させようした時、その文字グループの他端にカーソ
ルを移動させることを「循環移動」と称する。そして、
カーソルを「循環移動」させる処理を「循環処理」と称
する。同様に、母音グループGvの左端「A」の位置
に、カーソルが在る時に、さらにカーソルを左隣に移動
させようとすると、カーソルは、母音グループGvの右
端の「O」の位置に循環移動する。
【0091】そして、カーソルが第2の子音サブグルー
プGc2の左端の「J」の位置に在る時に、カーソルを
さらに左向きに移動させようとすると、カーソルは第2
の子音サブグループGc2の右端の「L」の位置に循環
移動する。同様に、カーソルが第3の子音サブグループ
Gc3の左端の「Q」の位置に在る時に、カーソルをさ
らに左向きに移動させようとすると、カーソルは第3の
子音サブグループGc3の右端の「V」の位置に循環移
動する。ただし、静止モードにおいては、これらのカー
ソル移動に伴う母音用アルファベット群の追随移動は行
われない。前述の一連の左方向のカーソル移動とは逆
に、右方向へのカーソル移動を行う時も、カーソルおよ
び母音グループGvは前述の動作原理に従った動作を行
う。
【0092】図22を参照して、静止モードにおいて、
カーソルを異なる文字グループ間を移動させる場合につ
いて説明する。図示したソフトウェアキーボードSKB
において、カーソルを下向きに移動するように連続して
指示する場合について考える。この場合、カーソルは、
前述の如く文字グループ間での移動距離が最小になるよ
うに、「K」→「A」→「Z」→「Q」→「N」→
「I」→「D」→「Q」の位置の順番に移動する。
【0093】逆にカーソルを上向きに移動するように連
続して指示した場合について考える。この場合、カーソ
ルは、「Q」→「D」→「I」→「N」→「Q」→
「D」の順番に移動する。また、カーソルが、第1の子
音サブグループGc1の右端の「W」の位置に在る時
に、カーソルを下向きに移動するように連続して指示し
た場合について考える。この場合、カーソルは、「W」
→「O」→「B」→「V」→「M」→「E」→「C」→
「V」の位置の順番に移動する。
【0094】逆に「W」の位置に、カーソルが在る時に
カーソルを上向きに移動するように連続して指示した場
合には、カーソルは、「V」→「C」→「E」→「M」
→「V」→「C」の位置の順番に移動する。なお、静止
モードにおいて、カーソルの移動に伴う母音グループG
vの追随移動は一切行われない。
【0095】<追随モード2:カーソルが子音グループ
Gc内を移動>次に、図23および図24を参照して、
追随モード2においてカーソルが子音グループGc内を
移動する際のソフトウェアキーボードSKBの動作につ
いて具体的に説明する。追随モード2におけるソフトウ
ェアキーボードSKBの動作は、カーソルが子音グルー
プGc内を移動する場合は追随モード1における動作と
同じである。よって、図23および図24に示されるよ
うに、カーソルが第1の子音サブグループGc1の
「T」より左に移動する時は、カーソルに追随して母音
グループGvが移動する。
【0096】<追随モード2:カーソルが異なる文字グ
ループ間を移動>図25および図26を参照して、追随
モード2において、カーソルが異なる文字グループ間を
移動する際の、ソフトウェアキーボードSKBの動作に
ついて説明する。先ず、初期状態において、母音グルー
プGvはソフトウェアキーボードSKBの第2段目に中
央揃えされた状態でロック(固定)されている。よっ
て、カーソルは母音グループGvの両端部を越えて移動
できない。つまり、カーソルが母音グループGv内を移
動する際には、母音グループGvがカーソルに追随して
移動することはない。
【0097】一方、カーソルが子音グループGc内を移
動する際には、前述のように、追随モード1におけるの
と同様に、母音グループGvのロックが解除される。そ
の結果、母音グループGvは、カーソルの移動に追随し
て移動する。このように、母音グループGvが追随移動
した状態で、カーソルが子音グループGcから母音グル
ープGvに移動する際には、母音グループGvは追随移
動した位置で固定されている。
【0098】つまり、図24に示すように、カーソルが
第1の子音サブグループGc1の「S」の位置に在る状
態で、下にカーソルを移動するように指示する場合を考
える。この場合、カーソルは、「A」→「G」→「Q」
→「N」→「I」→「D」→「Q」の位置に順番に移動
する。
【0099】また、図25に示すように、カーソルが第
1の子音サブグループGc1の「S」の位置から、母音
グループGvの「A」の位置に移動した時点で、母音グ
ループGvはその位置にロックされる。このような、母
音グループGvがロックされた状態で、カーソルをさら
に「A」の左隣に動かそうとすると、図26に示すよう
に、母音グループGvは追随移動しないで、ロックされ
た母音グループGvの右端の「O」の位置にカーソルが
循環移動する。
【0100】以下に、図27を参照して、本発明にかか
るソフトウェアキーボードSKBによる入力工程数低減
の効果について説明する。本発明において、選択可能な
ソフトウェアキーボードSKBを用いて、ローマ字仮名
変換で日本語を入力する際の、3タイプの動作モード、
「静止モード」、「追随モード1」、「追随モード2」
のそれぞれにおける物理的なストローク量の違いについ
て、具体的な数種類の単語について研究してみる。これ
により、母音用アルファベット群の「動」の効果を確認
することができる。
【0101】ストローク量を把握するためには、入力器
19に対するユーザの入力に対するカーソルの移動を規
定する必要がある。この目的のために、図27に示すよ
うに、ソフトウェアキーボードSKBを縦方向にa、
b、c、およびdと4つの座標を設定すると共に、横方
向に1、2、3、4、5、6、7、8、および9と9つ
の座標を設定する。これにより、カーソルの移動に応じ
て、カーソルの現位置を規定できる。そして、カーソル
の現位置の変化に基づいて、ストローク数を明確に認識
できる。
【0102】つまり、図5を参照して説明したように、
初期状態において、カーソルはソフトウェアキーボード
SKBの第2段目に中央揃えに配列されている母音グル
ープGvの「U」の位置に在る。このカーソル位置を前
述の座標を用いて表すと、5bUとなる。このように、
カーソル位置は、横座標(数字)、縦座標(小文字アル
ファベット)および、その座標に表示されている文字の
順番で表示される3文字の組み合わせで一義的に規定さ
れる。また、追随モード1および追随モード2におい
て、各動作モードにおける母音グループGvの移動方法
を考慮して入力することは言うまでもない。
【0103】<「KAKASI」(かかし)と入力する
場合>先ず、静止モードにおいて、「KAKASI(か
かし)」と入力する場合について考える。前述のよう
に、静止モードにおいて、カーソルは、ソフトウェアキ
ーボードSKBにおいて、アルファベットが表示されて
いる位置のみを、移動距離が最小になる経路で移動でき
る。さらに、カーソルの移動に対する母音グループGv
の追随移動を行わない。
【0104】静止モードにおいて、カーソルの循環移動
を行わない場合は、カーソルは以下の位置を順番に移動
する。つまり、5bUの位置にあるカーソルは、「KA
KASI」を指定するために、5bU→5aH→4aN
→3aT→2aS→1aK→2aS→3aT→3bA→
3aT→2aS→1aK→2aS→3aT→3bA→3
aT→2aS→3aT→4aN→4bIの座標で示され
るよう移動する。結果、カーソルの操作のために、19
ストロークを要する。
【0105】静止モードにおいて、カーソルの循環移動
を行う場合には、カーソルは、「KAKASI」を指定
するために、5bU→5aH→4aN→3aT→2aS
→1aK→3bA→3aT→2aS→1aK→3bA→
3aT→2aS→3bA→4bIの14ストロークを要
する。
【0106】次に、追随モード1において、「KAKA
SI」と入力する場合について考える。前述のように、
追随モード1において、子音グループGcおよび母音グ
ループGv内をカーソルが移動する場合に、母音グルー
プGvは追随移動する。
【0107】追随モード1において、カーソルの循環移
動を行わない場合には、カーソルは、「KAKASI」
を指定するために、5bU→5aH→4aN→3aT→
2aS→1aK→1bA→1aK→1bA→1aK→2
aS→2bIの座標で示されるように、11ストローク
を要する。
【0108】追随モード1において、カーソルの循環移
動を行う場合には、カーソルは、「KAKASI」を指
定するために、5bU→5aH→4aN→3aT→2a
S→1aK→1bA→1aK→1bA→2bI→2aS
→2bIの11ストロークを要する。
【0109】さらに、追随モード2において、「KAK
ASI(かかし)」と入力する場合について考える。前
述のように、追随モード2において、カーソルが子音グ
ループGcから母音グループGvに移動した場合には、
母音グループGvはロックされる。つまり、カーソルが
母音グループGvに在る時は、母音グループGvはロッ
クされていて、カーソルに対して追随移動しない。
【0110】このような、追随モード2において、カー
ソルの循環移動を行う場合には、カーソルは、「KAK
ASI」を指定するために、5bU→5aH→4aN→
3aT→2aS→1aK→1bA→1aK→1bA→2
bI→2aS→2bIの11ストロークを有する。
【0111】同様に、「YAKYUU(やきゅう)」、
「DENKIKAIRO(でんきかいろ)」、「KIK
ANSYA(きかんしゃ)」、および「KAGAKUS
YA(かがくしゃ)」と入力する場合ついて、各動作モ
ードにおける必要ストローク数は以下の通りである。
【0112】<YAKYUU(やきゅう)」と入力する
場合>静止モードでカーソルの循環移動を行わない場合
は、20ストロークを要する。静止モードでカーソルの
循環移動を行う場合は、16ストロークを要する。追随
モード1でカーソルの循環移動を行わない場合は、20
ストロークを要する。追随モード1でカーソルの循環移
動を行う場合は、12ストローク要する。追随モード2
でカーソルの循環移動を行う場合は、12ストロークを
要する。
【0113】<「DENKIKAIRO(でんきかい
ろ)」と入力する場合>静止モードでカーソルの循環移
動を行わない場合は、30ストロークを要する。静止モ
ードでカーソルの循環移動を行う場合は、24ストロー
クを要する。追随モード1でカーソルの循環移動を行わ
ない場合は、25ストロークを要する。追随モード1で
カーソルの循環移動を行う場合は、23ストローク要す
る。追随モード2でカーソルの循環移動を行う場合は、
23ストロークを要する。
【0114】<「KIKANSYA(きかんしゃ)」と
入力する場合>静止モードでカーソルの循環移動を行わ
ない場合は、22ストロークを要する。静止モードでカ
ーソルの循環移動を行う場合は、23ストロークを要す
る。追随モード1でカーソルの循環移動を行わない場合
は、26ストロークを要する。追随モード1でカーソル
の循環移動を行う場合は、23ストローク要する。追随
モード2でカーソルの循環移動を行う場合は、22スト
ロークを要する。
【0115】<「KAGAKUSYA(かがくしゃ)」
と入力する場合>静止モードでカーソルの循環移動を行
わない場合は、34ストロークを要する。静止モードで
カーソルの循環移動を行う場合は、25ストロークを要
する。追随モード1でカーソルの循環移動を行わない場
合は、26ストロークを要する。追随モード1でカーソ
ルの循環移動を行う場合は、23ストローク要する。追
随モード2でカーソルの循環移動を行う場合は、23ス
トロークを要する。
【0116】上述より明らかなように、若干の例外はあ
るものの、静止モードの場合に比べて、本発明における
追随モード1および追随モード2において、仮名文字入
力に要するストローク数が少なくて済むという効果が認
められる。本発明にかかるソフトウェアキーボードSK
Bによって、ストローク数、つまり入力工程数が低減で
きることが確認できる。
【0117】一方、日本語は、主に、母音と子音との構
成から成り立っている。この事実に基づいて、本発明に
かかるソフトウェアキーボードSKBにおいても、母音
と子音に対応する文字を判別しやすいように、26文字
のアルファベットをあえて、母音グループGvと子音グ
ループGcに分けている。この観点から言えば、ソフト
ウェアキーボードSKBは、図28に示すように、母音
グループGvの周囲を、子音グループGcの文字で取り
囲むように配置したソフトウェアキーボードの方が、入
力工程数をより効果的に低減できるようにも思える。
【0118】しかしながら、同図に示す例示したソフト
ウェアキーボードにおいて、さ(SA)、ろ(RO)、
が(GA)、ぽ(PO)は、最低でも2ストローク必要
とする。これに対して、本発明にかかるソフトウェアキ
ーボードSKBは、その追随モード2において、母音グ
ループGvが少なくとも子音行のカーソルに追随移動す
るので、上述のさ(SA)、ろ(RO)、が(GA)、
ぽ(PO)の場合は、最小ストロークは1である。
【0119】しかも、図28に例示のソフトウェアキー
ボードの場合は、母音に対応する文字グループと、子音
に対応する文字グループの区別が明確化されていない。
それ故に、選択する文字が探し難い。このような困難さ
を回避するために、本発明においては、上述のように、
ソフトウェアキーボードSKBの母音グループGvの配
置を工夫されている。これに加え、カーソル移動が循環
させることも、ストローク量の削減に寄与している。
【0120】本発明にかかるソフトウェアキーボードS
KBの特徴の一つである母音グループGvのカーソルに
対する追随移動は、人間の行動心理に照らして、ユーザ
にかかる気分的な負担を軽減、或いはユーザのカーソル
移動操作を督励する効果が認められる。つまり、子音グ
ループGc内でカーソルを移動させると、母音グループ
Gvがカーソルに追随することによって、子音を選択し
た後に、多くの場合、必然的に選択することになる母音
グループGvが、常に現カーソルの間近に待機している
ことは、ユーザからみて心理的なバックアップを受けた
状態である。
【0121】また、子音を入力すると、母音の特定の文
字にカーソルを自動的に移動させるように構成すれば、
ストローク量の低減に一見有効なようにも思える。しか
し、このような手法は、カーソルが自動的に移動する特
定の文字の入力に要する工程数の低減には有効である
が、ほかの文字を含め、全体的な文字入力に要するスト
ロークの低減には役立たない。
【0122】本発明において、ユーザが画面に表示され
たソフトウェアキーボードSKBの状態に基づいて、よ
り効果的にカーソルを動すために、追随モード1、追随
モード2、および静止モードの3タイプの動作モードを
実現している。これら3タイプの動作モードで、ソフト
ウェアキーボードSKBを稼働させることで、いかなる
日本語でも効率よく入力できる保証はない。しかしなが
ら、母音グループGvのカーソルに追随することが、ユ
ーザの行動心理に対して良い影響を与え、よりユーザフ
レンドリーな文字入力インターフェースを提供できる。
【0123】また、長大な文章でなければ、日本語を入
力するには、ローマ字入力に慣れた人にとっては50音
テーブルでカーソルを縦横無尽に動かすよりも、入力デ
ィバイスの数、機能および表示面積が制限されている環
境下では、本発明にかかるソフトウェアキーボード装置
の方が入力し易い。
【0124】(第1実施例)以下に、図29〜図49を
参照して、上述の本発明の実施形態にかかるソフトウェ
アキーボード装置SKAの第1実施例について説明す
る。図29に、ゲーム機に組み込まれた本実施例にかか
るソフトウェアキーボード装置SKAeの構造を示す。
本実施例にかかるソフトウェアキーボード装置SKAe
は、図1に示したソフトウェアキーボード装置SKAに
非常に類似した構成を有している。つまり、ソフトウェ
アキーボード装置SKAeは、ROM1e、CPU5
e、RAM13e、操作器19e、モニタ21e、およ
びゲーム機100eを含む。なお、これらのROM1
e、CPU5e、RAM13e、操作器19e、モニタ
21e、およびゲーム機100eは、図1に示したプロ
グラム源1、CPU5、RAM13、入力器19、表示
器21、および文字入力器本体100に対応している。
【0125】つまり、ROM1eは、ソフトウェアキー
ボード装置SKAeの動作を実行させる各種コンピュー
タプログラムを格納している。なお、ROM1eに格納
されているコンピュータプログラムについては、後ほど
図33を参照して詳しく説明する。
【0126】操作器19eは、ユーザが操作して自身の
指示をソフトウェアキーボード装置SKAに伝える手段
であり、好ましくは、キーボード等のポインティングデ
ィバイスと選択決定入力ディバイスを備えている。後ほ
ど、図30を参照して、ゲーム機における操作器19e
の一例について詳しく説明する。
【0127】ゲーム機100eは、それぞれ、文字入力
器本体100のCPU5およびRAM13に対応するC
PU5eおよびRAM13eを内蔵している。ゲーム機
100eは、さらに、第1のコネクタ3、リアリティコ
プロセッサ(以降、「RCP」と略称する)7、ビデオ
・デジタル・アナログ・コンバータ(以降「VDAC」
と略称する)9、ビデオ・エンコーダ(以降、「VEN
C」と略称する)11、ペリフェラルインターフェース
(以降、「PIf」と略称す)15、第2のコネクタ1
7、オーディオ・デジタル・アナログ・コンバータ(以
降、「ADAC」と略称す)20およびアンプリファイ
ア(以降「AMP」と略称す)21を含む。
【0128】ROM1eは、第1のコネクタ3を経由し
てゲーム機100eに対して、脱着可能に接続される。
しかしながら、CPU5eやRAM13eのように、R
OM1eを、予めゲーム機100eに内蔵するように構
成しても良いことは言うまでもない。RCP7は、CP
U5e、第1のコネクタ3、およびRAM13eに接続
されている。結果、ROM1eに格納されているプログ
ラムは、第1のコネクタ3およびRCP7を経由して、
CPU5eにロードされる。
【0129】CPU5eは、先ずロードされた各種プロ
グラムの幾つかを実行する。その後、CPU5eは、さ
らにロードされたプログラムの幾つかを操作器19eか
ら入力されるユーザの指示に基づいて実行する。CPU
5eは、プログラムの実行に当たっては、実行するジョ
ブの幾つかをRCP7と分散して処理する。CPU5e
およびRCP7は、RAM13eに構築されているワー
キング領域を利用して、それぞれ分散されたジョブを実
行する。なお、CPU5eは、ソフトウェアキーボード
装置SKA全体の動作を制御する制御装置でもある。
【0130】VDAC9は、RCP7から入力されるデ
ジタル画像信号をD−A変換して、アナログ画像信号を
生成する。VENC11は、VDAC9から入力される
アナログ画像信号をエンコードして、モニタ21eで表
示できる形式の映像信号を生成する。つまり、モニタ2
1eは、CPU5eおよびRCP7の実行結果を映像や
音声で表示して、ユーザの指示の結果を表示したり、ユ
ーザの新たな指示の入力を促す。この目的のために、本
発明において、プログラムの実行結果およびユーザの指
示に応じて、ソフトウェアキーボードSKBの状態が適
正に変化してモニタ21eに表示される。
【0131】モニタ21eは、VENC11から入力さ
れる映像信号に基づいて、図3〜図26に例示したソフ
トウェアキーボードSKBおよび関連の画像を表示す
る。なお、本実施例において、モニタ21eは通常、テ
レビジョンが用いられるが、CRT(陰極線管)やLC
D(液晶ディスプレイ)やPD(プラズマディスプレ
イ)に代表されるアナログ或いはデジタルの表示装置の
何れを用いても良い。
【0132】PIf15は、第2のコネクタ17をRC
P7に接続する。そして、第2のコネクタ17に接続さ
れる様々の周辺機器をRCP7およびCPU5eに接続
する。操作器19eは、第2のコネクタ17に接続され
て、ユーザの指示をCPU5eに伝える。
【0133】ADAC20は、RCP7から入力される
デジタル音声信号をD−A変換して、アナログ音声信号
を生成する。AMP21は、ADAC20から入力され
るアナログ音声信号を増幅して、スピーカ等(図示せ
ず)の音響装置に出力する。
【0134】図30に、本実施例において、ゲーム機に
おける操作器19eの一例を示す。操作器19eは十字
カーソルキー、SELECT(セレクト)ボタン、ST
ART(スタート)ボタン、Aボタン、およびBボタン
を有している。十字カーソルキーは、カーソルをソフト
ウェアキーボードSKB上で、縦横方向に移動させるポ
インティングディバイスである。Aボタンは、アルファ
ベットを決定して、ローマ字入力変換ラインへ登録する
ための入力ディバイスである。これらのボタンやキー
は、ソフトウェアキーボード装置SKAにおいて、普通
に利用できる入力デバイスの一例であって、同様の機能
を提供できるデバイスであれば、その他の適当なものを
用いても良い。
【0135】Bボタンは、ローマ字入力変換ラインに、
一旦入力されたのアルファベットのキャンセルを指示す
る入力ディバイスである。STARTボタンは、仮名漢
字変換をさせて、変換された漢字を十字カーソルにより
選択し、Aボタンにより決定する入力ディバイスであ
る。SELECTボタンは、ソフトウェアキーボードS
KBの動作モードを選択するための入力ディバイスであ
る。
【0136】以下に、操作器19eに設けられた各入力
ディバイスの操作と、前述の、図3および図4に示した
ソフトウェアキーボードSKB、日本語入力ラインエデ
ィタ、ローマ字入力変換ラインとの関係について、簡単
に説明する。
【0137】ソフトウェアキーボードSKBの入力モー
ドとして、ローマ字入力変換ラインに表示されている平
仮名を漢字に変換する漢字変換モードが選択されている
場合ついて考える。なお、漢字変換モードは、モニタ2
1e上では、入力モードアイコンによって、簡単に
「漢」として表示される。この場合、Aボタンを操作し
て、アルファベットを決定するにつれて、ローマ字に相
当する平仮名に自動変換する。目的の日本語(平仮名)
が現れた時点でSTARTボタンを操作して漢字に変換
する。十字カーソルキーで、候補から選択し、Aボタン
を操作して漢字を決定する。そして、決定された漢字
は、日本語入力ラインエディタに表示される。
【0138】ソフトウェアキーボードSKBの入力モー
ドとして、入力されたローマ字を平仮名に変換する平仮
名変換モードが選択されている場合について考える。な
お、平仮名変換モードは、モニタ21e上では、入力モ
ードアイコンによって、簡単に「あ」として表示され
る。この場合、Aボタンを操作して、アルファベットを
決定するにつれて、ローマ字に相当する平仮名に自動変
換する。目標の平仮名が現れた時点でSTARTボタン
を操作して平仮名を決定する。そして、決定された平仮
名は、日本語入力ラインに表示される。
【0139】ソフトウェアキーボードSKBの入力モー
ドとして、入力されたローマ字をカタカナに変換するカ
タカナ変換モードが選択されている場合について考え
る。なお、カタカナ変換モードは、モニタ21e上で
は、簡単に「ア」として表示される。この場合、Aボタ
ンを操作してアルファベットを決定するにつれて、ロー
マ字に相当するカタカナに自動変換される。ターゲット
となるカタカナが現れた時点でSTARTボタンを操作
してカタカナを決定する。
【0140】同様に、モニタ21e上でそれぞれ、入力
モードアイコンによって、「A」、「記」、「数」、お
よび「ギ」として簡単に表示されるローマ字モード、記
号モード、数字モード、およびギリシャ文字モード等を
設定できる。これらの入力モードにおいて、それぞれ、
STARTボタンを操作して選択候補の文字表示を表示
する。そして、十字カーソルを操作して、表示されてい
る候補の文字の内で、目的の文字を選択して、Aボタン
を操作して決定する。
【0141】また、モニタ21e上で、入力モードアイ
コンによって、簡単に、「コ」として表示されているコ
ード入力モードにおいて、十字カーソルを操作して、S
JIS或いはJISコードを可変・選択して、Aボタン
により選択したコードに対応する文字を決定する。
【0142】図31に、本実施例にかかるソフトウェア
キーボード装置SKAeを組み込んだゲーム機の一例を
図示する。
【0143】次に、図32に示すフローチャートを参照
して、ソフトウェアキーボード装置SKAeの動作につ
いて説明する。ソフトウェアキーボード装置SKAに電
源が投入されて、その動作が開始される。
【0144】先ず、ステップ#1000において、RO
M1eから各種プログラムがゲーム機100eにロード
される。そして、処理は、次のステップ#2000に進
む。
【0145】ステップ#2000において、ROM1e
からロードされたプログラムに従って、ソフトウェアキ
ーボード装置SKAeの各種要素およびパラメータが初
期化される。そして、処理は、次のステップ#3000
に進む。
【0146】ステップ#3000において、ステップ#
2000で初期化された状態が、モニタ21eに表示さ
れる。つまり、モニタ21eには、ユーザによる指示が
入力される前の状態のソフトウェアキーボードSKBが
表示される。そして、処理は、次のステップ#4000
に進む。
【0147】ステップ#4000において、ユーザによ
る入力器19eの状態が取得される。つまり入力の有無
およびその入力内容を検出する。詳述すれば、図示の如
く、ステップ#4010およびステップ#4020から
構成される。ステップ#4010において、モニタ21
eに対してユーザからの入力があったか否かが判断され
る。そして、ユーザによる入力、つまり、ユーザがモニ
タ21eの入力ディバイスの何れかを操作した場合にの
み、処理はステップ#4020に進む。
【0148】ステップ#4020において、ユーザの操
作した入力ディバイスの種類とその操作内容に基づい
て、後続のステップ#5000、#6000、#700
0、#8000、および#9000の何れが選択され
て、その処理が実行される。
【0149】<#5000>モニタ21eの表示に基づ
いて、ユーザが十字キーを操作した場合には、ユーザは
カーソル移動を希望していると判断されて、処理はステ
ップ#5000に進む。ステップ#5000において、
操作器19eに含まれるポインティングディバイスの動
作状態を表すポインタパラメータの値に応じて、モニタ
21eに表示されるソフトウェアキーボードSKBが変
更される。そして、処理は、ステップ#4000に戻
る。なお、ステップ#5000は、ポインタパラメータ
の値に応じて、互いに排他的に、平行して実行されるス
テップ#101、#102、#103、および#104
を含む。
【0150】ステップ#101は、操作器19eのポイ
ンティングディバイスである十字キーが上向きに操作さ
れた場合に、ソフトウェアキーボードSKB上でカーソ
ルを上向きに移動後のソフトウェアキーボードSKBの
状態を求めて、表示器21eに表示するサブルーチンで
ある。なお、本ステップにおける処理の詳細について
は、後ほど図37を参照して説明する。
【0151】ステップ#102は、操作器19eのポイ
ンティングディバイスである十字キーが下向きに操作さ
れた場合に、ソフトウェアキーボードSKB上でカーソ
ルを下向きに移動後のソフトウェアキーボードSKBの
状態を求めて、表示器21eに表示するサブルーチンで
ある。なお、本ステップにおける処理の詳細について
は、後ほど図40を参照して説明する。
【0152】ステップ#103は、操作器19eのポイ
ンティングディバイスである十字キーが左向きに操作さ
れた場合に、ソフトウェアキーボードSKB上でカーソ
ルを左向きに移動後のソフトウェアキーボードSKBの
状態を求めて、表示器21eに表示するサブルーチンで
ある。なお、本ステップにおける処理の詳細について
は、後ほど図43を参照して説明する。
【0153】ステップ#104は、操作器19eのポイ
ンティングディバイスである十字キーが右向きに操作さ
れた場合に、ソフトウェアキーボードSKB上でカーソ
ルを右向きに移動後のソフトウェアキーボードSKBの
状態を求めて、表示器21eに表示するサブルーチンで
ある。なお、本ステップにおける処理の詳細について
は、後ほど図46を参照して説明する。
【0154】<#6000>一方、ユーザがモニタ21
eの表示に基づいて、操作器19eのSTARTボタン
を操作した場合には、ステップ#4000によって、ユ
ーザは文字変換を希望していると判断されて、処理はス
テップ#6000に進む。ステップ#6000におい
て、文字変換処理が行われた後に、処理はステップ#4
000に戻る。なお、ステップ#6000は、ステップ
#6010、#6020、および#6030で構成され
ている。
【0155】ステップ#6010において、ソフトウェ
アキーボードSKBの各入力モードにおいて、ステップ
#4000においてSTARTボタン操作が検出された
時に入力されている文字が確定される。そして、処理は
次のステップ#6020に進む。
【0156】ステップ#6020において、#6020
で確定された平仮名が漢字に変換可能であるか否かが判
断される。変換不可能であると判断された場合に、処理
はステップ#4000に戻る。一方、変換可能と判断さ
れた場合には、処理は、次のステップ#6030に進
む。
【0157】ステップS6030において、所望の漢字
に変換されるまで、ユーザは平仮名の漢字変換を行い、
最終的に変換された所望の漢字を選択する。そして、ス
テップ#6000における処理を終了する。
【0158】<#7000>一方、ユーザがモニタ21
eの表示に基づいて、操作器19eのBボタンを操作し
た場合には、ステップ#4000でユーザは入力された
文字を選択したと判断されて、処理はステップ#700
0に進む。ステップ#7000において、入力文字選択
処理が行われた後に、処理はステップ#4000に戻
る。なお、ステップ#7000は、ステップ#105、
ステップ#7010、#7020、#7030、#70
40、および#7050で構成されている。
【0159】ステップ#7005において、ステップ#
4000において、Aボタンの操作が検出された時の文
字が選択される。そして、処理は、次のステップ#70
10に進む。
【0160】ステップ#7010において、先に入力さ
れた文字と今回入力された文字が連結されてローマ字入
力変換ラインに表示される。そして、処理は、次のステ
ップ#7020に進む。
【0161】ステップ#7020において、ステップ#
7010で連結されたアルファベットの組み合わせが、
仮名にローマ字変換が可能か否かが判断される。ローマ
字変換が可能と判断された場合は、処理はステップ#7
030に進む。
【0162】ステップ#7030において、ステップ#
7010で連結されたアルファベットの組み合わせが、
平仮名に変換されて、ステップ#7000における処理
が終了される。なお、平仮名ではなくカタカナに変換し
ても良い。
【0163】一方、ステップ#7020で、ローマ字変
換が不可能と判断された場合には、処理はステップ#7
040に進む。
【0164】ステップ#7040において、ステップ#
7010で連結されたアルファベットが3文字以上か否
か判断される。3文字より少ないと判断された場合に
は、処理は、ステップ#4000に戻って、さらなるア
ルファベットが選択されるのを待つ。これは、ローマ字
変換において、アルファベットが3文字で表現される平
仮名表現があるため、単に2文字のアルファベットが、
平仮名に変換できない場合をエラーとしないためであ
る。
【0165】一方、ステップ#7040で、3文字以上
と判断された場合には、処理は次のステップ#7060
に進む。
【0166】ステップ#7060において、ステップ#
7010で連結されたアルファベットを、ローマ字入力
変換ラインから消去して、ステップ#7000における
処理を終了する。なお、本実施例において、アルファベ
ット3文字の組み合わせで、ローマ字仮名変換ができな
い場合には、その3文字全ての組み合わせが不適切と判
断して、3文字全てを消去している。しかし、3文字の
内、第1番目或いは第2番目の文字が誤りである場合を
考慮して、その文字だけを消去するようにしても良い。
【0167】<#8000>一方、ユーザがモニタ21
eの表示に基づいて、操作器19eのBボタンを操作し
た場合には、ステップ#4000で、ユーザは入力した
文字の消去を希望している判断されて、処理はステップ
#8000に進む。ステップ#8000において、先行
文字消去の処理が行われた後に、処理はステップ#40
00に戻る。なお、ステップ#8000は、ステップ#
8010、ステップおよび#8020で構成されてい
る。
【0168】ステップ#8010においては、ステップ
#4000で、Bボタンの操作が検出された時に選択さ
れている文字が消去対象とされる。そして、処理は次の
ステップ#8020に進む。
【0169】ステップ#8020において、#7010
で連結されたアルファベットの内、後の方、つまり、本
ステップに入る前に入力された一文字がローマ字入力変
換ラインから消去される。そして、ステップ#8000
の処理を終了する。
【0170】<#9000>一方、ユーザがモニタ21
eの表示に基づいて操作器19eのSELECTボタン
を操作した場合には、ステップ#4000でユーザは動
作モード変更を希望していると判断されて、処理はステ
ップ#9000に進む。ステップ#9000において、
動作モード変更処理が行われた後に、処理はステップ#
4000に戻る。なお、ステップ#9000は、ステッ
プ#9010、ステップおよび#9020、および#3
000で構成されている。
【0171】ステップ#9010において、選択可能な
ソフトウェアキーボードSKBの動作モードがモニタ2
1e上に表示される。そして、処理は次のステップ#9
020に進む。
【0172】ステップ#9020において、ユーザによ
ってソフトウェアキーボードSKBの動作モードを選択
或いは切り替えを行う。そして、処理は、次のステップ
#3000に進む。
【0173】このステップ#3000は、前述のステッ
プ#2000とステップ#4000の間に実行される処
理と全く同じである。但し、ステップ#9000におい
て、ステップ#9020で選択された、動作モードにお
けるソフトウェアキーボードSKBがモニタ21eに表
示される。そして、ステップ#9000の処理を終了す
る。
【0174】次に、図33を参照して、ROM1eに格
納されているプログラムと、同プログラムをゲーム機1
00eにロードした結果、ゲーム機100e内のRAM
13eに構築されるデータ領域の関係について述べる。
先ず、同図の上部に、プログラム領域として、16種類
に分類されたプログラムモジュールが表示されている。
【0175】なお、各プログラムモジュールの左側に、
識別の便宜のためにM1〜M16のモジュール番号が付
与されている。また、各プログラムモジュールの右側の
欄内には、そのプログラムモジュールがソフトウェアキ
ーボード装置SKAeおよびソフトウェアキーボードS
KBを構築するに必要な度合いを必須度として、L0
(レベル0)、L1(レベル1)、L2(レベル2)、
およびL3(レベル3)を付与して識別している。
【0176】L0は、ソフトウェアキーボード装置SK
AeおよびソフトウェアキーボードSKBを構築する前
に、ハードウェアを他のレベル(L1、L2、およびL
3)のプログラムに対して準備しておくために必要なプ
ログラムモジュールであることを意味する。L0のプロ
グラムモジュールとしては、OS初期化プログラムM1
5およびファームウェアM16がある。これらの2つの
プログラムモジュールは、本来ソフトウェアキーボード
装置SKAeのハードウェアに標準的に具備されるもの
である。しかしながら、具備されていない場合には、R
OM1eに格納しておいて、ステップ#1000におい
て、ゲーム機100eにロードするようにしても良い。
【0177】L1は、L0のプログラムモジュールがハ
ードウェアにロードされて、ハードウェア側で、ソフト
ウェアキーボード装置SKAeおよびソフトウェアキー
ボードSKBを構築する準備ができた時点で、ソフトウ
ェアキーボードSKBを構築するために必要なプログラ
ムモジュールであることを意味する。L1のプログラム
モジュールとしては、メインプログラムM1、I/Oラ
イブラリM2、文字表示プログラムM3、文字フォント
データM4、コントロールパッド判断プログラムM5、
ソフトウェアキーボード制御プログラムM6、ローマ字
入力変換ラインプログラムM7、およびローマ字判定用
テーブルM8が含まれる。
【0178】メインプログラムM1は、ソフトウェアキ
ーボード装置SKAeの全般的な動作をつかさどる。I
/OライブラリM2は、ソフトウェアキーボード装置S
KAeを構成するハードウェアである操作器19eやモ
ニタ21eに関連するリソースの制御を行う。また、I
/OライブラリM2は、ソフトウェアキーボードSKB
が処理する言語体系に代表されるアプリケーションの要
求に応じて、最適化されて準備される一種のI/Oイン
ターフェース及びユーザインターフェースを提供するプ
ログラムである。
【0179】上述のI/OライブラリM2は、ハードウ
ェアの入力機器の制限に応じて、各機器に入力機能を割
り振ったり、また入力する文字の言語体系に応じて決ま
る文字の種類に応じて、ソフトウェアキーボードSKB
のパターンを設定するプログラムである。つまり、I/
OライブラリM2は、ハードウェアのローレベルな仕様
の違いに起因する制御方法の多様性を吸収するものであ
る。
【0180】文字フォントデータM4は、ソフトウェア
キーボードSKBに表示する文字フォントである。文字
表示プログラムM3は、文字フォントデータM4によっ
て実現される文字をモニタ21e(21)に表示させる
プログラムである。コントロールパッド判断プログラム
M5は、ユーザによる操作器19e(19)の操作状態
を取得するプログラムである。ソフトウェアキーボード
制御プログラムM6は、ソフトウェアキーボード装置S
KAe(SKA)に構築されたソフトウェアキーボード
SKBの動作をつかさどるプログラムである。ローマ字
入力変換ラインプログラムM7は、ユーザによって選択
入力されたアルファベットをローマ字入力変換ラインに
表示させると共に、表示したアルファベットを仮名に変
換して表示するプログラムである。
【0181】これらのL1のプログラムモジュールは、
ソフトウェアキーボード装置SKAe(SkA)を、イ
ンフラストラクチャとして必要のリソースが準備された
ハードウェアに、本発明にかかるソフトウェアキーボー
ドSKBを構築するために必要不可欠なプログラムモジ
ュールである。この意味において、ソフトウェアキーボ
ードSKBの基本ソフトウェアと言える。また、これら
のプログラムモジュールも、上述のL0のプログラムモ
ジュールと同様にROM1eに格納しておいて、ステッ
プ#1000において、ソフトウェアキーボード装置S
KAeにロードするようにしても良いし、予めゲーム機
100eや文字入力器本体100に内蔵しておいても良
い。
【0182】L2は、ソフトウェアキーボード装置SK
Ae(SKA)に構築された、ソフトウェアキーボード
SKBを選択入力されたアルファベットに対して何らか
の処理をするプログラムモジュールであることを意味す
る。L2のプログラムモジュールとしては、ラインエデ
ィタプログラムM9がある。
【0183】L3は、ソフトウェアキーボード装置SK
Ae(SKA)に構築された、ソフトウェアキーボード
SKBを選択入力されたアルファベットに基づいて、所
望の漢字に変換し、さらに必要に応じて文章を作成編集
するため用いられるプログラムモジュールであることを
示している。L3のプログラムモジュールとしては、F
EPメインプログラムM10、漢字変換プログラムM1
1、漢字候補選択プログラムM12、漢字コード入力プ
ログラムM13、およびFEP辞書M14が含まれる。
これらのプログラムモジュールは、通常の仮名漢字変換
プログラムに含まれているプログラムモジュールと基本
的に同一である。
【0184】なお、上述のように、本実施例において、
ローマ字入力変換ラインにアルファベットと共に仮名を
表示させ、さらに漢字変換プログラムM11によって、
漢字に変換させる。それゆえに、前述の文字フォントデ
ータM4には、平仮名、カタカナ、およびアルファベッ
トを始めとする通常一般に使用される日本語のフォント
が含まれる。
【0185】なお、図33の下段に、データ領域として
示されいる、RAM13e(13)に構築されるデータ
領域について説明する。先ず、同図において、必須度が
L1であるフレームバッファ領域、文字フォントデータ
領域、ローマ字判定用テーブル領域および、ワーキング
領域は、上述のプログラムモジュールM1〜M16を実
行する際に、ワーキングエリアとしてRAM13(13
e)に構築される領域である。
【0186】フレームバッファ領域は、モニタ21e
(21)にソフトウェアキーボードSKBを表示する画
像データを格納しておくために用いられる。文字フォン
トデータは、上述の文字フォントデータM4をROM1
e(1)からロードしておいて瞬時にアクセスするため
に用いられる。ローマ字判定用テーブルはローマ字判定
用テーブルM8をROM1e(1)からロードしておい
て、ローマ字判断にアクセスするために用いられる。
【0187】ワーキング領域は、CPU5e(5)やR
CP7における演算のための作業領域として用いられ
る。但し、文字フォントデータとローマ字判定用テーブ
ルは、データ領域を設けること無く、上述のようにRO
M1e(1)に格納されている上述の文字フォントデー
タM4とローマ字判定用テーブルM8に直接アクセスし
ても良い。これらのL1のデータ領域は、本発明にかか
るソフトウェアキーボードSKBを構築し、機能させる
ために不可欠な領域である。
【0188】また、L2のFEP用辞書領域は、ROM
1e(1)から、メインプログラムM14をロードし
て、仮名漢字変換のために用いられる領域である。な
お、この領域も、ROM1e(1)のメインプログラム
M14に直接アクセスすることで省略できる。
【0189】次に、図34、図35、および図36を参
照して、ソフトウェアキーボードSKBを構成する基本
的事項について説明する。先ず、図34に、図33に示
したフレームバッファ領域内に構築されるソフトウェア
キーボードSKBの構造を示す。ソフトウェアキーボー
ドSKBは、例えば、その一部が図示されているよう
に、Y軸(縦)方向に0〜6までの7行、X軸(横)方
向に0〜9までの10列で規定される70セルを有する
マトリックスが構築されている。そして、セルはそれぞ
れ、X軸座標およびY軸座標で一義的に規定される。な
お、このマトリックスの大きさは、それぞれ、本発明の
ソフトウェアキーボードSKBが適用されるハードウェ
アに用いられているフレームバッファの容量によって決
まる。なお、一般的なゲーム機の場合、マトリックスの
大きさは、Y軸方向に0〜25、X軸方向には0〜33
の884セル前後(1セルは8×8ドットとした場合)
である。
【0190】図35に、本発明にかかるソフトウェアキ
ーボードSKBを構成する文字と、図34に示したフレ
ームバッファ領域との関係において説明する。本発明に
おいて、26文字のアルファベットを一つの母音グルー
プGvと3つの子音グループGc1、Gc2、およびG
c3を配列してソフトウェアキーボードSKBが表示さ
れる。このために、Y軸方向に0〜3までの4行、X軸
方向に0〜8までの9列で規定される36セルを有する
マトリックスが利用される。同図において、子音行1に
は第1の子音サブグループGc1が配列され、母音行に
は母音グループGvが配列され、子音行2には第2の子
音サブグループGc2が配列され、そして、子音行3に
は第3の子音サブグループGc3が配列される。
【0191】そして、ソフトウェアキーボードSKBを
構成する各文字は、上述のように、図35に示されたセ
ル位置に登録されている。登録された文字は、そのセル
位置との関係に基づいて、配列変数Keyboard
[y][x]の形で管理される。例えば、Keyboa
rd[1][4]は、「U」を示し、Keyboard
[1][0]は、「空白」を示している。また、ソフト
ウェアキーボードSKB上の文字は、Keyboard
[CY][CX]で規定される。
【0192】図36に、図2および図32に示したフロ
ーチャートの初期化ステップ#2000において初期化
される変数について説明する。先ず、ソフトウェアキー
ボードSKB上での、カーソルの移動を管理するための
カーソル座標Keyboard[CY][CX]は、初
期位置である「U」を表すKeyboard[1]
[4]に設定される。
【0193】次に、母音グループGvの初期位置をその
左端の文字(A)のX軸上の位置を規定する変数である
母音左位置管理変数BOIN_POS_Lが2に設定さ
れる。母音グループGvの初期位置をその右端の文字
(O)のX軸上の位置を規定する変数である母音右位置
管理変数BOIN_POS_Rが6に設定される。ソフ
トウェアキーボードSKBのX軸方向に関して、カーソ
ルの最大移動範囲を規定するキーボード左右の移動限界
位置を管理するための変数である、左移動限界位置KE
YB_LIMIT_Lは、0に設定される。さらに、右
移動限界位置KEYB_LIMIT_Rは、8に設定さ
れる。
【0194】ソフトウェアキーボードSKBの動作モー
ドは、それぞれ変数KeyMode=0(追随モード
1)、1(追随モード2)、2(静止モード)として規
定される。なお、初期化においては、KeyMode=
0、つまり追随モード1に設定される。
【0195】図37を参照して、上述のステップ#10
1における、ソフトウェアキーボードSKB上でカーソ
ルを上向きに移動後のソフトウェアキーボードSKBの
状態を求めるサブルーチンについて説明する。本ステッ
プは、ソフトウェアキーボードSKBの動作モードが追
随モード1であるか否かが、ステップS110で判断さ
れる。追随モード1であると判断された場合には、処理
はステップ#201に進む。ステップ#201は、追随
モード1における、カーソルの上向き移動後のソフトウ
ェアキーボードSKBの状態を求めるサブルーチンであ
る。なお、同図において、「UKeyAscD」と表示
されているステップ#201の詳細については、後ほど
図38を参照して説明する。一方、追随モード1でない
と判断された時は、処理は、ステップS111に進む。
【0196】ステップS111において、ソフトウェア
キーボードSKBの動作モードが追随モード2であるか
否かが判断される。追随モード2であると判断された場
合には、処理はステップ#205に進む。ステップ#2
05は、追随モード2における、カーソルの上向き移動
後のソフトウェアキーボードSKBの状態を求めるサブ
ルーチンである。なお、同図において、「UKeyAs
cF」と表示されているステップ#205の詳細につい
ては、後ほど図39を参照して説明する。一方、追随モ
ード2でないと判断された時は、処理は、ステップS1
12に進む。
【0197】ステップS112において、ソフトウェア
キーボードSKBの動作モードが静止モードであるか否
かが判断される。静止モードであると判断された場合に
は、処理はステップ#209に進む。ステップ#209
は、静止モードにおける、カーソルの上向き移動後のソ
フトウェアキーボードSKBの状態を求めるサブルーチ
ンである。なお、同図において、「UKeyAscS」
と表示されている#209の静止モードにおける処理に
ついては、既に図22を参照して詳述してあるので説明
を省く。一方、ステップS112で、静止モードでない
と判断された場合は、ステップ#101の処理を終了す
る。
【0198】図38を参照して、追随モード1におけ
る、カーソルの上向き移動後のソフトウェアキーボード
SKBの状態を求めるサブルーチンであるステップ#2
01について説明する。本サブルーチンは、大別して、
ステップ#2110、#2111、#2112、および
#2113を含んでいる。ステップ#2110は、現在
のカーソル座標に在る文字を、モニタ21eにノーマル
表示させるサブルーチンである。なお、ノーマル表示と
は、通常、モニタ21eの画面の背景(バックグラン
ド)の色に対して、好ましくは、補色の関係にあるよう
な前景(フォアグランド)に文字を表示することを言
う。なお、前景色と背景色の関係は、補色でなくても良
い。要するに、前景の文字が背景に対して、明瞭に視認
できるような色彩関係であれば何でも良い。
【0199】ステップ#2110の処理が開始すると、
先ず、ステップS2100において、CY=1であるか
否かが判断される。Yesの場合は、現在カーソルは母
音グループGv内に在る時に、Yesと判断される。そ
して、処理はステップS2110に進む。
【0200】ステップS2110において、Keybo
ard[CY][CX−BOIN_POS_L+2]を
座標(CX、CY)に表示する。この結果、現在リバー
ス表示されている母音グループGvの文字をノーマル表
示に戻す。これによって、図35に示されたキーボード
データ自体を変更することなく、母音グループGvの新
たに表示される位置を更新する。そして、処理は、ステ
ップ#2111に進む。
【0201】一方、ステップS2100において、N
o、つまりCY=1でないと判断される場合は、現在カ
ーソルは子音グループGc内に在ることを示している。
この場合、処理は、ステップS2101に進む。
【0202】ステップS2101において、Keybo
ard[CY][CX]を座標(CX、CY)に表示す
る。この結果、子音グループGcの文字の内で現在リバ
ース表示されている文字の表示をノーマルに戻す。そし
て、処理は、ステップ#2111に進む。上述のよう
に、ステップ#2110において、母音グループGvお
よび子音グループGcの何れの文字上にカーソルが在っ
ても、その文字はノーマル表示される。
【0203】ステップ#2111は、上方向にカーソル
を移動した場合のカーソル座標を求めるサブルーチンで
ある。ステップ#2111の処理が開始すると、先ず、
ステップS2102において、CYが1だけ減じられ
る。このことによって、カーソルが上方向に1段だけ移
動した場合の座標が求められる。そして、処理は、次の
ステップS2103に進む。
【0204】ステップS2103において、CY<0で
あるか否かが判断される。Yesの場合は、移動後のカ
ーソルの位置がソフトウェアキーボードSKBの第1段
目を越えることを意味する。この場合、処理は、ステッ
プS2111に進む。
【0205】ステップS2111において、CYが3に
設定される。これは、先のステップS2103におい
て、カーソルがソフトウェアキーボードSKBの第1段
目より上向きに移動しようとしていることを検出したの
で、カーソルをソフトウェアキーボードSKBの最下段
である第3段目に循環移動させた場合のY座標を求めて
いる。そして、処理は、ステップ#2112に進む。
【0206】一方、ステップS2103において、No
の場合は、移動後のカーソルの位置は、ソフトウェアキ
ーボードSKBの第1段目か第2段目かの何れかであ
る。それゆえに、カーソルをY軸方向に循環移動させる
必要が無いので、処理は、ステップ#2112に進む。
【0207】ステップ#2112は、カーソルを上方向
に移動した後の、Y座標に応じて、キーボード左右の移
動限界位置を変更するサブルーチンである。ステップ#
2112の処理が開始されると、先ず、ステップS21
04において、CYの値が0、1、および2の内の何れ
かであるか否かが判断される。移動後のカーソルは、第
1の子音サブグループGc1、母音グループGv、およ
び第2の子音サブグループGc2の何れかに在る場合に
は、Yesと判断されて、処理はステップS2112に
進む。
【0208】ステップS2112において、カーソルの
左移動限界位置変数KEYB_LIMIT_Lが0に設
定されると共に、右移動限界位置変数KEYB_LIM
IT_Rが8に設定される。これによって、カーソルが
第1の子音サブグループGc1、第2の子音サブグルー
プGc2、または母音グループGv内を移動する際の、
母音グループGvの追随移動を可能にしている。
【0209】なお、この処理は、#2000における初
期化の際に、既に設定されているのと重複するように見
えるが、ソフトウェアキーボードSKBの操作の過程
で、左右の移動限界変数KEYB_LIMIT_Lおよ
びKEYB_LIMIT_Rの値が変更されていること
があるので、値を設定し直して、母音グループGvの追
随移動を保証するものである。そして、処理はステップ
#2113に進む。
【0210】一方、ステップS2104において、No
と判断される場合には、処理はステップS2105に進
む。ステップS2105において、CY=3であるか否
かが判断される。Noの場合は、処理は、ステップ#2
113に進む。但し、前述のステップS2104でNo
と判断されているので、本ステップにおいてもYesと
判断されて、処理は、ステップS2113に進む。
【0211】ステップS2113において、カーソルの
左移動限界位置変数KEYB_LIMIT_Lが3に設
定されると共に、右移動限界位置変数KEYB_LIM
IT_Rが5に設定される。これによって、カーソルが
第3の子音サブグループGc3の左右端を越えて移動し
ないようにしている。そして、処理は、ステップS21
06に進む。
【0212】ステップS2106において、CX<KE
YB_LIMIT_Lであるか否かが判断される。移動
後のカーソルが、ステップS2113で設定された左移
動限界位置を越える場合には、Yesと判断されて、処
理はステップS2114に進む。
【0213】ステップS2114において、CXがステ
ップS2113で設定されたKEYB_LIMIT_L
の値に設定される。これによって、カーソルが第3の子
音サブグループGc3の左端を越えて移動しないように
している。そして、処理は、ステップS2107に進
む。
【0214】一方、ステップS2106において、No
と判断される場合は、移動後のカーソルは、第3の子音
サブグループGc3内部に在る。それゆえに、そのま
ま、処理はステップS2107に進む。
【0215】ステップS2107において、CX>KE
YB_LIMIT_Rであるか否かが判断される。移動
後のカーソルが、ステップS2113で設定された右移
動限界位置を越える場合には、Yesと判断されて、処
理はステップS2115に進む。
【0216】ステップS2115において、CXがステ
ップS2113で設定されたKEYB_LIMIT_R
の値に設定される。これによって、カーソルが第3の子
音サブグループGc3の右端を越えて移動しないように
している。そして、処理は、ステップ#2113に進
む。
【0217】一方、ステップS2107において、No
と判断される場合は、移動後のカーソルは、第3の子音
サブグループGc3内部に在る。それゆえに、そのま
ま、処理はステップ#2113に進む。上述のようにし
て、ステップ#2112において、カーソルを上方向に
移動した後の文字グループに応じて、キーボード左右の
移動限界位置が適正に設定される。
【0218】ステップ#2113は、カーソルを移動さ
せた後に、カーソルが位置している文字をリバース表示
させるサブルーチンである。なお、リバース表示とは、
ノーマル表示における前景色と背景色を互いに入れ替え
て表示することである。
【0219】ステップ#2113の処理が開始される
と、先ず、ステップS2108において、CY=1であ
るか否かが判断される。カーソルは移動後、母音グルー
プGv内で在る場合には、Yesと判断されて、処理は
S2115に進む。
【0220】ステップS2115において、Keybo
ard[CY][CX−BOIN_POS_L+2]を
座標(CX、CY)にリバース表示する。これによっ
て、カーソルが移動後に位置する、母音グループGv内
の文字をリバース表示する。そして、ステップ#211
3の処理を終了する。
【0221】一方、カーソルの移動後の位置が、子音グ
ループGc内である場合には、ステップS2108で、
Noと判断される。そして、処理はステップS2110
に進む。
【0222】ステップS2115において、Keybo
ard[CY][CX]を座標(CX、CY)にリバー
ス表示する。これによって、カーソルが移動後に位置す
る、子音グループGc内の文字をリバース表示する。そ
して、ステップ#2113の処理を終了する。
【0223】次に、図39を参照して、追随モード2に
おける、カーソルの上向き移動後のソフトウェアキーボ
ードSKBの状態を求めるサブルーチンでステップ#2
05について説明する。本ステップは、上述のステップ
#201におけるステップ#2112が新たなステップ
#2513に置き換えられている。よって、この新たな
ステップ#2513についてのみ説明する。
【0224】このステップ#2513は、カーソルの移
動後のY座標が母音グループGvであれば左右の移動限
界位置を現在の母音グループGvの位置に変更して、母
音グループGvが移動しないようにロックする。一方、
カーソルの移動後のY座標が子音グループGcであれ
ば、それぞれのグループに対して定めらた左右の移動限
界位置に変更するサブルーチンである。
【0225】ステップ#2513の処理が開始される
と、先ず、ステップS2504において、CY=1であ
るか否かが判断される。そして、現在のカーソルの位置
が母音グループGv内であれば、Yesと判断されて、
処理はステップS2116に進む。
【0226】ステップS2116において、KEYB_
LIMIT_LがBOIN_POS_Lに設定されると
共に、KEYB_LIMIT_RがBOIN_POS_
Rに設定される。このようにして、移動後のカーソルの
左右の移動限界位置が変更される。そして、本ステップ
における処理を終了する。
【0227】一方、移動後のカーソルの位置が、子音グ
ループGc内であれば、Noと判断されて、処理は、ス
テップS2505に進む。
【0228】ステップS2505において、CYの値が
0および2の何れかあるかが判断される。移動後のカー
ソルの位置が、第1の子音サブグループGc1或いは第
2の子音サブグループGc2の何れかである場合には、
Yesと判断されて、処理はステップS2117に進
む。
【0229】ステップS2117において、KEYB_
LIMIT_Lが0に設定されると共に、KEYB_L
IMIT_Rが8に設定される。このようにして、カー
ソルが第1の子音サブグループGc1および第2の子音
サブグループGc2内を自由に移動できるように、カー
ソルの左右の移動限界位置が変更される。そして、本ス
テップにおける処理を終了する。
【0230】一方、移動後カーソルの位置が母音グルー
プGv、第1の子音サブグループGc1、および第2の
子音サブグループGc2の何れでもない場合には、ステ
ップS2505で、Noと判断される。そして、処理
は、ステップS2506に進む。
【0231】ステップS2506において、CY=3で
あるか否かが判断される。しかしながら、上述のステッ
プS2504およびステップS2505の判断の結果、
CY=3であるので、Yesと判断される。それゆえ
に、処理はステップS2113に進む。
【0232】ステップS2507において、CX<KE
YB_LIMIT_Lであるか否かが判断される。移動
後のカーソルが、ステップS21163設定された左移
動限界位置を越える場合には、Yesと判断されて、処
理はステップS2114に進む。
【0233】ステップS2114において、CXがステ
ップS2113で設定されたKEYB_LIMIT_L
の値である3に設定される。これによって、カーソルが
第3の子音サブグループGc3の左端を越えて移動しな
いようにしている。そして、処理は、ステップS210
8に進む。
【0234】一方、ステップS2507において、No
と判断される場合は、移動後のカーソルは、第3の子音
サブグループGc3内部に在る。それゆえに、処理はス
テップS2508に進む。
【0235】ステップS2508において、CX>KE
YB_LIMIT_Rであるか否かが判断される。移動
後のカーソルが、ステップS2113で設定された右移
動限界位置を越える場合には、Yesと判断されて、処
理はステップS2115に進む。
【0236】ステップS2115において、CXがステ
ップS2113で設定されたKEYB_LIMIT_R
の値である5に設定される。これによって、カーソルが
第3の子音サブグループGc3の右端を越えて移動しな
いようにしている。そして、処理は、ステップ#211
3に進む。
【0237】一方、ステップS2508において、No
と判断される場合は、移動後のカーソルは、第3の子音
サブグループGc3内部に在る。それゆえに、そのま
ま、処理はステップ#2113に進む。上述のようにし
て、ステップ#2513において、カーソルを上方向に
移動した後の、文字グループに応じて、キーボード左右
の移動限界位置が適正に設定される。
【0238】次に、図40を参照して、ソフトウェアキ
ーボードSKB上でカーソルを下向きに移動後のソフト
ウェアキーボードSKBの状態を求めるサブルーチンで
あるステップ#102の処理について説明する。本ステ
ップは、上述のステップ#101におけるのと同じステ
ップS110、S111、およびS112を含む。その
結果、追随モード1であると判断された場合には、処理
はステップ#202に進む。ステップ#202は、追随
モード1における、カーソルの下向き移動後のソフトウ
ェアキーボードSKBの状態を求めるサブルーチンであ
る。なお、同図において「DKeyAscD」と表示さ
れているステップ#202の詳細については、後ほど図
41を参照して説明する。
【0239】追随モード2であると判断された場合に
は、処理はステップ#206に進む。ステップ#206
は、追随モード2における、カーソルの下向き移動後の
ソフトウェアキーボードSKBの状態を求めるサブルー
チンである。なお、同図において「DKeyAscF」
と表示されているステップ#206の詳細については、
後ほど図42を参照して説明する。
【0240】静止モードであると判断された場合には、
処理はステップ#210に進む。ステップ#210は、
静止モードにおける、カーソルの下向き移動後のソフト
ウェアキーボードSKBの状態を求めるサブルーチンで
ある。なお、同図において「DKeyAscS」と表示
されている静止モードにおける処理についての説明を省
く。一方、ステップS112で、静止モードではないと
判断された場合は、ステップ#102の処理を終了す
る。
【0241】図41を参照して、上述の追随モード1に
おける、カーソルの下向き移動後のソフトウェアキーボ
ードSKBの状態を求めるサブルーチンであるステップ
#202について詳述する。本ステップは、図38を参
照して既に説明したステップ#201のステップ#21
12が、新たなステップ#2211と置き換えたもので
ある。よって、この新たな。新たなステップ#2211
に関してのみ、以下に説明する。
【0242】ステップ#2211は、カーソルを下方向
に移動した場合の、そのカーソルの座標を算出するサブ
ルーチンである。ステップ#2211の処理が開始され
ると、先ず、ステップS2202において、CYが1だ
け増加される。これによって、カーソルが下向きに移動
した際のY座標が求められる。そして、処理は次のステ
ップS2203に進む。
【0243】ステップS2203において、CY>3で
あるか否かが判断される。カーソルが第3の子音サブグ
ループGc3を越えて下側に移動するような指示されて
いる場合には、Yesと判断されて処理はステップS2
117に進む。
【0244】ステップS2117において、CYが0に
設定される。このことによって、下向きに移動後のカー
ソルを、ソフトウェアキーボードSKBの第1段目に在
る第1の子音サブグループGc1に循環移動させる。そ
して、処理は、ステップ#2112に進む。
【0245】一方、ステップS2203で、Noと判断
される場合、処理は、ステップ#2112に進む。
【0246】次に図42を参照して、上述の、追随モー
ド2における、カーソルの下向き移動後のソフトウェア
キーボードSKBの状態を求めるサブルーチンであるス
テップ#206について説明する。なお、本ステップ
に、図39に示したステップ#205のサブルーチンで
あるステップ#2111が、図41に示したステップ#
202のサブルーチンである#2211と入れ替わって
いる。よって、各サブルーチンの説明を省略する。
【0247】次に、図43を参照して、ソフトウェアキ
ーボードSKB上でカーソルを左向きに移動後のソフト
ウェアキーボードSKBの状態を求めるサブルーチンで
あるステップ#103について説明する。本ステップ
は、上述のステップ#101および102におけるのと
同じステップS110、S111、およびS112を含
む。その結果、追随モード1であると判断された場合に
は、処理はステップ#203に進む。ステップ#203
は、追随モード1における、カーソルの左向き移動後の
ソフトウェアキーボードSKBの状態を求めるサブルー
チンである。なお、同図において「LKeyAscD」
と表示されているステップ#203の詳細については、
後ほど図44を参照して説明する。
【0248】追随モード2であると判断された場合に
は、処理はステップ#207に進む。ステップ#207
は、追随モード2における、カーソルの左向き移動後の
ソフトウェアキーボードSKBの状態を求めるサブルー
チンである。なお、同図において「LKeyAscF」
と表示されているステップ#207の詳細については、
後ほど図45を参照して説明する。
【0249】静止モードであると判断された場合には、
処理はステップ#211に進む。ステップ#211は、
静止モードにおける、カーソルの左向き移動後のソフト
ウェアキーボードSKBの状態を求めるサブルーチンで
ある。なお、同図において「LKeyAscS」と表示
されている静止モードにおける処理についての説明を省
く。一方、ステップS112で、静止モードでないと判
断された場合は、ステップ#103の処理を終了する。
【0250】図44を参照して、上述の追随モード1に
おける、カーソルの左向き移動後のソフトウェアキーボ
ードSKBの状態を求めるサブルーチンであるステップ
#203について詳述する。本ステップは、図38を参
照して既に説明したステップ#201のステップ#21
10と#2113の間のステップ#2111および#2
112が、新たなステップS2302、#2313、#
2314、およびステップS2309で置き換えられて
いる。よって、新たなステップS2302、#231
3、#2314、およびステップS2309に関しての
み、以下に説明する。
【0251】ステップS2302において、現在の母音
グループGvを非表示にして、母音グループGvの追随
移動後の表示に備える。
【0252】ステップ#2313は、カーソルを左方向
に移動させた後の、カーソルの座標を求めるサブルーチ
ンである。ステップ#2313の処理を開始すると、先
ず、ステップS2303において、CXが1だけ減じら
れて、カーソルを左側に移動させた場合の、X座標が算
出される。そして、処理は、ステップS2304に進
む。
【0253】ステップS2304において、CX<KE
YB_LIMIT_Lであるか否かが判断される。左向
きに移動後のカーソルの位置が左移動限界位置を越える
場合には、Yesと判断されて、処理は、ステップS2
118に進む。
【0254】ステップS2118において、CXがKE
YB_LIMIT_Rに設定されて、カーソルを左端か
ら右端へ循環移動させる。そして、処理は、ステップ#
2314に進む。
【0255】また、ステップS2304で、Noと判断
される場合には、処理は、ステップ#2314に進む。
【0256】ステップ#2314は、カーソルを左方向
に移動した場合に、追随する母音グループGvの位置を
決定するサブルーチンである。ステップ#2314の処
理が開始されると、先ず、ステップS2306におい
て、CX<BOIN_POS_Lであるか否かが判断さ
れる。移動後のカーソルが、母音グループGvの左端を
越える場合には、Yesと判断されて、処理はステップ
S2119に進む。
【0257】ステップS2119において、BOIN_
POS_LがCXに設定されると共に、BOIN_PO
S_RがCX+4に設定される。このようにして、母音
グループGvの左端のX座標を、移動後のカーソルのX
座標と同じに設定して、母音グループGvをカーソルに
対して追随移動させる。そして、処理はステップS23
08に進む。
【0258】一方、ステップS2306で、Noと判断
される場合は、処理はステップS2308に進む。
【0259】ステップS2308において、CX>BO
IN_POS_Rであるか否かが判断される。移動後の
カーソルが、母音グループGvの右端を越える場合に
は、Yesと判断されて、処理はステップS2120に
進む。
【0260】ステップS2120において、BOIN_
POS_LがCXに設定されると共に、BOIN_PO
S_RがCX−4に設定される。このようにして、母音
グループGvの右端のX座標を、移動後のカーソルのX
座標と同じに設定して、母音グループGvをカーソルに
対して追随移動させる。そして、処理はステップS23
09に進む。
【0261】ステップS2309は、カーソルに追随移
動した後の母音グループGvを表示するサブルーチンで
ある。
【0262】図45を参照して、上述の追随モード2に
おける、カーソルの左向き移動後のソフトウェアキーボ
ードSKBの状態を求めるサブルーチンであるステップ
#207について詳述する。本ステップは、図44に示
したステップ#203と完全に同一である。つまり、現
在のカーソル座標の文字をノーマル表示するサブルーチ
ンであるステップ#2110と、母音行を非表示にする
ステップS2302と、左方向にカーソルを移動した場
合のカーソルの座標を算出するサブルーチンであるステ
ップ#2313と、母音グループGvを追随移動させる
位置を決定するサブルーチンであるステップ#2314
と、ステップ#2314で決定した位置に母音グループ
Gvを表示させるステップS2309と、移動後のカー
ソルが位置する文字をリバース表示させるステップ#2
113とを含んでいる。
【0263】次に、図46を参照して、ソフトウェアキ
ーボードSKB上でカーソルを右向きに移動後のソフト
ウェアキーボードSKBの状態を求めるサブルーチンで
あるステップ#104について説明する。本ステップ
は、上述のステップ#101、#102、および#10
3におけるのと同じステップS110、S111、およ
びS112を含む。その結果、追随モード1であると判
断された場合には、処理はステップ#204に進む。ス
テップ#204は、追随モード1における、カーソルの
右向き移動後のソフトウェアキーボードSKBの状態を
求めるサブルーチンである。なお、同図において「RK
eyAscD」と表示されているステップ#204の詳
細については、後ほど図47を参照して説明する。
【0264】追随モード2であると判断された場合に
は、処理はステップ#208に進む。ステップ#208
は、追随モード2における、カーソルの右向き移動後の
ソフトウェアキーボードSKBの状態を求めるサブルー
チンである。なお、なお、同図において「RKeyAs
cF」と表示されているステップ#208の詳細につい
ては、後ほど図48を参照して説明する。
【0265】静止モードであると判断された場合には、
処理はステップ#208に進む。ステップ#208は、
静止モードにおける、カーソルの左向き移動後のソフト
ウェアキーボードSKBの状態を求めるサブルーチンで
ある。なお、静止モードにおける処理についての説明を
省く。一方、ステップS112で、静止モードではない
と判断された場合は、ステップ#104の処理を終了す
る。
【0266】図47を参照して、上述の追随モード1に
おける、カーソルの右向き移動後のソフトウェアキーボ
ードSKBの状態を求めるサブルーチンであるステップ
#204について説明する。本ステップは、図44およ
び図45に示したステップ#203および#207にお
けるステップ#2313を、新たなステップ#2413
で置き換えたものである。なお、ステップ#2313
は、追随モード2において、カーソルを左向きに移動さ
せた場合のカーソル座標を求めるサブルーチンである。
一方、ステップ#2413は、追随モード2において、
カーソルを右向きに移動させた場合のカーソル座標を求
めるサブルーチンである。
【0267】ステップ#2413の処理が開始される
と、先ず、ステップS2403において、CXが1だけ
増加されて、カーソルが右向きに移動した後の、カーソ
ルのX座標が算出される。そして、処理は、ステップS
2304に進む。
【0268】ステップS2304において、CX>KE
YB_LIMIT_Rであるか否かが判断される。カー
ソルが右向きに移動した結果、カーソルの右移動限界位
置を越える場合には、Yesと判断されて、処理は、ス
テップS2118に進む。
【0269】ステップS2118において、CXがKE
YB_LIMIT_Lに設定される。このようにして、
カーソルが右端から左端に循環移動させられる。そして
処理は、ステップ#2314に進む。
【0270】一方、ステップS2304において、No
と判断される場合は、カーソルの循環移動の必要がな
い。それゆえに、処理は、#2314に進む。
【0271】次に、図48を参照して、上述の追随モー
ド2における、カーソルの右向き移動後のソフトウェア
キーボードSKBの状態を求めるサブルーチンであるス
テップ#208について詳述する。本ステップは、図4
7に示したステップ#204と完全に同一である。つま
り、現在のカーソル座標の文字をノーマル表示するサブ
ルーチンであるステップ#2110と、母音行を非表示
にするステップS2302と、右方向にカーソルを移動
した場合のカーソルの座標を算出するサブルーチンであ
るステップ#2413と、母音グループGvを追随移動
させる位置を決定するサブルーチンであるステップ#2
314と、ステップ#2314で決定した位置に母音グ
ループGvを表示させるステップS2309と、移動後
のカーソルが位置する文字をリバース表示させるステッ
プ#2113とを含んでいる。
【0272】図49に、図31に示した本実施例にかか
るソフトウェアキーボード装置SKAeを組み込んだゲ
ーム機の例とは異なる例を図示する。以下に、図50〜
図55を参照して、入力ボタンの少ないコントローラで
簡単に日本語を入力することを可能にする、ソフトウェ
ア制御によるキーボードについて説明する。同例におい
て、文字は、すべて日本語の仮名で表示されるので、ロ
ーマ字の解らない人でも入力が可能である。
【0273】なお、同例において、ソフトウェアキーボ
ードSKBの第1段目に、それぞれ、「あ行」、「か
行」、「さ行」、「た行」、「な行」、「は行」、「ま
行」、「や行」、「ら行」、「わ行」および「ん行」の
先頭の文字である「あ」、「か」、「さ」、「た」、
「な」、「は」、「ま」、「や」、「ら」、「わ」、お
よび「ん」が表示されている。そして、カーソルを、各
行の先頭の文字の位置に移動させると、その文字を先頭
とする行の文字か、第2段目以降複数行に渡ってに中央
揃えされて表示される。
【0274】図50には、カーソルが「あ」の位置にあ
る時には、第2段目および第3段目に、「あ行」に属す
る文字が10種類表示されている。以下同様に、図51
には、「か行」に属する文字が表示されている。図52
には、「た行」に属する文字が示されている。図53に
は、「は行」に属する文字が示され、図54には、「や
行」の文字が示され、そして図55には、「わ行」の文
字が示されている。
【0275】本明細書において、本発明の実施形態およ
び実施例において、アルファベットを入力して、ローマ
字仮名変換する例について説明しているが、本発明は、
基本的に2つ以上の文字を組み合わせて、別の文字を抽
出して入力する用途に適している。より詳しく述べれ
ば、種類の少ない文字を二つ以上組み合わせて、より種
類の多い文字に変換する用途において、本発明はより効
果的である。このような用途として、本明細書で例示し
ているように、アルファベット26文字を組み合わせ
て、数十万語以上と言われる日本語の仮名漢字変換を行
うものがある。このような用途として、中国語、韓国語
に代表される、DBC(ダブルバイトコード)で表現さ
れる言語体系での文字入力に適している。
【0276】また、ソフトウェアキーボードSKBのア
ルファベット文字の配置は、日本語が子音と母音との組
み合わせから構成されていることから、子音と母音を明
確に分離し、子音入力後の母音検索の手間取りを少なく
なるような仕組みとなっている。人間の行動心理からす
ると、アルファベット文字の存在しないところへはカー
ソルを移動しようとは思わない。その結果、わざわざ遠
回りしてカーソルを移動することになり、結果としてス
トローク量が多くなることになる。
【0277】本発明は、この点に着目し、目的の子音に
カーソルを移動する際に、その後を追うように母音グル
ープが追随するようになっている。すなわち、子音入力
後は母音グループは追随してきているため、子音の次に
入力する母音は目移りせずに直ぐにそばにある母音グル
ープから選択すればよいことになる(例外としてkya
のように子音が2回続く文字もある)。また、カーソル
移動に関してであるが、最左端までカーソルを移動した
後最右端の文字に移動したい時には、わざわざ右方向に
カーソルを移動しなくても左に移動指示すれば最右端に
循環移動するように構成している(又はこの反対方
向)。これらの結果、キー・ストローク量は平均的に少
なくなる。
【0278】言うまでもなく、ローマ字入力であるから
キーボード部は26文字で済み、よって画面を占有する
割合が少なくなる。また、ソフトウェアキーボードSK
Bはハードウェアではないため製品コスト面で有利であ
る。さらに、画面の任意の場所に移動・表示可能で、必
要な時に画面に呼び出すことが可能で、ドライバの形で
提供しOSの一部として組み込みも可能である。
【0279】特に短い日本語の文章を入力する場合、高
度な変換精度は必要なく単漢字変換程度の精度で済ませ
られることがある。また、単漢字変換は比較的小規模な
辞書で、その構造も簡単で済むため、今回のソフトウェ
アキーボードを評価・検討するために、この変換方法に
よる日本語入力フロントエンド・プロセッサ(以下FE
P)を開発し組み込んだ。FEPはソフトウェアキーボ
ードにより入力された漢字変換候補を漢字に変換する機
能のほか、JIS規格の文字(記号、数字、アルファベ
ット、平仮名、カタカナ、ギリシャ文字、ロシア文字、
丸数字・ローマ数字、単位、元号・数学記号・論理演算
記号、JIS第1・第2水準漢字)および外字の入力が
可能である。また、辞書学習機能も有している。
【図面の簡単な説明】
【図1】本発明の実施形態にかかるソフトウェアキーボ
ード装置の構成を示すブロック図である。
【図2】図1に示したソフトウェアキーボード装置の動
作を示すフローチャートである。
【図3】図2に示したソフトウェアキーボード装置の表
示器に表されているソフトウェアキーボードを用いて、
ローマ字仮名変換する方法の説明図である。
【図4】図3に示したソフトウェアキーボード装置の表
示器に表示されているソフトウェアキーボードを用い
て、仮名漢字変換する方法の説明図である。
【図5】本発明にかかるソフトウェアキーボード装置の
基本的な構成を示す説明図である。
【図6】本発明にかかるソフトウェアキーボード装置の
追随モード1において、カーソルが母音グループ内を移
動する場合のソフトウェアキーボードの動作を示す説明
図である。
【図7】本発明にかかるソフトウェアキーボード装置の
追随モード1において、カーソルが母音グループ内を移
動する場合のソフトウェアキーボードの動作を示す説明
図である。
【図8】本発明にかかるソフトウェアキーボード装置の
追随モード1において、カーソルが母音グループ内を移
動する場合のソフトウェアキーボードの動作を示す説明
図である。
【図9】本発明にかかるソフトウェアキーボード装置の
追随モード1において、カーソルが母音グループ内を移
動する場合のソフトウェアキーボードの動作を示す説明
図である。
【図10】本発明にかかるソフトウェアキーボード装置
の追随モード1において、カーソルが母音グループ内を
移動する場合のソフトウェアキーボードの動作を示す説
明図である。
【図11】本発明にかかるソフトウェアキーボード装置
の追随モード1において、カーソルが子音グループ内を
移動する際のソフトウェアキーボードの動作を示す説明
図である。
【図12】本発明にかかるソフトウェアキーボード装置
の追随モード1において、カーソルが子音グループ内を
移動する際のソフトウェアキーボードの動作を示す説明
図である。
【図13】本発明にかかるソフトウェアキーボード装置
の追随モード1において、カーソルが子音グループ内を
移動する際のソフトウェアキーボードの動作を示す説明
図である。
【図14】本発明にかかるソフトウェアキーボード装置
の追随モード1において、カーソルが子音グループ内を
移動する際のソフトウェアキーボードの動作を示す説明
図である。
【図15】本発明にかかるソフトウェアキーボード装置
の追随モード1において、カーソルが子音グループ内を
移動する際のソフトウェアキーボードの動作を示す説明
図である。
【図16】本発明にかかるソフトウェアキーボード装置
の追随モード1において、カーソルが子音グループ内を
移動する際のソフトウェアキーボードの動作を示す説明
図である。
【図17】本発明にかかるソフトウェアキーボード装置
の追随モード1において、カーソルが子音グループ内を
移動する際のソフトウェアキーボードの動作を示す説明
図である。
【図18】本発明にかかるソフトウェアキーボード装置
の追随モード1において、カーソルが子音グループ内を
移動する際のソフトウェアキーボードの動作を示す説明
図である。
【図19】本発明にかかるソフトウェアキーボード装置
の追随モード1において、カーソルが子音グループ内を
移動する際のソフトウェアキーボードの動作を示す説明
図である。
【図20】本発明にかかるソフトウェアキーボード装置
の追随モード1において、カーソルが異なる文字グルー
プ間を移動する際のソフトウェアキーボードの動作を示
す説明図である。
【図21】本発明にかかるソフトウェアキーボード装置
の追随モード1において、カーソルが異なる文字グルー
プ間を移動する際のソフトウェアキーボードの動作を示
す説明図である。
【図22】本発明にかかるソフトウェアキーボード装置
の静止モードにおいて、ソフトウェアキーボードのカー
ソルの移動と母音グループとの関係を示す説明図であ
る。
【図23】本発明にかかるソフトウェアキーボード装置
の追随モード2において、カーソルが子音グループ内を
移動する際のソフトウェアキーボードの動作を示す説明
図である。
【図24】本発明にかかるソフトウェアキーボード装置
の追随モード2において、カーソルが子音グループ内を
移動する際のソフトウェアキーボードの動作を示す説明
図である。
【図25】本発明にかかるソフトウェアキーボード装置
の追随モード2において、カーソルが子音グループか
ら、母音グループの位置に移動した時点で、母音グルー
プがロックされることを示す説明図である。
【図26】本発明にかかるソフトウェアキーボード装置
の追随モード2において、カーソルが子音グループか
ら、母音グループの位置に移動した時点で、母音グルー
プがロックされることを示す説明図である。
【図27】本発明にかかるソフトウェアキーボードの入
力工程数低減の効果についての説明図である。
【図28】本発明にかかるソフトウェアキーボードの文
字レイアウトの効果についての説明図である。
【図29】本発明にかかるソフトウェアキーボード装置
をゲーム機に組み込んだ場合の構成を示すブロック図で
ある。
【図30】図29に示した操作器の一例を示す平面図で
ある。
【図31】本発明にかかるソフトウェアキーボード装置
を組み込んだゲーム機の一例を示す説明図である。
【図32】図29に示した、本発明にかかるソフトウェ
アキーボード装置の動作を示すフローチャートである。
【図33】図29に示したROMに格納されているプロ
グラムと、ゲーム機内のRAMに構築されるデータ領域
の関係についての説明図である。
【図34】図29に示したソフトウェアキーボード装置
において、ソフトウェアキーボードを構成する基本事項
の説明図である。
【図35】図29に示したソフトウェアキーボード装置
において、ソフトウェアキーボードを構成する基本事項
の説明図である。
【図36】図29に示したソフトウェアキーボード装置
において、ソフトウェアキーボードを構成する基本事項
の説明図である。
【図37】図32に示すステップ#101における詳細
な動作を表すフローチャートである。
【図38】図37に示すステップ#201における詳細
な動作を表すフローチャートである。
【図39】図37に示すステップ#205における詳細
な動作を表すフローチャートである。
【図40】図32に示すステップ#102における詳細
な動作を表すフローチャートである。
【図41】図40に示すステップ#202における詳細
な動作を表すフローチャートである。
【図42】図40に示すステップ#206における詳細
な動作を表すフローチャートである。
【図43】図32に示すステップ#103における詳細
な動作を表すフローチャートである。
【図44】図43に示すステップ#203における詳細
な動作を表すフローチャートである。
【図45】図43に示すステップ#207における詳細
な動作を表すフローチャートである。
【図46】図32に示すステップ#104における詳細
な動作を表すフローチャートである。
【図47】図46に示すステップ#204における詳細
な動作を表すフローチャートである。
【図48】図46に示すステップ#208における詳細
な動作を表すフローチャートである。
【図49】図31に示した本実施例にかかるソフトウェ
アキーボード装置を組み込んだゲーム機のさらなる例を
示す説明図である。
【図50】図49に示したソフトウェアキーボード装置
において、入力ボタンの少ないコントローラで簡単に日
本語を入力することを可能にする、ソフトウェア制御に
よるソフトウェアキーボードの説明図である。
【図51】図49に示したソフトウェアキーボード装置
において、入力ボタンの少ないコントローラで簡単に日
本語を入力することを可能にする、ソフトウェア制御に
よるソフトウェアキーボードの説明図である。
【図52】図49に示したソフトウェアキーボード装置
において、入力ボタンの少ないコントローラで簡単に日
本語を入力することを可能にする、ソフトウェア制御に
よるソフトウェアキーボードの説明図である。
【図53】図49に示したソフトウェアキーボード装置
において、入力ボタンの少ないコントローラで簡単に日
本語を入力することを可能にする、ソフトウェア制御に
よるソフトウェアキーボードの説明図である。
【図54】図49に示したソフトウェアキーボード装置
において、入力ボタンの少ないコントローラで簡単に日
本語を入力することを可能にする、ソフトウェア制御に
よるソフトウェアキーボードの説明図である。
【図55】図49に示したソフトウェアキーボード装置
において、入力ボタンの少ないコントローラで簡単に日
本語を入力することを可能にする、ソフトウェア制御に
よるソフトウェアキーボードの説明図である。
【符号の説明】
SKA ソフトウェアキーボード装置 SKB ソフトウェアキーボード 1 プログラム源 1e ROM 5 CPU 5e CPU5e 13 RAM 13e RAM 19 入力器 19e 操作器 21 表示器 21e モニタ Gv 母音グループ Gc 子音グループ

Claims (15)

    【特許請求の範囲】
  1. 【請求項1】 同一の文字種から成る第1の文字群に含
    まれる文字を組み合わせて、第1の文字群に含まれる文
    字とは異なる文字種から成る第2の文字群に含まれる文
    字を選択して、デジタル機器に入力するためのソフトウ
    ェアキーボード装置であって、 前記第1の文字群を、所定の基準に従って、第1の所定
    数の文字から成る第1の文字グループと、当該第1の所
    定数より少ない第2の所定数の文字から成る第2の文字
    グループとに分け、当該第1の文字グループおよび第2
    の文字グループを互いの近傍に表示する文字グループ表
    示手段と、 ユーザの指示に基づいて、ポインタを一文字分ずつ移動
    させて、前記表示された第1の文字グループおよび第2
    の文字グループに含まれる文字のそれぞれを、指し示す
    ポインティング手段と、 前記ポインタが、前記第1の文字グループ内の何れかの
    文字を指し示している時は、当該ポインタの位置に応じ
    て前記第2の文字グループ全体の表示位置をシフト制御
    するための表示位置制御手段とを備え、 前記表示位置制御手段は、前記ポインタが、第2の文字
    グループの現在の表示位置と対向する領域外の文字を指
    し示そうとする時は、前記第2の文字グループの対応す
    る端部の文字が、前記ポインタが指し示そうとする文字
    と対向するように、前記第2の文字グループ全体の表示
    位置をシフトさせることを特徴とするソフトウェアキー
    ボード装置。
  2. 【請求項2】 前記文字表示手段は、前記第1の文字グ
    ループおよび第2の文字グループに含まれる文字を互い
    に対向かつ平行な方向に連続して表示することを特徴と
    する請求項1に記載のソフトウェアキーボード装置。
  3. 【請求項3】 前記文字グループ表示位置制御手段は、
    さらに、 前記ポインタが、前記平行方向に前記第2の文字グルー
    プの端部より外側に移動しようとする場合には、当該第
    2の文字グループの対応する端部の文字が、前記ポイン
    タが指し示そうとする位置に在るように、当該第2の文
    字グループ全体の表示位置をシフトさせることによっ
    て、 前記ポインタが、前記第1の文字グループに平行に移動
    する場合には、当該ポインタによって、前記第2の文字
    グループに含まれる文字が指し示されることを特徴とす
    る請求項2に記載のソフトウェアキーボード装置。
  4. 【請求項4】 前記文字グループ表示位置制御手段は、 前記ポインタが、前記第2の文字グループから移動し
    て、当該第2の文字グループの内部の文字を指し示そう
    とする時は、当該第2の文字グループ全体の表示位置を
    シフトしないように、前記文字表示手段を制御すること
    を特徴とする請求項3に記載のソフトウェアキーボード
    装置。
  5. 【請求項5】 同一の文字種から成る第1の文字群に含
    まれる文字を組み合わせて、第1の文字群に含まれる文
    字とは異なる文字種から成る第2の文字群に含まれる文
    字を選択して、デジタル機器に入力するためのソフトウ
    ェアキーボード装置であって、 前記第1の文字群を、所定の基準に従って、第1の所定
    数の文字から成る第1の文字グループと、当該第1の所
    定数より少ない第2の所定数の文字から成る第2の文字
    グループとに分け、当該第1の文字グループおよび第2
    の文字グループに含まれる文字を互いに対向かつ平行な
    方向に連続して表示する文字グループ表示手段と、 ユーザの指示に基づいて、ポインタを一文字分ずつ移動
    させて、前記表示された第1の文字グループおよび第2
    の文字グループに含まれる文字のそれぞれを、指し示す
    ポインティング手段と、 前記ポインタが、前記平行方向に前記第2の文字グルー
    プの端部より外側に移動しようとする場合には、当該第
    2の文字グループの対応する端部の文字が、前記ポイン
    タが指し示そうとする位置に在るように、当該第2の文
    字グループ全体の表示位置をシフトさせることによっ
    て、 前記ポインタが、当該第1の文字グループに平行に移動
    する場合には、当該ポインタによって、前記第2の文字
    グループに含まれる文字が指し示されることを特徴とす
    るソフトウェアキーボード装置。
  6. 【請求項6】 前記ポインティング手段は、前記ポイン
    タが、前記第1の文字グループの端部の文字の外側の位
    置を指示しようとする時は、当該ポインタを当該第1の
    文字グループのもう一方の端部に在る文字を指示するよ
    うに移動させることを特徴とする請求項1、2、3、
    4、および5の何れかに記載のソフトウェアキーボード
    装置。
  7. 【請求項7】 前記ポインティング手段は、前記ポイン
    タが、前記第2の文字グループの端部の文字の外側の位
    置を指示しようとする時は、当該ポインタを当該第2の
    文字グループのもう一方の端部に在る文字を指示するよ
    うに移動させることを特徴とする請求項4に記載のソフ
    トウェアキーボード装置。
  8. 【請求項8】 前記ポインティング手段は、前記第2の
    文字グループの端部の文字が、前記第1の文字グループ
    の端部の文字に対向するように、表示位置がシフトされ
    た第2の文字グループの端部の外側の位置を、前記ポイ
    ンタが指示しようとする時は、当該第1の文字グループ
    のもう一方の端部に在る文字に対向する位置に、当該ポ
    インタを移動させることを特徴とする請求項3および5
    の何れかに記載のソフトウェアキーボード装置。
  9. 【請求項9】 前記第2の文字群に含まれる文字は、ダ
    ブルバイトコードで規定される文字であり、 前記第1の文字群に含まれる文字は、シングルバイトコ
    ードで規定される文字であることを特徴とする請求項
    1、2、3、4、5、6、7、および8の何れかに記載
    のソフトウェアキーボード装置。
  10. 【請求項10】 前記第2の文字群に含まれる文字は、
    日本語であり、 前記第1の文字群に含まれる文字は、アルファベット2
    6文字であることを特徴とする請求項9に記載のソフト
    ウェアキーボード装置。
  11. 【請求項11】 前記第1のグループには、子音に対応
    するアルファベットが含まれ、 前記第2のグループは、母音に対応するアルファベット
    が含まれることを特徴とする請求項10に記載のソフト
    ウェアキーボード装置。
  12. 【請求項12】 前記第2の文字グループに含まれる文
    字は、A、I、U、E、およびOの5文字であり、 前記第1グループに含まれる文字は、アルファベットか
    ら前記第2の文字グループに含まれる文字を除く21文
    字であることを特徴とする請求項11に記載のソフトウ
    ェアキーボード装置。
  13. 【請求項13】 前記第1の文字グループに含まれる文
    字を、所定の基準に基づいて、少なくとも2つ以上のサ
    ブグループに分けられることを特徴とする請求項9に記
    載のソフトウェアキーボード装置。
  14. 【請求項14】 前記サブグループのそれぞれは、前記
    第2の文字グループに両側に、互いに平行に表示される
    ことを特徴とする請求項13に記載のソフトウェアキー
    ボード装置。
  15. 【請求項15】 前記サブグループのそれぞれは、前記
    第2の文字グループ(Gv)の片側に、互いに平行に表
    示されることを特徴とする請求項14に記載のソフトウ
    ェアキーボード装置。
JP15297199A 1999-05-31 1999-05-31 ソフトウェアキーボード装置 Expired - Lifetime JP3841590B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP15297199A JP3841590B2 (ja) 1999-05-31 1999-05-31 ソフトウェアキーボード装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP15297199A JP3841590B2 (ja) 1999-05-31 1999-05-31 ソフトウェアキーボード装置

Publications (2)

Publication Number Publication Date
JP2000339091A true JP2000339091A (ja) 2000-12-08
JP3841590B2 JP3841590B2 (ja) 2006-11-01

Family

ID=15552154

Family Applications (1)

Application Number Title Priority Date Filing Date
JP15297199A Expired - Lifetime JP3841590B2 (ja) 1999-05-31 1999-05-31 ソフトウェアキーボード装置

Country Status (1)

Country Link
JP (1) JP3841590B2 (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100413691B1 (ko) * 2001-12-15 2004-01-03 삼성전자주식회사 전자기기에서의 문자 입력 장치 및 방법
WO2009031478A2 (en) * 2007-09-04 2009-03-12 Nec Display Solutions, Ltd. Information processor, user interface control method and program
JP2009157753A (ja) * 2007-12-27 2009-07-16 Canon Inc 項目入力装置、項目入力プログラム、及び項目入力方法
US8033744B2 (en) * 2004-07-29 2011-10-11 Paul Lloyd Baker Keyboard for a handheld computer device
JP2012527045A (ja) * 2009-05-15 2012-11-01 ユナイテッド ビデオ プロパティーズ インコーポレイテッド 英数字ナビゲーションおよび入力のためのシステムおよび方法

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100413691B1 (ko) * 2001-12-15 2004-01-03 삼성전자주식회사 전자기기에서의 문자 입력 장치 및 방법
US8033744B2 (en) * 2004-07-29 2011-10-11 Paul Lloyd Baker Keyboard for a handheld computer device
WO2009031478A2 (en) * 2007-09-04 2009-03-12 Nec Display Solutions, Ltd. Information processor, user interface control method and program
WO2009031478A3 (en) * 2007-09-04 2009-06-04 Nec Display Solutions Ltd Information processor, user interface control method and program
JP2009157753A (ja) * 2007-12-27 2009-07-16 Canon Inc 項目入力装置、項目入力プログラム、及び項目入力方法
JP2012527045A (ja) * 2009-05-15 2012-11-01 ユナイテッド ビデオ プロパティーズ インコーポレイテッド 英数字ナビゲーションおよび入力のためのシステムおよび方法

Also Published As

Publication number Publication date
JP3841590B2 (ja) 2006-11-01

Similar Documents

Publication Publication Date Title
US5818437A (en) Reduced keyboard disambiguating computer
US5128672A (en) Dynamic predictive keyboard
US8320959B2 (en) Handheld electronic device and associated method employing a multiple-axis input device and providing a learning function in a text disambiguation environment
CN100419651C (zh) 具有自动纠正的方向输入系统
US8417855B2 (en) Handheld electronic device and associated method employing a multiple-axis input device and learning a context of a text input for use by a disambiguation routine
JP2010061656A (ja) スクリーン仮想キーボードシステム
JP2011524595A (ja) 個々のテキストフィールドのデータ入力をカスタマイズするための方法
CA2716677C (en) Text entry device and method
US20100115159A1 (en) Keyboard shortcut software utility
US8638299B2 (en) Handheld electronic device and associated method enabling the output of non-alphabetic characters in a disambiguation environment
KR101285413B1 (ko) 터치스크린을 이용한 터치 방식의 문자 입력 방법
JP3841590B2 (ja) ソフトウェアキーボード装置
EP1355225A1 (en) Method and device for inputting chinese characters on a hand-held electronic device
US9256297B2 (en) Handheld electronic device and associated method employing a multiple-axis input device and reinitiating a text disambiguation session upon returning to a delimited word
US8004495B2 (en) Handheld electronic device and associated method employing a multiple-axis input device and outputting a currently selected variant at a text input location during text disambiguation
US7765345B2 (en) Handheld electronic device and associated method employing a multiple-axis input device and providing text disambiguation
US9075449B2 (en) Handheld electronic device and associated method employing a multiple-axis input device and selectively disabling disambiguation
EP1701243B1 (en) Handheld electronic device having improved display and selection of disambiguation choices, and associated method
US20060202866A1 (en) Handheld electronic device having improved display and selection of disambiguation choices, and associated method
JP4133523B2 (ja) キャラクター入力装置
EP2073102A1 (en) Handheld electronic device including automatic preferred selection of a punctuation, and associated method
US8542132B2 (en) Handheld electronic device and associated method employing a multiple-axis input device and using non-edited characters as context in text disambiguation
CA2719387C (en) System and method for facilitating character capitalization in handheld electronic device
KR20130004648A (ko) 터치스크린패널기기에서의 문서편집기능이 있는 다국어 문자입력장치
EP2916200A2 (en) Semi-compact keyboard and method therefor

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20060201

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060209

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060330

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20060808

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060808

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 3841590

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090818

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090818

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100818

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100818

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110818

Year of fee payment: 5

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110818

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120818

Year of fee payment: 6

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120818

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120818

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130818

Year of fee payment: 7

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130818

Year of fee payment: 7

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term