以下、図面に基づいて本発明の実施の形態を説明する。図1は、本発明の実施の形態における入力支援装置のハードウェア構成例を示す図である。図1の入力支援装置10は、コンピュータの一例であり、例えば、それぞれバスBで相互に接続されているドライブ装置100、補助記憶装置102、メモリ装置103、CPU104、インタフェース装置105、表示装置106、及び入力装置107等を有する。
入力支援装置10での処理を実現するプログラムは、記録媒体101によって提供される。プログラムを記録した記録媒体101がドライブ装置100にセットされると、プログラムが記録媒体101からドライブ装置100を介して補助記憶装置102にインストールされる。但し、プログラムのインストールは必ずしも記録媒体101より行う必要はなく、ネットワークを介して他のコンピュータよりダウンロードするようにしてもよい。補助記憶装置102は、インストールされたプログラムを格納すると共に、必要なファイルやデータ等を格納する。
メモリ装置103は、プログラムの起動指示があった場合に、補助記憶装置102からプログラムを読み出して格納する。CPU104は、メモリ装置103に格納されたプログラムに従って入力支援装置10に係る機能を実現する。インタフェース装置105は、ネットワークに接続するためのインタフェースとして用いられる。表示装置106はプログラムによるGUI(Graphical User Interface)等を表示する。入力装置107はキーボード及びマウス等であり、様々な操作指示を入力させるために用いられる。
なお、記録媒体101の一例としては、CD−ROM、DVDディスク、又はUSBメモリ等の可搬型の記録媒体が挙げられる。また、補助記憶装置102の一例としては、HDD(Hard Disk Drive)又はフラッシュメモリ等が挙げられる。記録媒体101及び補助記憶装置102のいずれについても、コンピュータ読み取り可能な記録媒体に相当する。
図2は、第一の実施の形態における入力支援装置の機能構成例を示す図である。図2において、入力支援装置10は、編集部11、変換部12、入力支援部13、及びOS14等を有する。
OS14は、一般的なOS(Operating System)である。
編集部11は、文字列の入力画面を表示装置106に表示させる。入力画面は、文字列を入力可能な一以上の入力領域を有するウィンドウをいう。本実施の形態では、各入力領域を「エディタ領域」という。例えば、編集部11が、ウィンドウのほぼ全領域を占有するエディタ領域を含む入力画面を表示させる場合、当該編集部11は、一般的に、ワープロソフトと呼ばれるプログラムがCPU104に実行させる処理によって実現される。一方、編集部11が、複数のエディタ領域を含む入力画面を表示させる場合、当該編集部11は、各種のアプリケーションプログラムがCPU104に実行させるプログラムによって実現される。当該アプリケーションプログラムは、例えば、データベースに対する情報の入力を受け付けるクライアントアプリケーションであってもよいし、Webブラウザであってもよい。
変換部12は、入力画面に入力される文字に関して、かな漢字変換を行う。但し、日本語以外の言語用の変換部12は、当該言語に応じた変換を行う。変換部12は、例えば、かな漢字変換ソフトのような、IME(Input Method Editor)又はFEP(Front End Processor)等と呼ばれるソフトウェアがCPU104に実行させる処理によって実現される。
入力支援部13は、入力画面への文字列の入力の支援を行う。入力支援部13は、文字列の入力に応じ、入力候補とする文例の一覧を表示する。入力支援部13は、当該一覧の中から選択された文例を入力画面に出力又は展開する。入力支援部13は、入力支援装置10にインストールされたプログラムが、CPU104に実行させる処理により実現される。なお、本実施の形態において、文字列とは、一以上の文字の集合をいう。したがって、一つの文字についても、文字列という。また、文字の概念には、言葉を表記するための記号としての文字のみならず、一般的に、コンピュータにおいて入力可能な各種の記号も含まれる。
図2において、入力支援部13は、イベント監視部131、文例抽出部132、文例検索部133、表示順決定部134、文例一覧表示部135、辞書更新部136、文例出力部137、文例グループ更新部138、メンバ文例検索部139、メンバ文例表示部140、メンバ文例出力部141、及びウィンドウ判定部142等を含む。入力支援部13は、また、入力文字バッファ151、文例グループバッファ152、文例辞書記憶部153、及び文例グループ情報記憶部154等の記憶部を利用する。
文例辞書記憶部153は、文例辞書を記憶する。文例辞書とは、文例の読みに対応付けて文例や文例の利用回数等が記録されているデータである。本実施の形態において、文例とは、単語、又は一以上の文節等、文の構成要素となる文字列や、一以上の文の集合を含む文字列等をいう。また、帳票等、定型文書の雛型等が文例とされてもよい。何が文例として登録されるかは、ユーザの任意である。文例辞書記憶部153は、例えば、補助記憶装置102又は入力支援装置10とネットワークを介して接続される記憶装置等を用いて実現可能である。
イベント監視部131は、入力支援装置10において発生する入力イベントを監視し、文字の入力等を検知する。入力イベントとは、例えば、入力装置107対するユーザによる入力に応じて、入力装置107が発生させるイベントをいう。文字の入力が検知された場合、イベント監視部131は、入力された文字を、入力文字バッファ151に記憶する。入力文字バッファ151は、文例の検索に用いられる文字列を記憶する記憶部である。入力文字バッファ151は、例えば、メモリ装置103を用いて実現可能である。
文例抽出部132は、入力された文字列より文例を抽出する。文例の抽出には、例えば、形態素解析が用いられる。
文例検索部133は、入力画面に対する文字列の入力に応じて、当該文字列に対応する文例を文例辞書記憶部153より検索する。表示順決定部134は、文例検索部133によって検索された文例を入力候補として表示する際の表示順序を決定する。文例一覧表示部135は、表示順決定部134によって決定された表示順序によって、文例検索部133によって検索された一以上の文例の一覧を、入力候補として表示させる。文例一覧表示部135によって表示される文例の一覧を、以下「文例一覧」という。
辞書更新部136は、文例辞書の更新を行う。辞書更新部136は、例えば、文例辞書に新たな文例を登録したり、入力候補として表示された文例の中から選択された文例の利用回数を更新したりする。利用回数は、文例辞書において、文例ごとに記録されており、文例の表示順の決定に用いられる情報である。辞書更新部136は、また、入力候補として表示された文例の中から選択された文例のみならず、入力された文字列から文例抽出部132によって抽出された文例に一致する文例に関しても利用回数を更新する。
文例出力部137は、文例一覧の中から選択された文例を、入力画面に出力する。
文例グループ情報記憶部154は、文例グループを構成する文例の対応付け情報等を記憶する。本実施の形態において、文例グループとは、複数のエディタ領域を有する入力画面において、各エディタ領域に入力された文例の組み合わせをいう。文例グループ情報記憶部154は、例えば、補助記憶装置102又は入力支援装置10とネットワークを介して接続される記憶装置等を用いて実現可能である。
文例グループバッファ152は、一つの入力画面に入力された複数の文例又は文字列を対応付けて記憶する。文例グループバッファ152は、入力画面ごとに生成される。例えば、3つの入力画面が表示中である場合、3つの文例グループバッファ152の領域が確保される。文例グループバッファ152は、例えば、メモリ装置103を用いて実現可能である。
文例グループ更新部138は、文例グループ情報記憶部154に対する文例グループの登録又は更新等を行う。
メンバ文例検索部139は、入力画面の少なくとも一つのエディタ領域に対する文例又は文字列の入力に応じ、当該文例又は当該文字列に一致する文例を含む文例グループを、文例グループ情報記憶部154を参照して特定する。メンバ文例検索部139は、特定された文例グループに含まれる文例を文例辞書記憶部153より取得する。文例グループに含まれる文例を、以下「メンバ文例」という。
メンバ文例表示部140は、メンバ文例検索部139によって取得されたメンバ文例の一覧を、表示装置106に表示させる。以下、当該一覧を「メンバ文例一覧」という。
メンバ文例出力部141は、メンバ文例一覧の中から選択された文例を、入力画面に出力する。ウィンドウ判定部142は、アクティブな入力画面が、複数のエディタ領域を有する可能性の有無を判定する。アクティブな入力画面とは、現在操作対象とされている入力画面をいう。例えば、複数の入力画面が表示されている状態において、最前面に表示されている入力画面がアクティブな入力画面となる。最前面に表示されている入力画面が複数有る場合、その中でフォーカスの有る入力画面がアクティブな入力画面となる。
なお、図2において、破線で囲まれた範囲は、OS14から見た場合のプロセスの単位の一例を示す。図2では、編集部11としてのプロセスは、複数起動されうることが示されている。例えば、入力支援装置10を編集部11として機能させるアプリケーションプログラムとして、アプリケーションAとアプリケーションBとが起動されている場合、それぞれに関して編集部11としてのプロセスが生成される。また、図2では、変換部12は、編集部11のプロセス内において機能することが示されている。したがって、変換部12は、編集部11としてのプロセスの数だけ存在しうる。一方、入力支援部13は、編集部11からは独立したプロセスとして起動される。
以下、第一の実施の形態の入力支援装置10が実行する処理手順について説明する。図3は、第一の実施の形態において入力支援部が実行する処理手順の一例を説明するためのフローチャートである。
入力支援部13が、例えば、プロセスとして起動されると、イベント監視部131は、入力支援装置10において発生し、OS14によって検出される入力イベントの監視を開始する(S101)。OS14によって何らかの入力イベントが検出されたことがイベント監視部131によって検知されると(S101でYes)、入力支援部13は、入力イベントに応じた処理を実行する。なお、イベント監視部131による入力イベントの検知は、例えば、OS14によって提供される、イベントのフック機構を用いて実現可能である。
検知された入力イベントが文字入力イベントである場合(S102でYes)、入力支援部13は、文例一覧表示処理を実行する(S103)。なお、文字入力イベントは、文字の入力に応じて検知されるイベントをいう。
図4は、第一の実施の形態における文例一覧表示処理の処理手順の一例を説明するためのフローチャートである。
ステップS210において、文例検索部133は、入力された文字列に対応する文例を文例辞書記憶部153に記憶されている文例辞書より検索する。
図5は、文例辞書の構成例を示す図である。図5において、文例辞書は、文例ごとに、文例ID、読み、及び利用回数等を含む。
文例IDは、文例の識別情報である。読みは、文例に対する読みである。但し、厳密な意味における読みでなくてもよい。すなわち、読みは、文例の検索キーとして利用される文字列である。利用回数は、文例が利用された(入力対象として選択された)回数である。本実施の形態において、利用回数は、文例が利用された累積回数である。但し、過去の所定期間(例えば、過去数日間)において文例が利用された回数であってもよい。
なお、ステップS210において、入力された文字列に対応する文例とは、当該文例に対応する読みが入力された文字列に適合する文例、又は入力された文字列が未確定文字列である場合は、当該文例自体が未確定文字列に適合する文例をいう。入力された文字列に適合する読みとは、例えば、入力された文字列を先頭から含む読みをいう。入力された文字列と読みとが完全に一致する場合も含まれるし、読みの先頭の一部分が、入力された文字列に一致する場合も含まれる。また、未確定文字列に適合する文例とは、例えば、未確定文字列を先頭から含む文例をいう。未確定文字列と文例とが完全に一致する場合も含まれるし、文例の先頭の一部分が、未確定文字列に一致する場合も含まれる。未確定文字列とは、入力された文字又は文字列が、変換部12によって変換対象とされた状態の文字又は文字列であって、かつ、入力が確定されていない文字又は文字列をいう。なお、入力された文字列と読み又は文例との比較において、ひらがな及びカタカナの相違、半角及び全角の相違、又は大文字及び小文字の相違等は、相違としては扱われなくてもよい。
該当する文例が検索された場合(S220でYes)、表示順決定部134は、検索された各文例の利用回数に基づいて、当該各文例の表示順序を決定する(S230)。例えば、表示順決定部134は、利用回数の降順に、検索された文例をソートする。
続いて、文例一覧表示部135は、決定された表示順序で、検索された文例の一覧を入力候補として表示装置106に表示させる(S240)。
図6は、第一の実施の形態における文例一覧の表示例を示す図である。図6において、入力画面510は、エディタ領域e11、e12、及びe13等の3つのエディタ領域を含む入力画面である。図6では、エディタ領域e11に対して、未確定文字列である「ふじ」が入力された状態が示されている。この場合、「ふじ」に対応する文例が、図5に示される文例辞書より検索され、文例一覧L1に含まれて表示される。文例一覧L1においては、文例辞書に記憶されている利用回数が最大である「富士山」が最上位に表示されている。
図3に戻る。検知された入力イベントが文字列確定イベントである場合(S104でYes)、イベント監視部131は、確定された文字列を、入力文字バッファ151に記憶する(S105)。文字列確定イベントとは、未確定文字列に関して、入力の確定を示すイベントをいい、未確定文字列が表示されている状態において、例えば、リターンキーの押下に応じて検知されるイベントをいう。但し、いずれのキーの押下が文字列確定イベントとなるかは、入力支援装置10を変換部12として機能させるプログラムの仕様に依存する。
なお、文字列確定イベントは、通常、文字入力イベントに続いて検知される。例えば、未確定文字列が入力された場合、文字入力イベントが検知される。当該未確定文字列が確定された場合、文字列確定イベントが検知される。また、半角文字等、当初より確定している文字が入力された場合、文字入力イベントが検知され、引き続いて文字列確定イベントが検知される。
検知された入力イベントが文例選択イベントである場合(S106でYes)、文例出力部137は、文例一覧の中から選択された文例を、入力画面において現在操作対象とされているエディタ領域に出力(又は展開)する(S107)。現在操作対象とされているエディタ領域とは、フォーカスの入っているエディタ領域をいう。なお、文例の出力に応じ、文例一覧は非表示となる。
図7は、選択された文例の出力例を示す図である。図7中、図6と同一部分には同一符号を付し、その説明は省略する。
図7では、図6において表示されていた文例一覧L1の中から、2番目の文例である「富士太郎」が選択された例が示されている。したがって、当該文例が、エディタ領域e11に出力されている。
なお、厳密には、文例出力部137は、選択された文例の出力の前に、変換部12に対して未確定文字列のキャンセルを要求する。その結果、変換部12によってエディタ領域に表示されていた未確定文字列は非表示とされる。また、未確定文字列が非表示とされることでカーソル位置は、未確定文字列が入力される前の位置に戻る。文例出力部137は、操作対象とされているエディタ領域e11のカーソル位置に、選択された文例を出力する。
続いて、イベント監視部131は、文例グループバッファ更新処理を実行する(S108)。文例グループバッファ更新処理において、文例一覧から選択された文例、すなわち、エディタ領域に出力された文例が、出力先のエディタ領域及び当該エディタ領域を含む入力画面に関連付けられて、文例グループバッファ152に記憶される。文例グループバッファ更新処理の詳細については後述される。
続いて、イベント監視部131は、既に一以上の文例グループが文例グループ情報記憶部154に記憶されているか否かを判定する(S109)。文例グループ情報記憶部154に文例グループが記憶されている場合(S109でYes)、入力支援部13は、メンバ文例表示処理を実行する(S110)。メンバ文例表示処理によって、例えば、エディタ領域e11に出力された文例と同一の文例グループを構成する他のメンバ文例の一覧が、入力候補として表示される。メンバ文例表示処理の詳細については後述される。
一方、文例グループ情報記憶部154に文例グループが記憶されていない場合(S109でNo)、メンバ文例表示処理は実行されない。
検知された入力イベントが文字列入力完了イベントである場合(S111でYes)、文例抽出部132は、入力文字バッファ151に記憶された文字列より文例を抽出する(S112)。文字列入力完了イベントとは、所定の単位の文字列の入力の完了を示すイベントをいう。本実施の形態において、文字列入力完了イベントは、改行コード又はタブコードの入力であるとする。すなわち、改行が行われるたび、又はタブが入力されるたびに、文字列入力完了イベントが発生する。但し、変換部12において、改行コードが未確定文字列の確定に割り当てられている場合、改行コードを文字列入力完了イベントとしなくてもよい。この場合、タブコードのみを文字列入力完了イベントとしてもよい。
入力文字バッファ151に記憶された文字列からの文例の抽出は、例えば、形態素解析等を用いて行われる。例えば、当該文字列の先頭又は途中からの一以上の単語を含む部分文字列が一以上抽出される。また、入力文字バッファ151に記憶された文字列の全部も一つの文例として抽出される。したがって、入力文字バッファ151に記憶された文字列が2以上の単語を含む場合、通常、複数の文例が抽出される。
続いて、文例辞書更新部136は、抽出された各文例を読みに対応付けて文例辞書に登録する(S113)。既に同一の文例が文例辞書に登録されている場合、文例辞書更新部136は、当該文例の利用回数に1を加算する。新規の文例である場合、文例辞書更新部136は、当該文例に対して、利用回数として1を登録する。また、新規の文例に対しては、他の文例と重複しない文例IDが割り当てられる。
例えば、文例辞書には、「富士太郎」という文例が登録されていない状態において、エディタ領域e11に対して「ふじ」という読みが入力されると、「富士太郎」を除く文例一覧が表示される。そのまま、未確定文字列の入力が継続され、変換部12による変換の後、「富士太郎」という文字列が確定され、例えば、タブキーが押下されると、ステップS112〜S113が実行される。その結果、「富士太郎」という文例が、文例辞書に登録される。
続いて、イベント監視部131は、入力文字バッファ151を初期化する(S114)。その結果、入力文字バッファ151が空となる。続いて、入力支援部13は、ステップS108以降を実行する。すなわち、文例グループバッファ更新処理やメンバ文例表示処理は、既存の文例が入力画面に出力されたときだけでなく、一文字ずつ入力された文字列が入力画面に入力され、当該文字列が文例として登録されたときにも実行されうる。
検知された入力イベントがメンバ文例選択イベントである場合(S115でYes)、メンバ文例出力部141は、メンバ文例一覧の中から選択されたメンバ文例を、入力画面において操作対象とされているエディタ領域に出力(又は展開)する(S116)。続いて、入力支援部13は、ステップS108以降を実行する。すなわち、文例グループバッファ更新処理やメンバ文例表示処理は、メンバ文例一覧の中から選択されたメンバ文例が入力画面に出力されたときにも実行されうる。
検知された入力イベントが、ウィンドウ切り替えイベントである場合(S117でYes)、入力支援部13は、メンバ文例再表示処理を実行する(S118)。ウィンドウ切り替えイベントとは、アクティブな入力画面が切り替えられた際に検知されるイベントである。メンバ文例再表示処理の詳細については後述される。
検知された入力イベントが、ウィンドウクローズイベントである場合(S119でYes)、入力支援部13は、文例グループ登録処理を実行する(S120)。文例グループ登録処理によって、クローズされた(閉じられた)入力画面の各エディタ領域に入力された文例又は文字列をメンバ文例とする文例グループが、文例グループ情報記憶部154に登録される。文例グループ登録処理の詳細については、後述される。
検知された入力イベントが終了イベントである場合(S121でYes)、入力支援部13のプロセスは終了する。終了イベントは、入力支援部13に対する終了指示の入力に応じて検知されるイベントである。
入力イベントが上記以外のイベントである場合(S121でNo)、入力支援部13は、必要に応じて当該イベントに応じた処理を実行する(S122)。
続いて、ステップS108の詳細について説明する。図8は、文例グループバッファ更新処理の処理手順の一例を説明するためのフローチャートである。
ステップS301において、イベント監視部131は、文例又は文字列が入力された入力画面に対応する文例グループバッファ152の有無を判定する。文例又は文字列が入力された入力画面とは、アクティブな入力画面である。
アクティブな入力画面に対応する文例グループバッファ152が無い場合(S301でNo)、イベント監視部131は、当該入力画面に対応する文例グループバッファ152を生成する(S302)。例えば、当該文例グループバッファ152に対するメモリ領域が確保され、当該メモリ領域のアドレスと、入力画面の識別子とが対応付けられて、メモリ装置103に記憶される。本実施の形態において、入力画面の識別子としては、OS14より取得可能なウィンドウの識別子(ウィンドウID)が利用される。但し、各入力画面を識別可能な情報であれば、他の識別情報が、入力画面の識別子として利用されてもよい。
続いて、イベント監視部131は、当該入力画面に入力された文例の文例IDを、当該入力画面のウィンドウIDと、当該文例の入力先のエディタ領域の識別子とに対応付けて、文例グループバッファ152に登録する。
図9は、文例グループバッファの構成例を示す図である。図9に示されるように、文例グループバッファ152は、ウィンドウID、文例ID、及びエディタIDを対応付けて記憶する。エディタIDは、エディタ領域の識別子であり、例えば、OS14より取得可能である。
また、文例ではなく、文字列が入力画面に対して入力された場合、当該文字列と一致する文例の文例IDが、文例グループバッファ152に記憶される。すなわち、入力された文字列は、文例として文例辞書に登録される。したがって、当該文字列に一致する文例の文例IDは、文例辞書より取得可能である。なお、図9に示される文例グループバッファ152の内容は、図7における入力画面510に対する入力状態に対応する。
なお、本実施の形態では、入力画面ごとに文例グループバッファ152が生成されるため、必ずしも文例グループバッファ152内にウィンドウIDが記憶されなくてもよい。但し、複数の入力画面に対して一つの文例グループバッファ152が共用されてもよい。その場合、レコードごとに、ウィンドウIDが記憶されるとよい。
一方、アクティブな入力画面のウィンドウIDに対応付けられている文例グループバッファ152が既に有る場合(S301でYes)、イベント監視部131は、アクティブな入力画面において最後に文例又は文字列が入力されたエディタ領域に対応するレコードを当該文例グループバッファ152から検索する(S305)。すなわち、当該入力画面の文例グループバッファ152において、当該エディタ領域のエディタIDを含むレコードの検索が行われる。
該当するレコードが検索された場合(S306でYes)、イベント監視部131は、当該レコードに対し、入力された文例又は文字列に対する文例Dを上書きする(S307)。例えば、既に文字列が入力されているエディタ領域に対して、文例又は文字列が再入力された場合、ステップS307が実行される。
一方、該当するレコードが検索されない場合(S306でNo)、ステップS304が実行される。
このように、入力画面のいずれかのエディタ領域に文例又は文字列が入力されるたびに、当該入力画面に対応する文例グループバッファ152には、当該文例又は文字列に対応する文例IDが記憶される。したがって、例えば、図7の入力画面510の全てのエディタ領域に文例又は文字列が入力された場合、入力画面510に対応する文例グループバッファ152の記憶内容は、図10に示されるようになる。
図10は、入力画面への文例の入力例に対応した文例グループバッファの記憶内容の例を示す図である。
図10に示される入力画面510には、エディタ領域e11、e12、e13の順に、文例IDが「1」、「2」、「5」である文例が入力された例が示されている。その結果、文例グループバッファ152には、これら各文例IDに対応付けて、入力画面510のウィンドウIDと、各エディタ領域のエディタIDが記憶されている。
なお、エディタ領域e11、e12、及びe13に対する入力は、文例一覧からの文例の選択によって行われてもよいし、文例の選択を介さずに、全ての文字が打ち込まれることにより行われてもよい。
続いて、図3のステップS120の詳細について説明する。図11は、文例グループ登録処理の処理手順の一例を説明するためのフローチャートである。
ステップS311において、文例グループ更新部138は、クローズした入力画面のウィンドウIDに対応付けられている文例グループバッファ152内の文例ID群を取得する。例えば、図10に示される文例グループバッファ152からは、「1」、「2」、及び「5」が取得される。続いて、文例グループ更新部138は、取得された文例ID群を構成する文例IDの組み合わせと完全に一致する文例IDの組み合わせを有する文例グループを文例グループ情報記憶部154より検索する(S312)。
該当する文例グループが無い場合(S313でNo)、文例グループ更新部138は、文例グループバッファ152から取得された文例IDの組み合わせを、新たな文例グループとして文例グループ情報記憶部154に登録する(S314)。
図12は、文例グループ情報記憶部の構成例を示す図である。図12において、文例グループ情報記憶部154は、いずれかの文例グループに属する文例(メンバ文例)ごとに、文例グループID、文例ID、及び入力回数を記憶する。
文例グループIDは、各文例グループを識別する識別情報である。文例グループIDは、ステップS314において新たな文例グループが登録される際に、文例グループ更新部138によって割り当てられる。したがって、同一の文例グループに属するメンバ文例の文例グループIDは、共通する。
文例IDは、メンバ文例の文例IDである。入力回数は、文例グループIDに係る文例グループが入力された回数である。すなわち、当該文例グループに属する全てのメンバ文例が、一つの入力画面において過不足無く入力された回数である。新規の文例グループが登録された際の入力回数の値は「1」である。
なお、ステップS312では、ステップS311において取得された各文例IDとのみ対応付いている同一の文例グループIDが文例グループ情報記憶部154より検索される。
一方、文例グループバッファ152から取得された文例IDの組み合わせと完全に一致する組み合わせを有する文例グループが検索された場合(S313でYes)、文例グループ更新部138は、当該文例グループに対する入力回数に1を加算する(S315)。すなわち、当該文例グループに属するメンバ文例ごとに文例グループ情報記憶部154が記憶する入力回数に1が加算される。
ステップS314又はS315に続いて、文例グループ更新部138は、クローズした入力画面に対応する文例グループバッファ152を削除又は破棄する(S316)。
以上より明らかなように、文例グループは、複数のエディタ領域を有する入力画面において同時に入力された文例の組み合わせである。換言すれば、同一の文例グループに属する各メンバ文例は、同一の入力画面における各エディタ領域に入力された実績が有ったという関係を有する。
少なくとも一つの文例グループが文例グループ情報記憶部154に登録されると、図3のステップS110が実行されるようになる。続いて、ステップS110の詳細について説明する。
図13は、メンバ文例表示処理の処理手順の一例を説明するためのフローチャートである。
ステップS321において、ウィンドウ判定部142は、ウィンドウ判定処理を実行する。ウィンドウ判定処理において、アクティブな入力画面が複数のエディタ領域を有する可能性の有無が判定される。
アクティブな入力画面は複数のエディタ領域を有すると判定された場合(S322でYes)、入力支援部13は、メンバ文例一覧表示処理を実行する(S323)。一方、アクティブな入力画面は複数のエディタ領域を有するか不明であると判定された場合(S322でNo)、メンバ文例一覧表示処理は実行されない。不明であるとは、確定できないことをいう。
続いて、ステップS321の詳細について説明する。図14は、ウィンドウ判定処理の処理手順の一例を説明するためのフローチャートである。
ステップS331において、ウィンドウ判定部142は、アクティブな入力画面のウィンドウIDに対応付いている文例グループバッファ152に記憶されている全てのエディタIDを取得する。続いて、ウィンドウ判定部142は、取得されたエディタIDの中に、現在操作対象とされているエディタ領域のエディタIDと相違するエディタIDが1以上含まれているか否かを判定する(S332)。例えば、入力画面510が、図7に示される状態において、エディタ領域e11にフォーカスが移っている場合、ステップS332では、現在操作対象とされているエディタ領域は、エディタ領域e12である。一方、この時点において、文例グループバッファ152には、図9に示される通り、エディタ領域e11のエディタIDが記憶されている。したがって、この場合、当該文例グループバッファ152から取得されたエディタIDには、現在操作対象とされているエディタ領域のエディタIDと相違するエディタIDが1以上含まれている。
取得されたエディタIDの中に、現在操作対象とされているエディタ領域のエディタIDと相違するエディタIDが1以上含まれている場合(S332でYes)、ウィンドウ判定部142は、アクティブな入力画面は複数のエディタ領域を有すると判定する(S333)。
一方、取得されたエディタIDの中に、現在操作対象とされているエディタ領域のエディタIDと相違するエディタIDが含まれていない場合(S332でNo)、ウィンドウ判定部142は、アクティブな入力画面は、複数のエディタ領域を有するかは不明である(確定でない)と判定する(S333)。
なお、第一の実施の形態において、ウィンドウ判定処理は、主に、ワープロソフトやメーラー等が表示させる入力画面のように、一つのエディタ領域に対して長文を入力させる入力画面を、メンバ文例一覧の表示対象から除外するために実行される判定処理である。したがって、同様の目的を達成可能な処理であれば、他の方法によってウィンドウ判定処理が代替されてもよい。例えば、入力画面のウィンドウタイトル名を取得し、当該ウィンドウタイトル名に、所定のアプリケーション名が含まれているか否かに基づいて、当該入力画面が複数のエディタ領域を有するか否かが判定されてもよい。
続いて、図13のステップS323の詳細について説明する。図15は、メンバ文例一覧表示処理の処理手順の一例を説明するためのフローチャートである。
ステップS341において、メンバ文例表示部140は、メンバ文例一覧を表示させる画面(以下、「メンバ文例一覧画面」という。)は、既に表示中であるか否かを判定する。メンバ文例一覧画面が表示中でない場合(S341でNo)、メンバ文例表示部140は、メンバ文例一覧画面のウィンドウを生成する(S342)。この時点では、未だメンバ文例一覧画面にはメンバ文例一覧は設定されていない。
ステップS341でYesの場合、又はステップS342に続いて、メンバ文例表示部140は、メンバ文例一覧画面を初期化する(S343)。例えば、メンバ文例一覧画面が表示中であった場合、それまでの表示内容が消去される。
続いて、メンバ文例検索部139は、アクティブな入力画面のウィンドウIDに対応付いている文例グループバッファ152に記憶されている文例IDを取得する(S344)。続いて、メンバ文例検索部139は、取得された全ての文例IDをメンバ文例の文例IDとして含み、かつ、入力回数が閾値以上である文例グループIDを、文例グループ情報記憶部154より検索する(S345)。ここで検索される文例グループIDは、取得された文例ID以外の文例IDを含む文例グループの文例グループIDであってもよい。また、複数の文例グループが該当する場合、複数の文例グループIDが検索されてよい。また、閾値による絞り込みは、必ずしも行われなくてもよい。但し、閾値による絞り込みが行われることで、複数のエディタ領域を有する一つの入力画面に同時に入力される可能性の高い文例が構成する文例グループの文例グループIDを検索することができる。
該当する文例グループIDが検索された場合(S346でYes)、メンバ文例検索部139は、検索された文例グループIDに係る文例グループに属する全てのメンバ文例の文例IDごとに、文例グループの入力回数の合計値を算出する(S347)。例えば、同一の文例IDが、複数の文例グループに属している場合もある。その場合、当該文例IDが属する複数の文例グループにおける入力回数の合計値が算出される。
続いて、メンバ文例検索部139は、入力回数の合計値の降順にメンバ文例の文例IDをソートする(S348)。続いて、メンバ文例検索部139は、当該各文例IDに対応する文例を、文例辞書より取得する(S349)。すなわち、アクティブな入力画面に入力されているメンバ文例を含むいずれかの文例グループに属するメンバ文例が取得される。
なお、ステップS347〜S349において、アクティブな入力画面に対応する文例グループバッファ152に記憶されている文例IDは、処理対象から除かれる。換言すれば、本実施の形態において、当該文例IDに係る文例は、メンバ文例一覧画面への表示対象から除外される。複数のエディタ領域を有する一つの入力画面内で、同じ文例が異なる入力領域に2度以上入力される可能性は低いと考えられるからである。但し、当該文例IDに係る文例が、メンバ文例一覧画面に表示されるようにしてもよい。
続いて、メンバ文例表示部140は、取得されたメンバ文例の一覧を、ステップS348における文例IDのソート順にメンバ文例一覧画面に設定する(S350)。続いて、メンバ文例表示部140は、アクティブな入力画面のウィンドウIDを、当該メンバ文例一覧画面の表示対象の入力画面の識別情報として、例えば、メモリ装置103に記憶する(S351)。続いて、メンバ文例表示部140は、メンバ文例一覧画面を表示装置106に表示又は再表示させる(S352)。
図16は、メンバ文例一覧画面の表示例を示す図である。図16において、入力画面520は、エディタ領域e21、e22、及びe23等の3つのエディタ領域を含む入力画面である。図16では、エディタ領域e21に対して、文例IDが「5」である文例が入力された状態が示されている。ステップS107又はステップS111において、当該文例又は当該文例に一致する文字列がエディタ領域e21に入力されることにより、図3のステップS108〜S110が実行される。すなわち、図13、図14、及び図15において説明した処理が実行される。その結果、図12に示される文例グループ情報記憶部154及び図5に示される文例辞書に基づいて、図16に示されるメンバ文例一覧画面L2が表示される。具体的には、図12における文例グループIDが「GRP001」の文例グループに属する文例のうち、エディタ領域e21に入力された文例IDが「5」の文例を除く文例が、入力候補として文例一覧画面L2に表示される。
なお、図16に示される入力画面520は、図6又は図7等に示される入力画面510とは異なる入力画面である。但し、入力支援部13は、入力画面510に対する文例又は文字列の入力に基づいて学習した内容を、入力画面520にも適用させる。文例グループは、必ずしも、入力画面の異同を区別するためのものではなく、複数のエディタ領域を有する一つの入力画面において同時に入力される可能性の高い文例同の組み合わせを判断するためのものだからである。
続いて、図3のステップS116の詳細について説明する。すなわち、例えば、図16のメンバ文例一覧画面L2において、いずれかのメンバ文例の選択に応じて実行される処理について説明する。
図17は、メンバ文例出力処理の処理手順の一例を説明するためのフローチャートである。
メンバ文例一覧画面におけるいずれかのメンバ文例の選択に応じ、メンバ文例出力部141は、当該メンバ文例一覧画面に対応付けられてメモリ装置103に記憶されているウィンドウIDを取得する(S361)。続いて、メンバ文例出力部141は、取得されたウィンドウIDに係る入力画面において、現在フォーカスが有るエディタ領域のエディタIDを、例えば、OS14より取得する(S362)。続いて、メンバ文例出力部141は、当該エディタIDに係るエディタ領域に対し、選択されたメンバ文例を出力する(S363)。
図18は、選択されたメンバ文例の出力例を示す図である。図18中、図16と同一部分には同一符号を付し、その説明は省略する。
図18では、エディタ領域e22にフォーカスが有る状態で、図16に示されるメンバ文例一覧画面L2においてメンバ文例「富士太郎」が選択された後の入力画面520及び文例一覧画面L2の表示状態が示されている。
エディタ領域e22には、選択されたメンバ文例「富士太郎」が出力されている。また、メンバ文例一覧画面L2からは、選択されたメンバ文例「富士太郎」が除去されている。選択されたメンバ文例が除去されるのは、図3のステップS116の後に、ステップS108及びステップS110が実行されるからである。すなわち、メンバ文例の選択に応じて、再度、当該メンバ文例が文例グループバッファ152に記憶され、改めてメンバ文例表示処理が実行されるからである。改めて実行されるメンバ文例表示処理では、エディタ領域e21及びe22に入力された文例は、メンバ文例一覧画面L2の表示対象から除去されるからである。
また、改めて実行されるメンバ文例表示処理では、エディタ領域e21及びe22に入力された文例は、図15のステップS346において検索される文例グループに対する絞り込み条件とされる。すなわち、文例が入力されたエディタ領域が増えれば増えるほど、メンバ文例一覧画面において表示対象とされるメンバ文例は、これまでに入力された文例に対してより関連性の強いものに絞り込まれる。
なお、メンバ文例一覧L2においてメンバ文例が選択されても、表示対象のメンバ文例が有る限り、メンバ文例一覧L2は表示されたままとなる。図18の例では、メンバ文例「フジタロウ」が表示対象として残っているため、メンバ文例一覧L2は、表示されたままとなっている。
ここで、フォーカスがエディタ領域e23に移動され、「フジタロウ」が選択されると、再び、図3のステップS116が実行される。その後、入力画面520がクローズされると、図3のステップS120が実行される。その結果、図12に示される文例グループの各メンバ文例の入力回数に1が加算される。
一方、エディタ領域e23に、文字列の入力が開始されると、メンバ文例一覧L2は非表示とされる。この場合、入力された文字に基づいて、図3のステップS103において文例一覧が表示される。文例一覧において「フジタロウ」とは別の文例が選択され、当該文例がエディタ領域e23に出力された後、入力画面520がクローズされたとする。この場合、エディタ領域e21、e23、及びe23に入力された文例を組み合わせとする新たな文例グループが、文例グループ情報記憶部154に登録される。すなわち、一部のメンバ文例の相違は、文例グループの相違として扱われる。
続いて、図3のステップS118の詳細について説明する。図19は、メンバ文例再表示処理の処理手順の一例を説明するためのフローチャートである。
アクティブな入力画面が切り替えられると、ウィンドウ判定部142は、新たにアクティブとなった入力画面に関して、ウィンドウ判定処理を実行する(S371)。なお、アクティブなウィンドウの切り替えは、これまで最前面であった入力画面が表示されたまま最前面でなくなった場合のみならず、当該入力画面がクローズしたときにも発生する。したがって、図19の処理は、図3のステップS120に続けて実行される場合もある。
アクティブな入力画面は複数のエディタ領域を有すると判定された場合(S372でYes)、入力支援部13は、図15において説明したメンバ文例一覧表示処理を実行する(S373)。この際、新たにアクティブとなった入力画面のウィンドウIDに対応付いている文例グループバッファ152に記憶されている文例IDが、文例グループの絞り込み条件として用いられ、メンバ文例一覧画面が表示される。すなわち、新たにアクティブとなった入力画面に対する入力状態に対応した文例グループに属するメンバ文例の一覧が表示される。
したがって、ユーザが、或る入力画面の一部のエディタ領域に文例等を入力した後、他の入力画面において作業を行い、再び元の入力画面で作業を開始する際に、即時的に、現在の入力状態に対応したメンバ文例一覧画面が表示される。その結果、入力画面に対する入力作業を効率化することができる。
一方、アクティブな入力画面は複数のエディタ領域を有するか不明であると判定された場合(S372でNo)、メンバ文例一覧表示処理は実行されない。
上述したように、第一の実施の形態によれば、複数のエディタ領域を有する入力画面に対する各エディタ領域に入力された文例は、文例グループのメンバ文例として関連付けられて記憶される。その後、複数のエディタ領域を有する入力画面において、いずれかのエディタ領域に、いずれかの文例グループに属するメンバ文例が入力されると、当該文例グループに属する他のメンバ文例の一覧が入力候補として表示される。ユーザは、当該入力候補の中から所望の文例を選択することで、エディタ領域への文字列の入力を行うことができる。ここで、入力フォームのように、複数のエディタ領域を有する入力画面には、氏名、住所、及び氏名の読み等、同じ文字列が入力されるエディタ領域の組み合わせが含まれる場合が多い。したがって、メンバ文例一覧画面には、ユーザが次以降に入力しようとしている文例が含まれている可能性が高い。したがって、複数の入力領域を有する画面に対する文字列の入力負担を軽減することができる。
なお、本実施の形態では、文例グループとは関係無く表示される文例の一覧画面を「文例一覧」といい、メンバ文例の一覧画面を「メンバ文例一覧画面」と記した。後者にのみ「画面」という用語が付与されているのは、両者の混同を少しでも緩和するためであり、例えば、両者を異なるウィンドウによって作成しなければならないといった、特段の制約を意味するものではない。
次に、第二の実施の形態について説明する。第二の実施の形態では、第一の実施の形態と異なる点について説明する。したがって、特に言及しない点については、第一の実施の形態と同様でよい。
図20は、第二の実施の形態における入力支援装置の機能構成例を示す図である。図20中、図2と同一部分には同一符号を付し、その説明は省略する。
図20に示されるように、第二の実施の形態において、入力支援部13は、メンバ文例表示部140及びメンバ文例出力部141を有さない。後述より明らかなように、第二の実施の形態では、メンバ文例一覧画面は表示されないからである。
以下、第二の実施の形態の入力支援装置10が実行する処理手順について説明する。図21は、第二の実施の形態において入力支援部が実行する処理手順の一例を説明するためのフローチャートである。図21中、図3と同一ステップには同一ステップ番号を付し、その説明は省略する。
図21に示されるように、第二の実施の形態では、図3におけるステップS109及びS110、並びにステップS115〜S118は実行されない。すなわち、メンバ文例一覧画面に関係する処理は実行されない。
一方、図3におけるステップS103は、図21においてステップS103aに置き換わっている。すなわち、第二の実施の形態では、文例一覧表示処理が、第一の実施の形態と異なる。
図22は、第二の実施の形態における文例一覧表示処理の処理手順の一例を説明するためのフローチャートである。図22中、図4と同一ステップには同一ステップ番号を付し、その説明は省略する。
図22では、ステップS230及びS240の間に、ステップS235が追加されている。ステップS235において、入力支援部13は、文例辞書に記憶されている利用回数に基づいてソートされた文例に関して、文例グループに基づくソート処理を実行する。すなわち、第二の実施の形態において、文例グループは、文例一覧に表示される文例のソート(整列)に利用される。
続いて、ステップS235の詳細について説明する。図23は、文例グループに基づくソート処理の処理手順の一例を説明するためのフローチャートである。
ステップS401において、ウィンドウ判定部142は、アクティブな入力画面に関して、ウィンドウ判定処理を実行する。ウィンドウ判定処理については、図14において説明した通りである。
アクティブな入力画面は複数のエディタ領域を有すると判定された場合(S402でYes)、ステップS403〜S406において、図15のステップS344〜S348と同様の処理が実行される。すなわち、アクティブな入力画面に対応する文例グループバッファ152に記憶されている文例ID群を含む文例グループに属するメンバ文例ごとに、入力回数の合計値が算出される。
ステップS406に続いて、表示順決定部134は、図22のステップS230においてソートされた各文例のうち、ステップS406において合計値が算出された文例に対して、当該合計値を付与する(S407)。合計値が算出されていない文例に対しては、0が付与される。
続いて、表示順決定部134は、付与された合計値に基づいて、ソート結果を入れ替える(S408)。すなわち、付与された合計値の降順で、文例のソートが行われる。合計値が同じ文例間では、既に行われたソート順が採用される。したがって、ステップS404において検索されたいずれかの文例グループに属するメンバ文例が上位となる。
図22のステップS240では、このようにソートされた結果で、文例一覧が表示される。
図24は、第二の実施の形態における文例一覧の表示例を示す図である。図24中、図16と同一部分には同一符号を付し、その説明は省略する。ここでは、文例辞書は図5に示される通りであり、文例グループ情報記憶部154の記憶内容は、図12に示される通りであるとする。
図24では、エディタ領域e21に文例IDが「5」である文例、又は当該文例と一致する文字列が入力された後、エディタ領域e22に対して、未確定文字列である「ふじ」が入力された状態が示されている。この場合、「ふじ」に対応する文例が、図5に示される文例辞書より検索され、検索された文例が、文例一覧L3に含まれて表示される。但し、第二の実施の形態では、エディタ領域e21に入力された文例と同じ文例グループに属する「富士太郎」及び「フジタロウ」が上位になるようにソートされる点が、図6における文例一覧L1と異なる。その結果、入力画面520において入力される可能性が高い文例が、上位に表示され、文例一覧L3の操作性が向上している。操作性の向上の一例として、所望の文例を視認し易くなっていることや、タブキー又は矢印キーで選択する文例を移動する際に、キー操作の回数が削減されること等が挙げられる。
なお、仮に、エディタ領域e21及びe23に対して住所又はカナが入力されていない状態で、エディタe22領域において「ふじ」という文字列が入力された場合、第二の実施の形態においても、図6と同様の文例一覧L1が表示される。
上述したように、第二の実施の形態においても、複数の入力領域を有する画面に対する文字列の入力負担を軽減することができる。
なお、上記各実施の形態では、入力画面510に対する入力に基づいて登録された文例グループが、入力画面520に対する入力時に利用される例を説明した。但し、入力画面510が改めて表示された際においても、当該文例グループは、有効である。
なお、本実施の形態において、文例辞書記憶部153は、文例記憶部の一例である。文例グループ情報記憶部154は、組み合わせ情報記憶部の一例である。メンバ文例検索部
139は、特定部の一例である。メンバ文例表示部140又は文例一覧表示部135は、表示部の一例である。文例検索部133は、取得部の一例である。
以上、本発明の実施例について詳述したが、本発明は斯かる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
以上の説明に関し、更に以下の項を開示する。
(付記1)
読みに対応付けて文例記憶部が記憶する文例の中で、第一の画面における複数の入力領域のそれぞれに対して入力された文例又は前記入力領域のそれぞれに対して入力された文字列に一致する文例の組み合わせを示す情報を組み合わせ情報記憶部に記憶し、
第二の画面が有する複数の入力領域のうちのいずれかの入力領域に対する文例又は文字列の入力に応じ、当該文例又は当該文字列に一致する文例、を含む前記組み合わせに属する文例を前記組み合わせ情報記憶部に基づいて特定し、
特定された文例の一覧を入力候補として表示させる処理をコンピュータに実行させる入力支援プログラム。
(付記2)
前記特定する処理は、前記第二の画面の複数の入力領域に入力された全ての文例又は全ての文字列に一致する文例、を含む前記組み合わせに属する文例を前記組み合わせ情報記憶部に基づいて特定する付記1記載の入力支援プログラム。
(付記3)
前記特定する処理は、複数の入力画面が表示されている状態において、操作対象の入力画面が切り替えられた場合に、切り替え先の入力画面が有する複数の入力領域のうちのいずれかの入力領域に対して入力されている文例又は文字列に一致する文例、を含む前記組み合わせに属する文例を前記組み合わせ情報記憶部に基づいて特定する付記1又は2記載の入力支援プログラム。
(付記4)
読みに対応付けて文例記憶部が記憶する文例の中で、第一の画面における複数の入力領域のそれぞれに対して入力された文例又は前記入力領域のそれぞれに対して入力された文字列に一致する文例の組み合わせを示す情報を組み合わせ情報記憶部に記憶し、
第二の画面が有する複数の入力領域のうちの第一の入力領域に対する文字列の入力に応じ、当該文字列に対応する文例を前記文例記憶部より取得し、
前記第二の画面が有する第二の入力領域に対して入力されている文例又は文字列に一致する文例、を含む前記組み合わせに属する文例を前記組み合わせ情報記憶部に基づいて特定し、
前記取得された文例の表示順を、当該文例が前記特定されたいずれかの文例であるか否かに基づいて決定し、
前記取得された文例を、決定された表示順によって入力候補として表示させる処理をコンピュータに実行させる入力支援プログラム。
(付記5)
読みに対応付けて文例記憶部が記憶する文例の中で、第一の画面における複数の入力領域のそれぞれに対して入力された文例又は前記入力領域のそれぞれに対して入力された文字列に一致する文例の組み合わせを示す情報を組み合わせ情報記憶部に記憶し、
第二の画面が有する複数の入力領域のうちのいずれかの入力領域に対する文例又は文字列の入力に応じ、当該文例又は当該文字列に一致する文例、を含む前記組み合わせに属する文例を前記組み合わせ情報記憶部に基づいて特定し、
特定された文例の一覧を入力候補として表示させる処理をコンピュータが実行する入力支援方法。
(付記6)
前記特定する処理は、前記第二の画面の複数の入力領域に入力された全ての文例又は全ての文字列に一致する文例、を含む前記組み合わせに属する文例を前記組み合わせ情報記憶部に基づいて特定する付記5記載の入力支援方法。
(付記7)
前記特定する処理は、複数の入力画面が表示されている状態において、操作対象の入力画面が切り替えられた場合に、切り替え先の入力画面が有する複数の入力領域のうちのいずれかの入力領域に対して入力されている文例又は文字列に一致する文例、を含む前記組み合わせに属する文例を前記組み合わせ情報記憶部に基づいて特定する付記5又は6記載の入力支援方法。
(付記8)
読みに対応付けて文例記憶部が記憶する文例の中で、第一の画面における複数の入力領域のそれぞれに対して入力された文例又は前記入力領域のそれぞれに対して入力された文字列に一致する文例の組み合わせを示す情報を組み合わせ情報記憶部に記憶し、
第二の画面が有する複数の入力領域のうちの第一の入力領域に対する文字列の入力に応じ、当該文字列に対応する文例を前記文例記憶部より取得し、
前記第二の画面が有する第二の入力領域に対して入力されている文例又は文字列に一致する文例、を含む前記組み合わせに属する文例を前記組み合わせ情報記憶部に基づいて特定し、
前記取得された文例の表示順を、当該文例が前記特定されたいずれかの文例であるか否かに基づいて決定し、
前記取得された文例を、決定された表示順によって入力候補として表示させる処理をコンピュータが実行する入力支援方法。
(付記9)
読みに対応付けて文例記憶部が記憶する文例の中で、第一の画面における複数の入力領域のそれぞれに対して入力された文例又は前記入力領域のそれぞれに対して入力された文字列に一致する文例の組み合わせを示す情報を記憶する組み合わせ情報記憶部と、
第二の画面が有する複数の入力領域のうちのいずれかの入力領域に対する文例又は文字列の入力に応じ、当該文例又は当該文字列に一致する文例、を含む前記組み合わせに属する文例を前記組み合わせ情報記憶部に基づいて特定する特定部と、
特定された文例の一覧を入力候補として表示させる表示部とを有する入力支援装置。
(付記10)
前記特定部は、前記第二の画面の複数の入力領域に入力された全ての文例又は全ての文字列に一致する文例、を含む前記組み合わせに属する文例を前記組み合わせ情報記憶部に基づいて特定する付記9記載の入力支援装置。
(付記11)
前記特定部は、複数の入力画面が表示されている状態において、操作対象の入力画面が切り替えられた場合に、切り替え先の入力画面が有する複数の入力領域のうちのいずれかの入力領域に対して入力されている文例又は文字列に一致する文例、を含む前記組み合わせに属する文例を前記組み合わせ情報記憶部に基づいて特定する付記9又は10記載の入力支援装置。
(付記12)
読みに対応付けて文例記憶部が記憶する文例の中で、第一の画面における複数の入力領域のそれぞれに対して入力された文例又は前記入力領域のそれぞれに対して入力された文字列に一致する文例の組み合わせを示す情報を記憶する組み合わせ情報記憶部と、
第二の画面が有する複数の入力領域のうちの第一の入力領域に対する文字列の入力に応じ、当該文字列に対応する文例を前記文例記憶部より取得する取得部と、
前記第二の画面が有する第二の入力領域に対して入力されている文例又は文字列に一致する文例、を含む前記組み合わせに属する文例を前記組み合わせ情報記憶部に基づいて特定する特定部と、
前記取得部によって取得された文例の表示順を、当該文例が前記特定部によって特定されたいずれかの文例であるか否かに基づいて決定する表示順決定部と、
前記取得によって取得された文例を、決定された表示順によって入力候補として表示させる表示部とを有する入力支援装置。