(57)【要約】【課題】範囲選択すべき文字列が複数行に跨っている場合でも自然な選択操作によって範囲選択を行う。【解決手段】本テキスト範囲選択処理方法は、ポインティングデバイスによるドラッグ操作によってテキストの範囲選択を行う場合における方法であって、テキストを表示する第1表示枠内において当該テキストの範囲選択中に、ポインティングデバイスのカーソルの位置からの文字数又は距離に従って、当該カーソルの属する行における行頭及び行末のうち当該カーソルの位置から近い方を最寄り行端として特定する工程と、最寄り行端とは反対側の行頭又は行末であって、カーソルの属する行の後方の行における行頭又は前方の行における行末から所定長の文字列を選択予測テキストとして抽出する工程と、選択予測テキストを表示する第2表示枠を、当該選択予測テキストについてドラッグ操作による範囲選択が可能な態様で最寄り行端の近傍に表示させる工程とを含む。【選択図】図１
2010152500.tif 000002
【特許請求の範囲】
【請求項１】
表示部に表示されたテキストに対して、ポインティングデバイスによるドラッグ操作によって、当該テキストの範囲選択を行うためのプログラムであって、
前記テキストを表示する第１表示枠内において当該テキストの範囲選択中に、前記ポインティングデバイスのカーソルの位置からの文字数又は距離に従って、当該カーソルの属する行における行頭及び行末のうち当該カーソルの位置から近い方を最寄り行端として特定する行端特定ステップと、
前記最寄り行端とは反対側の行頭又は行末であって、前記カーソルの属する行の後方の行における行頭又は前方の行における行末から所定長の文字列を選択予測テキストとして抽出する選択予測テキスト抽出ステップと、
前記選択予測テキストを表示する第２表示枠を、当該選択予測テキストについて前記ドラッグ操作による範囲選択が可能な態様で前記最寄り行端の近傍に表示させる選択予測テキスト表示ステップと、
をコンピュータに実行させるためのプログラム。
【請求項２】
前記第１表示枠内において前記最寄り行端まで範囲選択がなされ且つ前記第２表示枠内において前記選択予測テキストの少なくとも一部について範囲選択がなされた場合、前記選択予測テキストの選択範囲における終端位置を特定するステップと、
特定した前記終端位置と前記最寄り行端の位置とから当該終端位置に対応する、前記テキスト中の文字位置を算出するステップと、
算出した前記文字位置を、前記テキストの範囲選択に係る選択終点として設定するステップと、
をさらに実行させる請求項１記載のプログラム。
【請求項３】
前記行端特定ステップの後に、前記カーソルの位置から前記最寄り行端までの文字数又は距離が予め定められた表示開始判断閾値以下であるか判断するステップ
をさらに実行させ、
前記カーソルの位置から前記最寄り行端までの文字数又は距離が前記表示開始判断閾値以下であると判断された場合に、前記選択予測テキスト抽出ステップ以降の処理を実施する
ことを特徴とする請求項１又は２記載のプログラム。
【請求項４】
前記第２表示枠を表示した後、前記カーソルから前記最寄り行端までの文字数又は距離が予め定められた表示終了判断閾値以上になったか判断するステップと、
前記カーソルから前記最寄り行端までの文字数又は距離が前記表示終了判断閾値以上になったと判断された場合、前記第２表示枠を消去するステップと、
をさらに実行させる請求項１乃至３のいずれか１つ記載のプログラム。
【請求項５】
表示部に表示されたテキストに対して、ポインティングデバイスによるドラッグ操作によって、当該テキストの範囲選択を行う場合におけるテキスト範囲選択処理方法であって、
前記テキストを表示する第１表示枠内において当該テキストの範囲選択中に、前記ポインティングデバイスのカーソルの位置からの文字数又は距離に従って、当該カーソルの属する行における行頭及び行末のうち当該カーソルの位置から近い方を最寄り行端として特定するステップと、
前記最寄り行端とは反対側の行頭又は行末であって、前記カーソルの属する行の後方の行における行頭又は前方の行における行末から所定長の文字列を選択予測テキストとして抽出するステップと、
前記選択予測テキストを表示する第２表示枠を、当該選択予測テキストについて前記ドラッグ操作による範囲選択が可能な態様で前記最寄り行端の近傍に表示させるステップと、
を含み、コンピュータにより実行されるテキスト範囲選択処理方法。
【請求項６】
表示部に表示されたテキストに対して、ポインティングデバイスによるドラッグ操作によって、当該テキストの範囲選択を行うテキスト範囲選択処理装置であって、
前記テキストを表示する第１表示枠内において当該テキストの範囲選択中に、前記ポインティングデバイスのカーソルの位置からの文字数又は距離に従って、当該カーソルの属する行における行頭及び行末のうち当該カーソルの位置から近い方を最寄り行端として特定する手段と、
前記最寄り行端とは反対側の行頭又は行末であって、前記カーソルの属する行の後方の行における行頭又は前方の行における行末から所定長の文字列を選択予測テキストとして抽出する手段と、
前記選択予測テキストを表示する第２表示枠を、当該選択予測テキストについて前記ドラッグ操作による範囲選択が可能な態様で前記最寄り行端の近傍に表示させる手段と、
を有するテキスト範囲選択処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本技術は、テキストの範囲選択を行うための技術に関し、より詳しくはポインティングデバイスのドラッグ操作による範囲選択を支援するための技術に関する。
【背景技術】
【０００２】
従来、ユーザが計算機上でテキストの編集を行う際、例えばマウスやペンなどのポインティングデバイスのドラッグ操作によってテキストの範囲選択を行う場合がある。具体的には、例えばマウスの場合には、選択始点で左ボタンを押し、左ボタンを押したままの状態でカーソルを移動させ、選択終点で左ボタンを離すことにより、テキストの範囲選択を行う。
【０００３】
また、例えば図１２（ａ）に示すような複数行に跨る範囲選択を行う場合、一般的には、図１２（ｂ）に示すように、ポインティングデバイスを選択始点から選択終点に向けて移動させて範囲選択を行っている。
【特許文献１】特開平９−１０１９５３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記のような操作では、一方の行端（図１２（ｂ）では行末）付近から反対側の行端（図１２（ｂ）では行頭）付近までポインティングデバイスを移動させなければならず、移動距離が選択範囲の幅よりも大幅に長くなる場合がある。そのため、選択範囲が１行に収まっている場合に比べ、選択操作が不自然になるという問題があった。
【０００５】
従って、本技術の目的は、範囲選択すべき文字列が複数行に跨っている場合においても、自然な選択操作によって範囲選択を行うことができるようにするための技術を提供することである。
【課題を解決するための手段】
【０００６】
本テキスト範囲選択処理方法は、表示部に表示されたテキストに対して、ポインティングデバイスによるドラッグ操作によって、当該テキストの範囲選択を行う場合におけるテキスト範囲選択処理方法であって、テキストを表示する第１表示枠内において当該テキストの範囲選択中に、ポインティングデバイスのカーソルの位置からの文字数又は距離に従って、当該カーソルの属する行における行頭及び行末のうち当該カーソルの位置から近い方を最寄り行端として特定するステップと、最寄り行端とは反対側の行頭又は行末であって、カーソルの属する行の後方の行における行頭又は前方の行における行末から所定長の文字列を選択予測テキストとして抽出するステップと、選択予測テキストを表示する第２表示枠を、当該選択予測テキストについてドラッグ操作による範囲選択が可能な態様で最寄り行端の近傍に表示させるステップとを含む。
【発明の効果】
【０００７】
範囲選択すべき文字列が複数行に跨っている場合でも、自然な選択操作によって範囲選択を行うことが可能になる。
【発明を実施するための最良の形態】
【０００８】
まず、図１及び図２を用いて、本技術の実施の形態の概要を説明する。本技術の実施の形態では、ポインティングデバイスのドラッグ操作による範囲選択中に、ポインティングデバイスのカーソルの属する行における行頭及び行末のうち当該カーソルの位置から近い方を最寄り行端として特定する。そして、行頭が最寄り行端として特定された場合には、前方の行における行末から所定長の文字列を選択予測テキストとして抽出し、行末が最寄り行端として特定された場合には、後方の行における行頭から所定長の文字列を選択予測テキストとして抽出する。そして、選択予測テキストについても範囲選択が可能な態様で選択予測テキスト表示枠を最寄り行端の近傍に表示する。
【０００９】
図１に、行末が最寄り行端として特定された場合の一例を示す。図１の例では、メインテキスト表示枠１０１の右側に選択予測テキスト表示枠１０２が表示されている。また、図１の例では、選択予測テキスト表示枠１０２には、カーソルの属する行の１つ下の行における行頭から抽出された文字列が選択予測テキストとして表示されている。
【００１０】
また、図２に、行頭が最寄り行端として特定された場合の一例を示す。図２の例では、メインテキスト表示枠２０１の左側に選択予測テキスト表示枠２０２が表示されている。また、図２の例では、選択予測テキスト表示枠２０２には、カーソルの属する行の１つ上の行における行末から抽出された文字列が選択予測テキストとして表示されている。
【００１１】
そして、本技術の実施の形態では、例えば「コンピュータ」という文字列を範囲選択する場合には、図１に示すように、メインテキスト表示枠１０１内の選択始点１０１１から選択予測テキスト表示枠１０２内の選択終点１０２１までドラッグするという操作を行う。これにより、ポインティングデバイスの移動距離が選択範囲の幅より大幅に長くなるようなことはなく、自然な選択操作によって範囲選択が可能になる。以下、本技術の一実施の形態に係るテキスト範囲選択処理装置の処理について説明する。
【００１２】
図３に本技術の一実施の形態に係るテキスト範囲選択処理装置の機能ブロック図を示す。テキスト範囲選択処理装置は、オペレーティング・システム（ＯＳ：Operating System）１と、当該ＯＳ１上で実行されるアプリケーション・プログラム３とを含む。なお、図示していないが、ＯＳ１は、ポインティングデバイスに関するイベント（例えば、マウスクリック、カーソルの移動、ドラッグ開始又は終了など）を検出し、当該イベントを通知するためのメッセージをテキストアプリケーション・プログラム３に出力する等の機能を備えている。当該機能については、従来と変わらないため、これ以上述べない。
【００１３】
ＯＳ１は、テキストの範囲選択に関する基本的な処理を実施するテキスト範囲選択モジュール１１を含む。具体的には、テキスト範囲選択モジュール１１は、ドラッグ開始位置を範囲選択に係る選択始点として記憶したり、カーソルの移動に応じて現在のカーソルの位置を範囲選択に係る選択終点として記憶したり、選択始点から選択終点までの文字列を反転表示したりする等の処理を実施する。なお、テキストの範囲選択に関する処理は、従来の処理と変わらないため、これ以上述べない。
【００１４】
アプリケーション・プログラム３は、選択予測テキスト生成部３１と、選択予測テキスト表示部３３と、位置特定部３５と、位置変換部３７と、選択終点設定部３９とを含む。選択予測テキスト生成部３１は、ＯＳ１からポインティングデバイスに関するイベントのメッセージを受信し、現在のカーソルの属する行における行頭又は行末を最寄り行端として特定したり、メインテキスト（すなわち、メインテキスト表示枠内に表示されているテキスト）から所定長の文字列を選択予測テキストとして抽出したり、現在のカーソルが選択予測テキスト表示枠内にある場合にはその旨を位置特定部３５に通知したりする等の処理を実施する。選択予測テキスト表示部３３は、選択予測テキスト生成部３１により抽出された選択予測テキストを含む選択予測テキスト表示枠を最寄り行端の近傍に表示する。位置特定部３５は、選択予測テキスト生成部３１からの通知に応じて、選択予測テキスト中における、現在のカーソルの指す位置を特定する。位置変換部３７は、位置特定部３５により特定された位置に対応する、メインテキスト中の文字位置を算出する。選択終点設定部３９は、位置変換部３７により算出された文字位置を範囲選択に係る選択終点として設定する。
【００１５】
次に、図４乃至図１０を用いて、図３に示したテキスト範囲選択処理装置の処理内容を説明する。まず、ＯＳ１が、ドラッグ操作に関するイベント（例えば、ドラッグの開始やカーソルの移動、ドラッグの終了など）を検出する（図４：ステップＳ１）。そして、ＯＳ１は、現在のカーソルの位置を取得し、一旦記憶装置に格納する（ステップＳ３）。そして、ＯＳ１は、検出したイベントを通知するためのメッセージ（現在のカーソルの位置情報を含む）をアプリケーション・プログラム３に出力する。
【００１６】
そして、アプリケーション・プログラム３の選択予測テキスト生成部３１は、ＯＳ１から、現在のカーソルの位置情報を含むメッセージを受信し、現在のカーソルがメインテキスト表示枠内にあるか否か判断する（ステップＳ５）。例えば、ＯＳ１の提供するライブラリなどを利用すれば、メインテキスト表示枠の座標を取得することができる。現在のカーソルがメインテキスト表示枠内になければ（ステップＳ５：Ｎｏルート）、端子Ｃを介してステップＳ２９（図９）の処理に移行する。
【００１７】
一方、現在のカーソルがメインテキスト表示枠内にあると判断された場合（ステップＳ５：Ｙｅｓルート）、選択予測テキスト生成部３１は、現在のカーソルの属する行における行頭及び行末のうち、現在のカーソルの位置から近い方を最寄り行端として特定する（ステップＳ７）。例えば、文字数が少ない方を最寄り行端として特定してもよいし、距離が近い方を最寄り行端として特定してもよい。なお、フォントや文字サイズによって、各文字の文字幅がすべて同一とは限らないため、文字数より距離を判断基準とする方が好ましい。また、例えばメインテキスト中に改行コードが挿入されている場合には、メインテキスト表示枠の右端が行末となるのではなく、改行コードの位置が行末となる。
【００１８】
そして、選択予測テキスト生成部３１は、選択予測テキスト表示枠が既に表示されているか判断する（ステップＳ９）。選択予測テキスト表示枠が既に表示されている場合（ステップＳ９：Ｙｅｓルート）、端子Ｂを介してステップＳ２１（図５）の処理に移行する。一方、選択予測テキスト表示枠が表示されていなければ（ステップＳ９：Ｎｏルート）、端子Ａを介してステップＳ１１（図５）の処理に移行する。
【００１９】
図５の説明に移行して、端子Ａの後、選択予測テキスト生成部３１は、選択予測テキスト表示枠の表示開始条件を満たしたか判断する（図５：ステップＳ１１）。例えば、現在のカーソル位置が最寄り行端に、ある程度近づいたときに選択予測テキスト表示枠を表示させたいという場合には、現在のカーソルの位置から最寄り行端までの文字数又は距離が表示開始判断閾値以下であることという条件を表示開始条件として設定しておけばよい。この場合、図６及び図７に示すように、最寄り行端までの文字数又は距離が表示開始判断閾値を上回っている場合（図６）は、選択予測テキスト表示枠の表示を開始せず、最寄り行端までの文字数又は距離が表示開始判断閾値以下になった場合（図７）に、選択予測テキスト表示枠の表示を開始する。なお、ドラッグ操作中は常に選択予測テキスト表示枠を表示させたい場合には、ステップＳ１において検出したイベントがドラッグ開始であることという条件を表示開始条件として設定しておけばよい。また、その他の条件を表示開始条件として設定してもよい。
【００２０】
選択予測テキスト表示枠の表示開始条件を満たしていないと判断された場合（ステップＳ１１：Ｎｏルート）、以下で説明するステップＳ１３及びステップＳ１５の処理をスキップし、ステップＳ１７の処理に移行する。
【００２１】
一方、選択予測テキスト表示枠の表示開始条件を満たしたと判断された場合（ステップＳ１１：Ｙｅｓルート）、選択予測テキスト生成部３１は、最寄り行端とは反対側の行頭又は行末であって、現在のカーソルの属する行の１つ下の行における行頭又は１つ上の行における行末から一定文字数の文字列を選択予測テキストとして抽出する（ステップＳ１３）。具体的には、行末が最寄り行端として特定されている場合には、現在のカーソルの属する行の１つ下の行における行頭から一定文字数の文字列を選択予測テキストとして抽出する。一方、行頭が最寄り行端として特定されている場合には、現在のカーソルの属する行の１つ上の行における行末から一定文字数の文字列を選択予測テキストとして抽出する。なお、一定文字数とは、予め決められた文字数でもよいし、１行の長さの一定割合の文字数でもよい。また、選択予測テキスト表示枠に収まる文字数でもよい。さらに、場合に応じていずれかを選択するようにしてもよい。そして、選択予測テキスト生成部３１は、抽出した選択予測テキストを含む表示開始指示を選択予測テキスト表示部３３に出力する。
【００２２】
そして、選択予測テキスト表示部３３は、選択予測テキスト生成部３１からの表示開始指示を受信し、最寄り行端の近傍に選択予測テキスト表示枠を表示する（ステップＳ１５）。例えば、ＯＳ１の提供するライブラリなどを利用して選択予測テキスト表示枠を表示する。なお、選択予測テキストの長さが選択予測テキスト表示枠の幅より長い場合には、選択予測テキスト表示枠の幅で折り返して、選択予測テキストを複数行で表示する。また、例えば選択予測テキスト中に改行コードが含まれていたとしても、当該改行コードの位置で改行する必要はなく、改行位置に改行マークを表示すればよい。選択予測テキスト表示部３３は、選択予測テキスト表示枠がいずれの行端に対応して表示されたものであるかを特定するための情報として、最寄り行端の位置を記憶装置に格納しておく。
【００２３】
なお、範囲選択中にカーソルがメインテキスト表示枠から選択予測テキスト表示枠に移ってきた場合には、選択予測テキスト表示枠がアクティブ状態となり、選択予測テキスト表示枠において選択予測テキストの範囲選択が可能となる。このような技術については、通常のウィンドウの技術を用いることで実現可能である。
【００２４】
その後、ＯＳ１のテキスト範囲選択モジュール１１は、記憶装置に格納されているカーソルの位置を選択終点として設定する（ステップＳ１７）。そして、テキスト範囲選択モジュール１１は、メインテキスト表示枠について、上で述べたような範囲選択に関する処理を実施する（ステップＳ１９）。例えば、メインテキスト表示枠について、範囲選択されている文字列を反転表示するなどの処理を実施する。そして、処理を終了する。
【００２５】
次に、ステップＳ９（図４）において選択予測テキスト表示枠が既に表示されていると判断され、端子Ｂを介して図５に移行してきた場合の処理を説明する。図５において、端子Ｂの後、選択予測テキスト生成部３１は、選択予測テキスト表示枠の表示終了条件を満たしたか判断する（ステップＳ２１）。例えば、カーソルの位置が最寄り行端から遠ざかったら選択予測テキスト表示枠を非表示にしたいという場合には、現在のカーソルの位置から最寄り行端までの文字数又は距離が表示終了判断閾値以上であることという条件を表示終了条件として設定しておけばよい。なお、表示終了判断閾値は、表示開始判断閾値と同じ値でもよいし、表示開始判断閾値とは異なる値でもよい。また、ドラッグ終了時に選択予測テキスト表示枠を非表示にしたいという場合には、ステップＳ１において検出したイベントがドラッグ終了であることという条件を表示終了条件として設定しておけばよい。
【００２６】
選択予測テキスト表示枠の表示終了条件を満たしたと判断された場合（ステップＳ２１：Ｙｅｓルート）、選択予測テキスト生成部３１は、表示終了指示を選択予測テキスト表示部３３に出力する。そして、選択予測テキスト表示部３３は、選択予測テキスト生成部３１からの表示終了指示を受信すると、選択予測テキスト表示枠を消去する（ステップＳ２３）。そして、ステップＳ１７の処理に移行してステップＳ１７及びステップＳ１９の処理を実施し、その後、処理を終了する。
【００２７】
一方、選択予測テキスト表示枠の表示終了条件を満たしていないと判断された場合（ステップＳ２１：Ｎｏルート）、選択予測テキスト生成部３１は、ステップＳ７（図４）において特定された最寄り行端が、現在表示中の選択予測テキスト表示枠を表示した時点における最寄り行端と同一であるか判断する（ステップＳ２５）。特定された最寄り行端が、現在表示中の選択予測テキスト表示枠を表示した時点における最寄り行端と同一であると判断された場合（ステップＳ２５：Ｙｅｓルート）、ステップＳ１７の処理に移行してステップＳ１７及びステップＳ１９の処理を実施し、その後、処理を終了する。
【００２８】
一方、特定された最寄り行端が、現在表示中の選択予測テキスト表示枠を表示した時点における最寄り行端と同一ではないと判断された場合（ステップＳ２５：Ｎｏルート）、選択予測テキスト生成部３１は、表示終了指示を選択予測テキスト表示部３３に出力する。そして、選択予測テキスト表示部３３は、選択予測テキスト生成部３１からの表示終了指示を受信すると、選択予測テキスト表示枠を一旦消去する（ステップＳ２７）。そして、ステップＳ１３の処理に移行してステップＳ１３乃至ステップＳ１９の処理を実施し、その後、処理を終了する。
【００２９】
例えば、範囲選択中にカーソルの位置が図７に示した位置から図８に示す位置まで移動すると、移動前と移動後とで最寄り行端の位置が変わってくる。このように最寄り行端の位置が変わった場合には、ステップＳ２７、ステップＳ１３及びステップＳ１５の処理を実施することにより、移動前に表示されていた選択予測テキスト表示枠を一旦消去し、新たな選択予測テキスト表示枠を移動後の最寄り行端の近傍に表示することができる。
【００３０】
図９の説明に移行して、端子Ｃの後、選択予測テキスト生成部３１は、現在のカーソルが選択予測テキスト表示枠内にあるか判断する（図９：ステップＳ２９）。現在のカーソルが選択予測テキスト表示枠内になければ（ステップＳ２９：Ｎｏルート）、端子Ｄを介してステップＳ１７の処理に移行してステップＳ１７及びステップＳ１９の処理を実施し、その後、処理を終了する。
【００３１】
一方、現在のカーソルが選択予測テキスト表示枠内にあると判断された場合（ステップＳ２９：Ｙｅｓルート）、選択予測テキスト生成部３１は、現在のカーソルの位置情報を位置特定部３５に出力する。
【００３２】
そして、位置特定部３５は、選択予測テキスト生成部３１から現在のカーソルの位置情報を受信し、現在のカーソルの位置情報に基づき、選択予測テキストの選択範囲における終端位置を特定する（ステップＳ３１）。具体的には、行末が最寄り行端の場合には、現在のカーソルが選択予測テキストの先頭から何文字目の文字を指しているのか特定し、行頭が最寄り行端の場合には、現在のカーソルが選択予測テキストの末尾から何文字目の文字を指しているのか特定する。例えばカーソルの位置が図１０に示す位置にある場合には、先頭から２文字目の位置が終端位置として特定される。そして、位置特定部３５は、終端位置の情報を位置変換部３７に出力する。ここでは、ｓ文字目の位置が終端位置として特定されたものとして以下説明する。
【００３３】
そして、位置変換部３７は、位置特定部３５から終端位置の情報を受信し、最寄り行端の位置と終端位置とに基づき、当該終端位置に対応する、メインテキスト中の文字位置ｕを算出する（ステップＳ３３）。具体的には、行末が最寄り行端の場合、当該行末の文字をメインテキスト中の（ｔ−１）文字目の文字とし、選択予測テキストの先頭の文字をメインテキスト中のｔ文字目の文字とすると、ｕ＝ｔ＋ｓ−１で文字位置ｕを算出することができる。一方、行頭が最寄り行端の場合、行頭の文字をメインテキスト中の（ｔ＋１）文字目の文字とし、選択予測テキストの末尾の文字をメインテキスト中のｔ文字目の文字とすると、ｕ＝ｔ−ｓ＋１で文字位置ｕを算出することができる。そして、位置変換部３７は、算出した文字位置ｕを選択終点設定部３９に出力する。
【００３４】
そして、選択終点設定部３９は、位置変換部３７から文字位置ｕを受信し、当該文字位置ｕを選択終点に設定する（ステップＳ３５）。そして、端子Ｅを介してステップＳ１９の処理に移行してステップＳ１９の処理を実施し、その後、処理を終了する。
【００３５】
以上のような処理を実施することにより、範囲選択すべき文字列が複数行に跨っている場合であっても、図１に示したようなドラッグ操作によって範囲選択を行うことが可能になる。すなわち、ポインティングデバイスの移動距離が選択範囲の幅より大幅に長くなるようなことはなく、自然な選択操作によって範囲選択を行うことが可能になる。
【００３６】
以上本技術の一実施の形態を説明したが、本技術はこれに限定されるものではない。例えば、上で説明したテキスト範囲選択処理装置の機能ブロック図は必ずしも実際のプログラムモジュール構成に対応するものではない。例えば、上で説明した選択予測テキスト生成部３１と選択予測テキスト表示部３３と位置特定部３５と位置変換部３７と選択終点設定部３９との処理をＯＳ１の機能として実装することも可能である。
【００３７】
また、上では、行末方向へのドラッグ操作を例に説明したが、行頭方向へのドラッグ操作の場合にも適用可能である。
【００３８】
また、上では、テキストが横書きの場合を例に説明したが、テキストが縦書きの場合にも適用可能である。なお、テキストが縦書きの場合には、選択予測テキスト表示枠をメインテキスト表示枠の上方又は下方に表示するようにすればよい。
【００３９】
また、例えば図１では、選択予測テキスト表示枠１０２をメインテキスト表示枠１０１と連結して表示するようになっているが、必ずしも連結して表示しなければならないわけではない。例えば図１１に示すようにメインテキスト表示枠１１０１から一定間隔離して選択予測テキスト表示枠１１０２を表示するようにしてもよい。例えば、メインテキストについて複数行に渡って範囲選択する際、メインテキスト表示枠１０１１の枠沿いを縦方向にドラッグするような操作を行う場合がある。メインテキスト表示枠１１０１と選択予測テキスト表示枠１１０２とを一定間隔離しておけば、上記のような操作と、選択予測テキストを範囲選択する操作とを区別できるようになる。
【００４０】
また、上では、現在のカーソルの位置から最寄り行端までの文字数又は距離に応じて、選択予測テキスト表示枠の表示／非表示を行う例を説明したが、ドラッグ操作とは別に、なんらかのボタンを押下することにより、選択予測テキスト表示枠の表示／非表示を切り替えるような仕組みを採用することも可能である。なお、選択予測テキスト表示枠を最寄り行端の近傍に常に表示しておいてもよい。
【００４１】
また、上では、ドラッグ操作の方向については考慮していなかったが、ドラッグ操作の方向を考慮して選択予測テキストを表示するか否かを判断するようにしてもよい。例えば、行末方向へのドラッグ操作については、行末が最寄り行端として特定された場合のみ、選択予測テキスト表示枠を表示するような構成を採用することも可能である。
【００４２】
以上本実施の形態をまとめると以下のようになる。
【００４３】
本テキスト範囲選択処理方法は、表示部に表示されたテキストに対して、ポインティングデバイスによるドラッグ操作によって、当該テキストの範囲選択を行う場合におけるテキスト範囲選択処理方法であって、テキストを表示する第１表示枠内において当該テキストの範囲選択中に、ポインティングデバイスのカーソルの位置からの文字数又は距離に従って、当該カーソルの属する行における行頭及び行末のうち当該カーソルの位置から近い方を最寄り行端として特定する行端特定ステップと、最寄り行端とは反対側の行頭又は行末であって、カーソルの属する行の後方の行における行頭又は前方の行における行末から所定長の文字列を選択予測テキストとして抽出する選択予測テキスト抽出ステップと、選択予測テキストを表示する第２表示枠を、当該選択予測テキストについてドラッグ操作による範囲選択が可能な態様で最寄り行端の近傍に表示させる選択予測テキスト表示ステップとを含む。
【００４４】
このようにすれば、例えば最寄り行端とは反対側の行端付近に選択終点があったとしても、当該反対側の行端付近における文字列が選択予測テキストとして最寄り行端の近傍に範囲選択可能な態様で表示されるので、ポインティングデバイスを反対側の行端付近まで移動させなくとも範囲選択できるようになる。すなわち、ポインティングデバイスの移動距離が選択範囲の幅より大幅に長くなるようなことはなく、自然な選択操作によって範囲選択を行うことが可能になる。
【００４５】
また、第１表示枠内において最寄り行端まで範囲選択がなされ且つ第２表示枠内において選択予測テキストの少なくとも一部について範囲選択がなされた場合、選択予測テキストの選択範囲における末尾位置を特定するステップと、特定した末尾位置と最寄り行端の位置とから当該末尾位置に対応する、テキスト中の文字位置を算出するステップと、算出した文字位置を、テキストの範囲選択に係る選択終点として設定するステップとをさらに含むようにしてもよい。このようにすれば、第２表示枠内において範囲選択された部分を、第１表示枠に反映できる。
【００４６】
さらに、上で述べた行端特定ステップの後に、カーソルの位置から最寄り行端までの文字数又は距離が予め定められた表示開始判断閾値以下であるか判断するステップをさらに含むようにしてもよい。そして、カーソルの位置から最寄り行端までの文字数又は距離が表示開始判断閾値以下であると判断された場合に、上で述べた選択予測テキスト抽出ステップ以降の処理を実施するようにしてもよい。また、第２表示枠を表示した後、カーソルから最寄り行端までの文字数又は距離が予め定められた表示終了判断閾値以上になったか判断するステップと、カーソルから最寄り行端までの文字数又は距離が表示終了判断閾値以上になったと判断された場合、第２表示枠を消去するステップとをさらに含むようにしてもよい。このようにすれば、例えばカーソルの位置が最寄り行端に近づいた場合には第２表示枠を表示し、カーソルの位置が最寄り行端から離れた場合には第２表示枠を非表示とすることができる。
【００４７】
さらに、上で述べた選択予測テキスト表示ステップにおいて、第１表示枠から一定間隔離して第２表示枠を表示させるようにしてもよい。このように第１表示枠から一定間隔離して第２表示枠を表示することで、第１表示枠に対する所定の操作と、第２表示枠に対するドラッグ操作とを適切に区別でき、第１表示枠に対する操作性を損なうことはない。
【００４８】
なお、テキスト範囲選択処理装置をハードウェアと共に実現するためのプログラムを作成することができ、当該プログラムは、例えばフレキシブルディスク、ＣＤ−ＲＯＭ、光磁気ディスク、半導体メモリ、ハードディスク等の記憶媒体又は記憶装置に格納される。尚、中間的な処理結果はメインメモリ等の記憶装置に一時保管される。
【００４９】
なお、テキスト範囲選択処理装置は、図１３に示すように、メモリ２５０１（記憶部）とＣＰＵ２５０３（処理部）とハードディスク・ドライブ（ＨＤＤ）２５０５と表示装置２５０９に接続される表示制御部２５０７とリムーバブル・ディスク２５１１用のドライブ装置２５１３と入力装置２５１５とネットワークに接続するための通信制御部２５１７とがバス２５１９で接続されている。ＯＳ及びＷｅｂブラウザを含むアプリケーション・プログラムは、ＨＤＤ２５０５に格納されており、ＣＰＵ２５０３により実行される際にはＨＤＤ２５０５からメモリ２５０１に読み出される。必要に応じてＣＰＵ２５０３は、表示制御部２５０７、通信制御部２５１７、ドライブ装置２５１３を制御して、必要な動作を行わせる。また、処理途中のデータについては、メモリ２５０１に格納され、必要があればＨＤＤ２５０５に格納される。このようなコンピュータは、上で述べたＣＰＵ２５０３、メモリ２５０１などのハードウエアとＯＳ及び必要なアプリケーション・プログラムとが有機的に協働することにより、上で述べたような各種機能を実現する。
【００５０】
以上の実施例を含む実施形態に関し、さらに以下の付記を開示する。
【００５１】
（付記１）
表示部に表示されたテキストに対して、ポインティングデバイスによるドラッグ操作によって、当該テキストの範囲選択を行うためのプログラムであって、
前記テキストを表示する第１表示枠内において当該テキストの範囲選択中に、前記ポインティングデバイスのカーソルの位置からの文字数又は距離に従って、当該カーソルの属する行における行頭及び行末のうち当該カーソルの位置から近い方を最寄り行端として特定する行端特定ステップと、
前記最寄り行端とは反対側の行頭又は行末であって、前記カーソルの属する行の後方の行における行頭又は前方の行における行末から所定長の文字列を選択予測テキストとして抽出する選択予測テキスト抽出ステップと、
前記選択予測テキストを表示する第２表示枠を、当該選択予測テキストについて前記ドラッグ操作による範囲選択が可能な態様で前記最寄り行端の近傍に表示させる選択予測テキスト表示ステップと、
をコンピュータに実行させるためのプログラム。
【００５２】
（付記２）
前記第１表示枠内において前記最寄り行端まで範囲選択がなされ且つ前記第２表示枠内において前記選択予測テキストの少なくとも一部について範囲選択がなされた場合、前記選択予測テキストの選択範囲における終端位置を特定するステップと、
特定した前記終端位置と前記最寄り行端の位置とから当該終端位置に対応する、前記テキスト中の文字位置を算出するステップと、
算出した前記文字位置を、前記テキストの範囲選択に係る選択終点として設定するステップと、
をさらに実行させる付記１記載のプログラム。
【００５３】
（付記３）
前記行端特定ステップの後に、前記カーソルの位置から前記最寄り行端までの文字数又は距離が予め定められた表示開始判断閾値以下であるか判断するステップ
をさらに実行させ、
前記カーソルの位置から前記最寄り行端までの文字数又は距離が前記表示開始判断閾値以下であると判断された場合に、前記選択予測テキスト抽出ステップ以降の処理を実施する
ことを特徴とする付記１又は２記載のプログラム。
【００５４】
（付記４）
前記第２表示枠を表示した後、前記カーソルから前記最寄り行端までの文字数又は距離が予め定められた表示終了判断閾値以上になったか判断するステップと、
前記カーソルから前記最寄り行端までの文字数又は距離が前記表示終了判断閾値以上になったと判断された場合、前記第２表示枠を消去するステップと、
をさらに実行させる付記１乃至３のいずれか１つ記載のプログラム。
【００５５】
（付記５）
前記選択予測テキスト表示ステップにおいて、前記第１表示枠から一定間隔離して前記第２表示枠を表示させる
ことを特徴とする付記１乃至４のいずれか１つ記載のプログラム。
【００５６】
（付記６）
表示部に表示されたテキストに対して、ポインティングデバイスによるドラッグ操作によって、当該テキストの範囲選択を行う場合におけるテキスト範囲選択処理方法であって、
前記テキストを表示する第１表示枠内において当該テキストの範囲選択中に、前記ポインティングデバイスのカーソルの位置からの文字数又は距離に従って、当該カーソルの属する行における行頭及び行末のうち当該カーソルの位置から近い方を最寄り行端として特定するステップと、
前記最寄り行端とは反対側の行頭又は行末であって、前記カーソルの属する行の後方の行における行頭又は前方の行における行末から所定長の文字列を選択予測テキストとして抽出するステップと、
前記選択予測テキストを表示する第２表示枠を、当該選択予測テキストについて前記ドラッグ操作による範囲選択が可能な態様で前記最寄り行端の近傍に表示させるステップと、
を含み、コンピュータにより実行されるテキスト範囲選択処理方法。
【００５７】
（付記７）
表示部に表示されたテキストに対して、ポインティングデバイスによるドラッグ操作によって、当該テキストの範囲選択を行うテキスト範囲選択処理装置であって、
前記テキストを表示する第１表示枠内において当該テキストの範囲選択中に、前記ポインティングデバイスのカーソルの位置からの文字数又は距離に従って、当該カーソルの属する行における行頭及び行末のうち当該カーソルの位置から近い方を最寄り行端として特定する手段と、
前記最寄り行端とは反対側の行頭又は行末であって、前記カーソルの属する行の後方の行における行頭又は前方の行における行末から所定長の文字列を選択予測テキストとして抽出する手段と、
前記選択予測テキストを表示する第２表示枠を、当該選択予測テキストについて前記ドラッグ操作による範囲選択が可能な態様で前記最寄り行端の近傍に表示させる手段と、
を有するテキスト範囲選択処理装置。
【図面の簡単な説明】
【００５８】
【図１】選択予測テキスト表示枠の表示例を示す図である。
【図２】選択予測テキスト表示枠の表示例を示す図である。
【図３】テキスト範囲選択処理装置の機能ブロック図である。
【図４】テキスト範囲選択処理装置の処理フロー（第１の部分）を示す図である。
【図５】テキスト範囲選択処理装置の処理フロー（第２の部分）を示す図である。
【図６】最寄り行端までの文字数又は距離が表示開始判断閾値を上回っている場合の表示例を示す図である。
【図７】最寄り行端までの文字数又は距離が表示開始判断閾値以下になった場合の表示例を示す図である。
【図８】最寄り行端の位置が変わった場合の表示例を示す図である。
【図９】テキスト範囲選択処理装置の処理フロー（第３の部分）を示す図である。
【図１０】選択予測テキストについて範囲選択がなされた場合の表示例を示す図である。
【図１１】選択予測テキスト表示枠の表示例を示す図である。
【図１２】（ａ）及び（ｂ）は、従来の範囲選択を示す図である。
【図１３】コンピュータの機能ブロック図である。
【符号の説明】
【００５９】
１  オペレーティング・システム    ３  アプリケーション・プログラム
１１  テキスト範囲選択モジュール    ３１  選択予測テキスト生成部
３３  選択予測テキスト表示部    ３５  位置特定部
３７  位置変換部    ３９  選択終点設定部
【図１】
2010152500.tif 000003
【図２】
2010152500.tif 000004
【図３】
2010152500.tif 000005
【図４】
2010152500.tif 000006
【図５】
2010152500.tif 000007
【図６】
2010152500.tif 000008
【図７】
2010152500.tif 000009
【図８】
2010152500.tif 000010
【図９】
2010152500.tif 000011
【図１０】
2010152500.tif 000012
【図１１】
2010152500.tif 000013
【図１２】
2010152500.tif 000014
【図１３】
2010152500.tif 000015