(57)【特許請求の範囲】
【請求項１】
文章入力に用いられるキーボードと、入力された文字列及び文章を表示するための表示装置と、プログラム及びデータを記憶するための記憶装置と、前記キーボードを用いて入力された文字列を前記プログラムにしたがって処理する処理装置とを備え、スペースで区切られた複数の単語からなる文章の入力を支援する文章入力支援システムであって、
文章入力に使用できる全ての単語が登録された辞書が前記データとして前記記憶装置に記憶され、前記処理装置は、入力された文字列と前記辞書に登録されている各単語とを先頭文字から順次照合して一致した単語を記憶しておき、入力された文字列が前記辞書に登録されているいずれの単語とも一致する可能性が無くなったときに、最後に一致した単語を確定文字列とすると共にその後にスペースを付加して後続の入力文字列と切り分ける処理を行い、かつ、
前記辞書の各レコードは、登録単語のフィールドと、前記登録単語から変換される変換単語のフィールドと、前記登録単語が内包単語を有するか否かを示すフィールドとを備え、前記登録単語が前記内包単語を有するレコードの前記変換単語のフィールドには前記内包単語を含む複数の候補の単語が登録されており、
前記処理装置は、前記確定文字列が前記内包単語を有する場合は、前記確定文字列を仮の確定文字列として処理することを特徴とする文章入力支援システム。
【請求項２】
前記処理装置は、前記確定文字列を仮の確定文字列と判断したときは、前記仮の確定文字列の前記内包単語を前記辞書から取得し、前記内包単語を他候補として作業者が選択できるように前記表示装置に表示し、作業者が前記他候補を選択した場合は、前記仮の確定文字列とその後のスペースを取り消し、前記他候補を新たな確定文字列とすると共にその後にスペースを付加して後続の入力文字列と切り分けることを特徴とする請求項１記載の文章入力支援システム。
【請求項３】
前記処理装置は、前記確定文字列を仮の確定文字列と判断したときは、前記辞書の前記変換単語のフィールドに登録された前記内包単語の後続文字列の前記辞書との照合による切り分け処理を、前記仮の確定文字列の後続文字列の切り分け処理と並行して行い、前記仮の確定文字列の後続文字列の切り分け処理がエラーになる場合は、前記仮の確定文字列とその後のスペースを取り消し、前記内包単語を新たな確定文字列とすると共にその後にスペースを付加して後続の入力文字列と切り分けることを特徴とする請求項１記載の文章入力支援システム。
【請求項４】
符号が入力された場合に、前記処理装置は、前記符号を除く入力文字列を確定文字列とし、該確定文字列に続けて前記符号を表示することを特徴とする請求項１、２又は３記載の文章入力支援システム。
【請求項５】
前記辞書の各レコードは、前記登録単語に対応して表記の異なる複数の変換単語が有るか否かを示す複数表記のフィールドを更に備え、
前記処理装置は、前記登録単語に対応して表記の異なる複数の変換単語がある場合は、前記辞書から取得した複数の変換単語のうちの１つを確定文字列とすると共に、他の変換単語を他候補として作業者が選択できるように前記表示装置に表示し、作業者が前記他候補を選択した場合は、前記確定文字列を前記他候補で置き換えることを特徴とする請求項１、２、３又は４記載の文章入力支援システム。
【請求項６】
文章入力に用いられるキーボードと、入力された文字列及び文章を表示するための表示装置と、プログラム及びデータを記憶するための記憶装置とを備えたコンピュータに、スペースで区切られた複数の単語からなる文章の入力を支援する処理を実行させるためのコンピュータプログラムであって、
文章入力に使用できる全ての単語が登録された辞書が前記データとして前記記憶装置に記憶され、前記辞書の各レコードは、登録単語のフィールドと、前記登録単語から変換される変換単語のフィールドと、前記登録単語が内包単語を有するか否かを示すフィールドとを備え、前記登録単語が前記内包単語を有するレコードの前記変換単語のフィールドには前記内包単語を含む複数の候補の単語が登録されており、前記コンピュータプログラムは、
入力された文字列と前記辞書に登録されている各単語とを先頭文字から順次照合して一致した単語を記憶しておくステップと、
入力された文字列が前記辞書に登録されているいずれの単語とも一致する可能性が無くなったときに、最後に一致した単語を確定文字列とすると共にその後にスペースを付加して前記表示装置に表示するステップと
前記確定文字列が前記内包単語を有する場合は、前記確定文字列を仮の確定文字列として処理するステップと
を前記コンピュータに実行させることを特徴とするコンピュータプログラム。
【請求項７】
文章入力に用いられるキーボードと、入力された文字列及び文章を表示するための表示装置と、プログラム及びデータを記憶するための記憶装置とを備えたコンピュータに、スペースで区切られた複数の単語からなる文章の入力を支援する処理を実行させるためのコンピュータプログラムが記憶されたコンピュータ読み取り可能な記憶媒体であって、請求項６記載のコンピュータプログラムが記録されていることを特徴とする記憶媒体。
【発明の詳細な説明】
【０００１】
技術分野
この発明は、英語やフランス語の文章のようにスペースで区切られた複数の単語からなる文章を入力する際に、作業者が小文字を連続入力するだけでスペースを含む正しい文章に自動変換する文章入力支援システムに関する。
【０００２】
背景技術
近年、コンピュータ技術の進展に伴い、文章をコンピュータ（ワードプロセッサ専用機を含む）を用いて入力する機会が多くなってきている。このような文章入力は、複数のキースイッチが所定の規則に沿って配列されたキーボードを用いて行われることが多い。このキーボード配列の基本は英文タイプライターの配列に遡ることができ、コンピュータを用いた英語やフランス語等の文章入力も基本的には英文タイプの入力方法が踏襲されている。
つまり、単語のスペルにしたがってキーボード上の対応する文字のキーを順次押下し、単語と単語の間にはスペースキーを押下する。また、文章の始まりや固有名詞（ドイツ語では全ての名詞）の先頭の文字を大文字にするためにシフトキーを文字キーと共に押下する。更に、必要に応じてカンマ、ピリオド（終止符）、クォーテーションマーク（引用符）等の符号キーを押下する。
日本語ワードプロセッサにあっては、上記のようなキーボードを用いて仮名及び漢字を含む文章を入力するために、ローマ字変換や仮名漢字変換等の入力方法が開発され広く用いられている。このような日本語入力の支援に特化したプログラムを日本語フロントエンドプロセッサ（ＦＥＰ）と呼ぶことがある。
一方、欧米の言語、特に英語の入力は原則としてキーボード上の英数字に対応するキーを用いて変換処理を行うことなく文章を入力することができる。ドイツ語やフランス語等で使用される特殊文字は、複数キーの組合せで入力し、又は、文字一覧表から選択して入力することが多い。このため、欧米の言語のワードプロセッサでは、日本語フロントエンドプロセッサのような文字列の変換を含む文章入力支援プログラムの必要性が少ない。
【０００３】
しかし、キーボードを用いた英語やフランス語等の文章入力を学習する人にとって、上記のような大文字と小文字との区別やスペースの入力は余計な労力に感じられることがある。つまり、口頭で文章を生成するときのように、大文字と小文字の区別やスペース（単語の区切り）を意識することなく、小文字を連続して入力すれば正しい文章に変換してくれる支援システムがあれば便利である。このような文章入力支援システムは、例えば上記の日本語フロントエンドプロセッサが起動している状態で英文等の入力を行う場合にも便利な機能となるであろう。
また、最近は携帯電話や携帯端末の普及に伴い、従来から用いられているキーボードとは異なる配列及び少ないキー数のキーボードやダイヤル等の新たな文字入力手段を用いて文章を入力する機会が増えつつある。このような入力手段を用いて、キーボードに慣れていない作業者が英語やフランス語等の文章入力を行う際にも、大文字と小文字の区別やスペースを意識させない文章入力支援システムが役立つであろう。
本発明は、上記のような課題を考慮し、英語やフランス語の文章のようにスペースで区切られた複数の単語からなる文章を入力する際に、作業者が小文字を連続入力するだけでスペースを含む文章に自動変換する文章入力支援システムを提供することを目的とする。
【０００４】
発明の開示
本発明による文章入力支援システムは、文章入力に用いられるキーボードと、入力された文字列及び文章を表示するための表示装置と、プログラム及びデータを記憶するための記憶装置と、キーボードを用いて入力された文字列をプログラムにしたがって処理する処理装置とを備え、スペースで区切られた複数の単語からなる文章の入力を支援する文章入力支援システムにおいて、文章入力に使用できる全ての単語が登録された辞書がデータとして記憶装置に記憶され、処理装置は、入力された文字列と辞書に登録されている各単語とを先頭文字から順次照合して一致した単語を記憶しておき、入力された文字列が辞書に登録されているいずれの単語とも一致する可能性が無くなったときに、最後に一致した単語を確定文字列とすると共にその後にスペースを付加して後続の入力文字列と切り分ける処理を行い、かつ、前記辞書の各レコードは、登録単語のフィールドと、前記登録単語から変換される変換単語のフィールドと、前記登録単語が内包単語を有するか否かを示すフィールドとを備え、前記登録単語が前記内包単語を有するレコードの前記変換単語のフィールドには前記内包単語を含む複数の候補の単語が登録されており、前記処理装置は、前記確定文字列が前記内包単語を有する場合は、前記確定文字列を仮の確定文字列として処理することを特徴とする。
このような文章入力支援システムを利用すれば、作業者は小文字を連続入力するだけでよく、システムが単語の区切りを判断してスペースを自動生成する。なお、文頭の文字を大文字にする処理は公知であり、この処理を本システムの処理と組み合わせることによって、作業者は大文字と小文字の区別やスペースを意識せずに英語やフランス語等の文章入力を行うことができる。
【０００５】
好ましい実施形態において、前記処理装置は、前記確定文字列を仮の確定文字列と判断したときは、前記仮の確定文字列の前記内包単語を前記辞書から取得し、前記内包単語を他候補として作業者が選択できるように前記表示装置に表示し、作業者が前記他候補を選択した場合は、前記仮の確定文字列とその後のスペースを取り消し、前記他候補を新たな確定文字列とすると共にその後にスペースを付加して後続の入力文字列と切り分ける。例えば、確定文字列"ａｄｖｉｓｅｄｌｙ"が他の登録された単語"ａｄｖｉｓｅｄ"を内包している場合がこれに該当する。この場合も作業者の選択を併用することにより、生成する文章の正確さを期すことができる。
別の実施形態として、前記処理装置は、前記確定文字列を仮の確定文字列と判断したときは、前記辞書の前記変換単語のフィールドに登録された前記内包単語の後続文字列の前記辞書との照合による切り分け処理を、前記仮の確定文字列の後続文字列の切り分け処理と並行して行い、前記仮の確定文字列の後続文字列の切り分け処理がエラーになる場合は、前記仮の確定文字列とその後のスペースを取り消し、前記内包単語を新たな確定文字列とすると共にその後にスペースを付加して後続の入力文字列と切り分ける。この場合は、上記のように作業者に選択させる代わりに、処理装置が正しい（と判断した）切り分けを自動的に選択することができる。
【０００６】
また、カンマ、ピリオド、クォーテーションマーク等の符号が入力された場合に、処理装置は、符号を除く入力文字列を確定文字列とし、該確定文字列に続けて符号を表示する。このような処理を行うことにより、符号が入力された場合は辞書を参照せずに確定文字列を決定することができる。また、文字と符号とを組み合わせた単語を辞書に登録する必要がなくなるので、辞書の記憶に必要なメモリ容量が少なくなる。
また、前記辞書の各レコードは、前記登録単語に対応して表記の異なる複数の変換単語が有るか否かを示す複数表記のフィールドを更に備え、前記処理装置は、前記登録単語に対応して表記の異なる複数の変換単語がある場合は、前記辞書から取得した複数の変換単語のうちの１つを確定文字列とすると共に他の変換単語を他候補として作業者が選択できるように表示装置に表示し、作業者が他候補を選択した場合は、確定文字列を他候補で置き換えることが好ましい。例えば、登録単語"ｍａｙ"に対して２つの変換単語"ｍａｙ"と"Ｍａｙ"がある場合がこれに該当する。作業者の選択を併用することにより、生成する文章の正確さを期すことができる。
【０００７】
上記のような本発明の文章入力支援システムは、例えば一般的なコンピュータシステム（パーソナルコンピュータやワークステーション等）に、上述のような処理を行わせるソフトウェアプログラム（文章入力支援プログラム）をインストールすることによって実現される。また、そのようなプログラムは、ＣＤ−ＲＯＭ、ＦＤ、メモリカード等の記憶媒体に記憶して流通させ、コンピュータシステムへのインストールを行うことができる。
【０００８】
発明を実施するための最良の形態
添付の図面に従って、本発明をより詳細に説明する。
まず、本発明の実施形態に係る文章入力支援システムの概略構成を図１のブロック図に沿って説明する。文章入力支援システム１は、表示装置１１、キーボード１２、マウス１３、プリンタ１４、処理装置１５、主メモリ１６、固定ディスク装置１７、及びリムーバブルディスク装置１８を備えている。
表示装置１１は、ＣＲＴ（陰極線管）、ＬＣＤ（液晶ディスプレイ）等で構成され、入力された文字列や文章等の画面表示に用いられる。キーボード１２は、文章（文字列）の入力等に用いられる。マウス１３は、文章入力や変換候補の選択等に補助的に用いられるが、文章入力支援システム１に必須ではない。キーボード１２があれば十分である。プリンタ１４は、作成された文章の印字出力等に用いられる。処理装置１５は、この文章入力支援システムに関して言えば、入力された文字列を後述する文章入力支援プログラムにしたがって処理し、所定の文章を生成する。また、文章入力支援システム１の全体の制御についても、処理装置１５が主として司る。
主メモリ１６は半導体メモリであり、処理装置１５が実行するプログラムのロードやデータの一時記憶等に用いられる。固定ディスク装置１７及びリムーバブルディスク装置１８はいわゆる補助記憶装置である。固定ディスク装置１７はプログラムやデータの保存に用いられる。リムーバブルディスク装置１８は、主としてプログラムのインストールやデータのバックアップ等に用いられ、光ディスク装置又は光磁気ディスク装置で構成される。
【０００９】
上記のような文章入力支援システム１は、一般的なコンピュータシステム（特にパーソナルコンピュータシステム）と、専用の文章入力支援プログラム（ソフトウエア）によって構成することができる。文章入力支援プログラムは、例えばＣＤ−ＲＯＭのような記憶媒体１９に記録されて提供され、リムーバブルディスク装置１８を介して固定ディスク装置１７にインストールされる。但し、そのようなインストール方法に限るわけではなく、例えば、コンピュータシステムに備えられた通信装置を介して接続された他のコンピュータ又はネットワークのサーバから所定の文章入力支援プログラムをダウンロードして、固定ディスク装置１７にインストールする方法も可能である。
次に、固定ディスク装置１７に記憶されるデータの一つとして、この文章入力支援システム１で使用される辞書について説明する。以下の説明においては、英語の文章入力を例にとる。この辞書には、文章入力に使用できる全ての単語が登録されている。動詞の変化形や名詞の複数形も辞書に登録されている。例えば、"ｂｏｏｋ"が登録されていれば、その複数形"ｂｏｏｋｓ"も登録されている。辞書の一部を図２に例示する。
【００１０】
辞書は登録単語のフィールドと変換単語のフィールドとを有する。登録単語は小文字ばかりの文字列であり、変換文字は大文字が混じる場合がある。例えば、人名や地名のような固有名詞の場合は、先頭の文字を大文字で表記したものが変換文字として登録されている。具体的な例として、登録単語"ｃｈｉｃａｇｏ"に対応して変換単語"Ｃｈｉｃａｇｏ"が登録されている。普通名詞や他の品詞の単語のように、ほとんどの単語では登録単語と確定単語が同じである。
この辞書では、全ての登録単語がアルファベット順に並べられている。後述するアルゴリズムによって、入力された文字列（以下、入力文字列という）と一致する登録単語を辞書から見つける処理（すなわち、マッチング処理）を行う際に、最も長い文字列が優先的に選択されて確定文字列となる。確定文字列が決まると、その登録単語に対応する変換単語に置き換えられる。カンマやピリオドのように、アルファベット以外の符号が入力された場合は、辞書を参照することなく、それまでの入力文字列がそのまま確定し、確定文字列に続いてその符合が表示される。
【００１１】
また、例えば登録単語"ｍａｙ"は、表記の異なる２つの変換単語"ｍａｙ"及び"Ｍａｙ"を有する。このような場合は、前者が第１候補として、後者が第２候補として変換単語のフィールドに登録されている。３つ以上の変換単語がある場合は、第３候補以降も登録されている。図２に示すように、表記の異なる複数の変換単語があるか否かを示す複数表記フィールドが辞書に設けられている。例えば変換単語"ｍａｙ"のレコードでは複数表記フィールドが「有り」となっている。変換単語"ｃｈｉｃａｇｏ"のレコードでは複数表記フィールドが「無し」となっている。
上記のように複数の候補が変換単語として登録されている場合は、いずれかの候補がデフォルトの確定文字列として採用される。また他の候補は、作業者が選択できるように表示装置１１に表示される。作業者が他の候補を選択すれば、確定文字列が他の候補に置き換えられる。上記の例では、小文字のみの文字列"ｍａｙ"がデフォルトの確定文字列となり、"Ｍａｙ"が他の候補として表示される。
【００１２】
また、例えば登録単語"ａｄｖｉｓｅｄ"は、その中に他の登録単語"ａｄｖｉｓｅ"を内包している。つまり、"ａｄｖｉｓｅｄ"は、"ａｄｖｉｓｅ"と"ｄ"に分かれる可能性がある。このような場合は、登録単語"ａｄｖｉｓｅｄ"の変換単語の第１候補として"ａｄｖｉｓｅｄ"が登録され、第２候補として"ａｄｖｉｓｅ"が登録されている。同様に登録単語"ａｄｖｉｓｅｄｌｙ"の場合は、変換単語として第１候補"ａｄｖｉｓｅｄｌｙ"と第２候補"ａｄｖｉｓｅｄ"が登録されている。
このように登録単語に内包される単語（以下、内包単語という）がある場合にも、デフォルト候補以外の他候補は作業者が選択できるように表示装置１１に表示される。作業者が他の候補を選択すれば、確定文字列が他の候補に置き換わる。上記の例では、最も長い第１候補"ａｄｖｉｓｅｄｌｙ"がデフォルトの確定文字列となる。
【００１３】
また、例えば登録単語"ａｆｉｅｌｄ"の場合は、その中に他の登録単語"ａ"及び"ｆｉｅｌｄ"を内包している。この場合も、変換単語として第１候補"ａｆｉｅｌｄ"及び第２候補"ａ"を登録しておけば、前から順番に一単語ずつ確定していくことができる。第２候補"ａ"を確定した場合の残りの"ｆｉｅｌｄ"については新たな入力文字列として処理すればよい。図２に示すように、内包単語があるか否かを示す内包単語フィールドが辞書に設けられている。例えば変換単語"ａｄｖｉｓｅ"のレコードでは内包単語フィールドが「無し」となっており、変換単語"ａｄｖｉｓｅｄ"のレコードでは内包単語フィールドが「有り」となっている。
なお、デフォルトの確定文字列を上記のように決めるのは一例に過ぎない。例えば、使用頻度の高い文字列をデフォルトの確定文字列として採用するようにアルゴリズムを構成することも可能である。
【００１４】
以下、図３〜５のフローチャートに基づいて、この実施形態における文章入力支援プログラムのアルゴリズムを説明する。まず、図３はキーボードから文字又は符号が入力されるたびに実行される文章入力支援プログラムのメインルーチンの例を示すフローチャートである。図３のステップ＃１において、符号の入力か文字の入力かを判断する。符号の入力である場合（ステップ＃１のＹｅｓ）は、ステップ＃２の符号入力処理のサブルーチン（図４を参照して後述する）を実行した後にステップ＃１２へ移行する。
符号の入力でない場合、すなわち文字の入力である場合（ステップ＃１のＮｏ）は、現在までの入力文字列と辞書の登録単語との照合を行う（ステップ＃３）。入力文字列と一致する登録単語（以下、一致単語という）がある場合（ステップ＃４のＹｅｓ）は、一致単語を記憶（記憶更新）して（ステップ＃５）処理ルーチンを終了する。例えば、現在までの入力文字列が"ａｄｖｉｓｅ"である場合は一致単語"ａｄｖｉｓｅ"が記憶されるが、これで文字列が確定するわけではない。次に文字"ｄ"が入力された場合は、一致単語の記憶が"ａｄｖｉｓｅｄ"に更新される。つまり、最後に一致した登録単語（最後の一致単語）が記憶されることになる。
【００１５】
続いて文字"ｌ"が入力されたときに現在までの入力文字列"ａｄｖｉｓｅｄｌ"に一致する登録単語は無いが、次に文字"ｙ"が入力されれば登録単語"ａｄｖｉｓｅｄｌｙ"に一致する。つまり、文字"ｌ"が入力された時点では一致する登録単語は無いが、次回以降の文字入力で登録単語に一致する可能性が残っている。この場合はステップ＃４のＮｏからステップ＃６のＮｏを経て処理ルーチンを終了する。
文字"ｌ"の入力に続いて文字"ｙ"以外の文字が入力された場合は、次回以降の文字入力でも登録単語に一致する可能性が無くなる。この場合はステップ＃４のＮｏからステップ＃６のＹｅｓを経てステップ＃７に移行する。ステップ＃７では、最後に一致した登録単語（最後の一致単語）の記憶を読み出して、これを確定文字列とする。上記の例では、"ａｄｖｉｓｅｄ"が確定文字列となる。
次のステップ＃８において、辞書にしたがって登録単語"ａｄｖｉｓｅｄ"に対応する変換単語"ａｄｖｉｓｅｄ"を確定文字列として置き換える。確定文字列"ａｄｖｉｓｅｄ"の例では変化が無いが、例えば確定文字列が"ｃｈｉｃａｇｏ"の場合は変換単語"Ｃｈｉｃａｇｏ"に置き換えられる。
【００１６】
続くステップ＃９において複数表記処理のサブルーチンを実行する。このサブルーチンについては、図５を参照して後述する。そして、ステップ＃１０において確定文字列の後にスペースが付加され、後続の入力文字列と切り分けられる。続いて、ステップ＃１１で内包単語処理のサブルーチンを実行した後、ステップ＃１２へ移行する。このサブルーチンについては、図６を参照して後述する。
ステップ＃１２では、確定文字列が文の先頭の文字列か否かを判断する。これは、例えば、ピリオド（終止符）やクエスチョンマーク（疑問符）のように、文章の末尾に入力される符号（以下、文章終端符号という）が入力された時点でフラグをセットすることによって判断することができる。文章入力開始時にもこのフラグをセットする。確定文字列が文の先頭の文字列でない場合は何もせずに処理ルーチンを終了するが、先頭の文字列である場合はステップ＃１３で先頭文字を大文字にする。この際、上記のフラグはリセットされる。そして処理ルーチンを終了する。
【００１７】
図４は、図３のステップ＃２における符号入力処理のサブルーチンを示すフローチャートである。まず、ステップ＃１０１において、入力された符号を除く（符号より前の）入力文字列を確定文字列とする。次のステップ＃１０２において、確定文字列に続けて符号を表示する。
次のステップ＃１０３からステップ＃１０６までの処理は、入力された符号の後に必要に応じてスペースを付加する処理を行っている。この例では、文章と文章との間、すなわち文章終端符号の後はダブルスペースを付し、文章の途中の区切り、すなわちカンマ等の後にはシングルスペースを付している。
つまり、入力された符号が終止符や疑問符のような文章終端符号である場合（ステップ＃１０３のＹｅｓ）は、ステップ＃１０４においてスペースを付加し、更にステップ＃１０６でスペースを付加する。入力された符号がカンマ、セミコロン等の文章の途中を区切る符号である場合（ステップ＃１０３のＮｏからステップ＃１０５のＹｅｓ）は、ステップ＃１０６でスペースを付加する。それ以外の符号、例えばアポストロフィ等の場合はスペースを付加することなくメインルーチンに戻る。
なお、段落を変えるための改行は、作業者が改行キーを押下することによって行うが、このときは、文章終端符号の後に挿入されたダブルスペースは削除される。文章入力を終了した場合も同様に、最後の文章終端符号の後に挿入されたダブルスペースは削除される。また、段落の先頭にタブ又は所定数のスペースを挿入する処理を必要に応じて行ってもよい。ワードラップ処理や禁則処理についても同様に、必要に応じて、又は設定にしたがって実行すればよい。ワードラップ処理は、一つの単語の途中で行が終了する場合に、その単語を次の行に送る処理を意味する。禁則処理は、行の始めがピリオドやカンマ等の符号になることを避けて、前の行の最後に規定の文字数を超えてそれらの符号を表示する処理を意味する。これらの処理は公知の技術であり、本発明と直接の関係は無いので詳細な説明は割愛する。
【００１８】
図５は、図３のステップ＃９における複数表記処理のサブルーチンを示すフローチャートである。まず、ステップ＃２０１において辞書の複数表記フィールドを参照し、複数表記の有無をチェックする。複数表記有りの場合は、ステップ＃２０２でデフォルト候補を確定文字列とし、ステップ＃２０３で他候補を選択可能に表示する。例えば登録単語"ｍａｙ"に対応する変換単語の第１候補"ｍａｙ"を確定文字列とし、第２候補"Ｍａｙ"を選択可能に表示する。
ここでいう「選択可能に表示」は、表示装置１１の画面上において、他候補（他の表記）があることが分かるように表示すれば十分である。例えば入力文章中に表示されるデフォルト候補に近接して他候補を表示してもよいし、離れた場所に表示してもよい。他候補の選択は例えば特別のキー（例えばスペースキー）を押下することによって行われる。２つ以上の他候補がある場合は、そのキーを複数回押下することによって選択対象の他候補が変わるようにすればよい。
他候補選択のためのキー（例えばスペースキー）を押下しないで他のキー（文字や符号を入力するキー）が押下されれば、他候補が選択されなかったことになる。他候補が選択されなかった場合（ステップ＃２０４のＮｏ）は、デフォルト候補が確定文字列とされたままでメインルーチンに戻る。他候補が選択された場合（ステップ＃２０４のＹｅｓ）は、確定文字列（"ｍａｙ"）が他候補（"Ｍａｙ"）で置き換えられ（ステップ＃２０５）、メインルーチンに戻る。
【００１９】
図６は、ステップ＃１１における内包単語処理のサブルーチンを示すフローチャートである。まず、ステップ＃３０１において辞書の内包単語フィールドを参照し、内包単語の有無をチェックする。内包単語有りの場合は、ステップ＃３０２で内包単語を他候補として選択可能に表示する。例えば登録単語"ａｄｖｉｓｅｄ"に対応する変換単語の第１候補"ａｄｖｉｓｅｄ"が確定文字列として表示されているときに、内包単語である第２候補"ａｄｖｉｓｅ"を選択可能に表示する。
ここでいう「選択可能に表示」は、表示装置１１の画面上において、他候補（内包単語）があることが分かるように表示すれば十分である。例えば入力文章中に表示されるデフォルト候補に近接して他候補を表示してもよいし、離れた場所に表示してもよい。他候補の選択は例えば特別のキー（例えばスペースキー）を押下することによって行われる。２つ以上の他候補がある場合は、そのキーを複数回押下することによって選択対象の他候補が変わるようにすればよい。
【００２０】
他候補選択のためのキー（例えばスペースキー）を押下しないで他のキー（文字や符号を入力するキー）が押下されれば、他候補が選択されなかったことになる。他候補が選択されなかった場合（ステップ＃３０３のＮｏ）は、そのままメインルーチンに戻る。他候補が選択された場合（ステップ＃３０３のＹｅｓ）は、ステップ＃３０４で確定文字列の確定とその後のスペース（例えば"ａｄｖｉｓｅｄ"）が取り消される。そして、他候補（例えば"ａｄｖｉｓｅ"）を新たな確定文字列とし（ステップ＃３０５）、その後にスペースを付加して（ステップ＃３０６）メインルーチンに戻る。この例では、スペースで切り分けられた後続の入力文字列はすでに入力されている"ｄ"から始まることになる。
次に、具体的な文章入力を例にとって説明を加える。文章の一例として、英文"Ｔｈｉｓｉｓ ｔｈｅ ｆｉｒｓｔ ｔｉｍｅ Ｉ ｈａｖｅ ｌｉｓｔｅｎｅｄ ｔｏ ｊａｚｚ．Ｉｔ ｉｓ ｆａｎｔａｓｔｉｃ！"を入力する場合を考える。本発明の文章入力支援システムを用いる場合に作業者はキーボードから"ｔｈｉｓｉｓｔｈｅｆｉｒｓｔｔｉｍｅｉｈａｖｅｌｉｓｔｅｎｅｄｔｏｊａｚｚ．ｉｔｉｓｆａｎｔａｓｔｉｃ！"と入力すればよい。
なお、説明を簡単にするために以下の条件を設定する。ただし、この条件は自由に設定可能である。一行当たり入力可能な文字数は小文字３０個に相当する。文字以外の符号は小文字と同じく１文字分の幅に相当し、大文字は小文字２個分の幅を占有する。文字ごとに幅を変えるプロポーショナルフォントは考慮しないで、全ての文字及び符号について上記の条件を満たすものとする。また、前述のワードラップ処理を実行し、段落の先頭にタブ（又はスペース）を挿入する処理は実行しないものとする。
【００２１】
作業者が"ｔ"から入力を始めて、"ｔｈｉｓ"まで入力した時点で辞書の登録単語"ｔｈｉｓ"と一致し、一致単語"ｔｈｉｓ"が記憶される（図３のステップ＃５）。続いて"ｉ"が入力されると、それまでの入力文字列"ｔｈｉｓｉ"で始まる登録単語が無いので、次回以降の文字入力でも登録単語に一致する可能性が無くなる。この時点で最後に一致した登録単語"ｔｈｉｓ"が読み出されて確定文字列となる（図３のステップ＃７）。そして、登録単語"ｔｈｉｓ"に複数表記は無いので確定文字列"ｔｈｉｓ"が最終的に確定し、その後にスペースが付加される（図３のステップ＃１０）。
また、登録単語"ｔｈｉｓ"は内包単語も無いので、確定文字列"ｔｈｉｓ"及びその後に付加されたスペースは変更されない（最終確定する）。そして、文の先頭であることが前述のようにして判別されるので、先頭文字が大文字にされる（図３のステップ＃１３）。ここまでの入力文章は、"Ｔｈｉｓ ｉ"であり、"ｉ"で始まる入力文字列に処理対象が移行する。このとき、一致単語の記憶領域はクリアされる。
登録単語"ｉ"が一致単語として記憶され、更に"ｓ"が入力されると、入力文字列"ｉｓ"に一致する登録単語が辞書で見つかるので、一致単語の記憶が"ｉｓ"に更新される。この後、"ｉｓｔｈｅ"まで入力された時点で登録単語に一致する可能性が無くなる。したがって、一致単語"ｉｓ"が確定文字列となり、その後にスペースが付加される。この時点での入力文章は、"Ｔｈｉｓ ｉｓ ｔｈｅ"となっているが、処理対象の入力文字列はまだ"ｉｓ"である。登録単語"ｉｓ"は内包単語"ｉ"を有するので、確定文字列"ｉｓ"の他候補として"ｉ"が選択可能に表示される（図６のステップ＃３０２）。
【００２２】
作業者が"ｉ"を選択せずに（無視して）次の文字"ｆ"を入力すると、処理対象の入力文字列が"ｔｈｅ"に移り、一致単語"ｔｈｅ"が記憶されると共に入力文字列が"ｔｈｅｆ"になる。更に"ｉ"が入力されて入力文字列が"ｔｈｅｆｉ"になった時点で登録単語に一致する可能性が無くなる。したがって、一致単語"ｔｈｅ"が確定文字列となり、その後にスペースが付加される。登録単語"ｔｈｅ"は内包単語が無いので、処理対象の入力文字列が"ｆｉ"に移行し、一致単語の記憶領域がクリアされる。この時点での入力文章は、"Ｔｈｉｓ ｉｓ ｔｈｅ ｆｉ"となっている。
同様の処理が繰り返されて、"Ｔｈｉｓ ｉｓ ｔｈｅ ｆｉｒｓｔ ｔｉｍｅ ｉ"までの文章が入力され、現在の処理対象が"ｉ"から始まる入力文字列にあるとする。登録単語"ｉ"が一致単語として記憶された後、入力文字列が"ｉｈａ"まで入力された時点で登録単語に一致する可能性が無くなる。したがって一致単語"ｉ"が確定文字列となり、辞書の変換単語"Ｉ"に置き換えられた後、スペースが付加される。この時点での入力文章は、"Ｔｈｉｓ ｉｓ ｔｈｅ ｆｉｒｓｔ ｔｉｍｅ Ｉ ｈａ"であり、処理対象の入力文字列は"ｈａ"となっている。
入力文字列が"ｈａｖｅ"になった時点で一致単語"ｈａｖｅ"が記憶される。更に入力文字列が"ｈａｖｅｌｉｓ"になった時点で登録単語に一致する可能性が無くなるので、一致単語"ｈａｖｅ"が確定文字列となり、スペースが付加される。この時点での入力文章は、"Ｔｈｉｓ ｉｓ ｔｈｅ ｆｉｒｓｔ ｔｉｍｅ Ｉ ｈａｖｅ ｌｉｓ"であり、処理対象の入力文字列は"ｌｉｓ"となっている。このとき、前述の条件として設定した１行当たりの文字数３０を超えるので、ワードラップ処理により、入力文字列"ｌｉｓ"以降の表示は２行目に移される。
【００２３】
同様の処理が繰り返されて、"Ｔｈｉｓ ｉｓ ｔｈｅ ｆｉｒｓｔ ｔｉｍｅ Ｉ ｈａｖｅ（改行）ｌｉｓｔｅｎｅｄ ｔｏ ｊａｚｚ"までの文章が入力され、現在の処理対象の入力文字列が"ｊａｚｚ"であるとする。次に終止符（ピリオド）が入力されると、"ｊａｚｚ"はそのまま確定文字列となり（図４のステップ＃１０１）、続けて終止符が表示される（図４のステップ＃１０２）。さらに、スペースが２個自動的に付加される（図４のステップ＃１０４及び＃１０６）。この時点での入力文章は"Ｔｈｉｓ ｉｓ ｔｈｅ ｆｉｒｓｔ ｔｉｍｅ Ｉ ｈａｖｅ（改行）ｌｉｓｔｅｎｅｄ ｔｏ ｊａｚｚ．"である。前述のように、次の入力文字列が文頭であることを示すフラグがセットされる。
次の文章についても同様の入力支援処理が行われ、"Ｔｈｉｓ ｉｓ ｔｈｅ ｆｉｒｓｔｔｉｍｅ Ｉ ｈａｖｅ（改行）ｌｉｓｔｅｎｅｄ ｔｏ ｊａｚｚ． Ｉｔ ｉｓ ｆａｎｔａ"まで入力された時点で、２行目が１行当たりの文字数３０を超えるので、現在の処理対象である入力文字列"ｆａｎｔａ"が３行目に移行する。また、"ｆａｎ"まで入力された時点で登録単語"ｈａｖｅ"が一致単語として記憶され、"ｆａｎｔａｓｔ"まで入力された時点で一致単語の記憶が登録単語"ｆａｎｔａｓｔ"に更新される。更に"ｆａｎｔａｓｔｉｃ"まで入力された時点で一致単語の記憶が登録単語"ｆａｎｔａｓｔｉｃ"に更新される。
【００２４】
この例では、次の感嘆符（！）が入力された時点で、感嘆符（！）を除く入力文字列"ｆａｎｔａｓｔｉｃ"が確定し、その後に感嘆符（！）が表示される（図４のステップ＃１０１及び＃１０２）。なお、この例と異なるが、入力文字列"ｆａｎｔａｓｔｉｃ"の後に文字入力が続く場合は、登録単語に一致する可能性が無くなった時点で最後の一致単語"ｆａｎｔａｓｔｉｃ"が読み出されて確定文字列となると共に、内包単語"ｆａｎ"及び"ｆａｎｔａｓｔ"が他候補として選択可能に表示されることになる。
確定文字列"ｆａｎｔａｓｔｉｃ"の後に感嘆符（！）が表示されたのち、ダブルスペースが自動的に付加される（図４のステップ＃１０４及び＃１０６）が、前述のように文章入力が終了したときに最後のダブルスペースは削除される。こうして、作業者がキーボードから入力した文字列"ｔｈｉｓｉｓｔｈｅｆｉｒｓｔｔｉｍｅｉｈａｖｅｌｉｓｔｅｎｅｄｔｏｊａｚｚ．ｉｔｉｓｆａｎｔａｓｔｉｃ！"が、所定形式の文章"Ｔｈｉｓ ｉｓ ｔｈｅ ｆｉｒｓｔ ｔｉｍｅ Ｉ ｈａｖｅ（改行）ｌｉｓｔｅｎｅｄ ｔｏ ｊａｚｚ． Ｉｔ ｉｓ（改行）ｆａｎｔａｓｔｉｃ！"に変換され、表示装置１１の画面上に表示される。
以上に説明したように、本発明の文章入力支援システムでは、スペースなしで連続入力された文字列を辞書の登録単語と照合することによって単語の切れ目を判断してスペースを自動挿入する。このとき、最も長い単語をデフォルトの確定文字列（単語）として採用する。そして、確定文字列に短い登録単語（内包単語）が含まれる場合は、内包単語を他候補として選択可能に表示して、作業者の選択又は非選択を待って確定文字列の最終的な確定を行う。
【００２５】
しかし、確定文字列に内包単語がある場合の変換候補の選択を、ある程度自動的に行うことも可能である。一例として、後続の入力文字列との関係で内包単語を含む変換候補の中から適切な候補を自動的に選択する方法を簡単に説明する。
例えば、"ｏｕｒ ｓｅｃｔｉｏｎ"を意識して"ｏｕｒｓｅｃｔｉｏｎ"という文字列を入力する場合に、"ｏｕｒｓｅｃ"まで入力された時点で登録単語に一致する可能性が無くなり、"ｏｕｒｓ"が確定する。この確定文字列"ｏｕｒｓ"は内包単語"ｏｕｒ"を有する。そこで、後続の入力文字列を処理する際に、"ｏｕｒｓ"で区切られた場合の"ｅｃ"で始まる入力文字列だけでなく、"ｏｕｒ"で区切られた場合の"ｓｅｃ"で始まる入力文字列についても並行して評価する。その結果、前者の"ｅｃ"で始まる場合は、"ｅｃｔｉ"まで入力した時点で登録単語に一致する可能性が無くなり、一致単語が記憶されていないのでエラーになってしまう。後者の"ｓｅｃ"で始まる場合は、登録単語"ｓｅｃｔｉｏｎ"が辞書に見つかる。こうして、"ｏｕｒ ｓｅｃｔｉｏｎ"が適切な区切りとして最終的に確定する。上記の方法の場合に、例えば"ｏｕｒ ｓｐｏｒｔ"を意識して"ｏｕｒｓｐｏｒｔ"という文字列を入力する場合は、"ｏｕｒｓ ｐｏｒｔ"が正しい区切りとして認識されることになる。このような場合に、後の文字列が長いほうを優先して選択するようにしてもよい。つまり、"ｏｕｒｓ ｐｏｒｔ"ではなく、"ｏｕｒ ｓｐｏｒｔ"を適切な区切りとして自動選択する。一般に、後の文字列が長いほうを優先して選択するほうが正しい区切りになる確率が高いことが分かっている。
【００２６】
その他の方法として、辞書に登録単語の品詞や他の単語との結合の情報を登録しておき、直前又はそれ以前の確定文字列との関係に基づいて内包単語を含む変換候補の中から適切な候補を自動的に選択するようにしてもよい。
また、上記実施例では、作業者がタイプミスをした場合のエラーについては触れなかった。例えば、一致単語が記憶されていない（入力文字列の処理に先立ってクリアされたまま）の状態で、登録単語に一致する可能性が無くなったときは、タイプミスと判断して、エラー表示を行うことが可能である。ブザーや音声でタイプミスを知らせてもよい。作業者の選択を求める表示に際してもブザーによる報知を行ってもよい。
なお、本発明は上記実施形態に限らず、種々の形態で実施することが可能である。特に、文章入力支援システムのハードウエア構成については、標準キーボードを備えたコンピュータに限らず、ワードプロセッサ専用機であってもよいし、専用キーボードを備えた携帯端末等、文章入力が可能な任意の装置に本発明を適用することができる。
また、上記の実施形態では英語の文章入力を例にとって説明したが、本発明は英語に限らずドイツ語やフランス語等の種々の文章入力に適用することができる。要は、スペースで区切られた複数の単語からなる文章の入力であれば、本発明を適用可能である。
【００２７】
産業上の利用可能性
以上のように、本発明に係る文章入力支援システムはワードプロセッサ等の文章入力機器に利用することができる。そして、英語やフランス語の文章のようにスペースで区切られた複数の単語からなる文章の入力に際して作業者が小文字を連続入力すれば、文章入力支援システムがスペースを自動生成し、適切な文章に変換する。
【００２８】
【図面の簡単な説明】
図１は、本発明の実施形態に係る文章入力支援システムの概略構成を示すブロック図である。
図２は、文章入力支援システムに使用される辞書の一部を例示する図表である。
図３は、キーボードから文字又は符号が入力されるたびに実行される文章入力支援プログラムのメインルーチンの例を示すフローチャートである。
図４は、図３のメインルーチン中の符号入力処理サブルーチンを示すフローチャートである。
図５は、図３のメインルーチン中の複数表記処理サブルーチンを示すフローチャートである。
図６は、図３のメインルーチン中の内包単語処理サブルーチンを示すフローチャートである。
【図１】
0004048169.tif 000002
【図２】
0004048169.tif 000003
【図３】
0004048169.tif 000004
【図４】
0004048169.tif 000005
【図５】
0004048169.tif 000006
【図６】
0004048169.tif 000007