(57)【要約】【課題】  よりユーザフレンドリな、ユーザがプログラミングできるキーを提供する。【解決手段】  ユーザがプログラミングできる「対象キー」が、２つの動作モード、すなわち、プログラミングモードおよびオペレーションモードを含む。モードは、通常の時間、または長い時間、対象キーを選択することによってユーザが選択することができる。通常の時間より長い間、対象キーが選択されたことに応答して、対象キーを自動的にプログラミングすること、および／またはユーザインターフェースを提示することが可能である。対象キーは、さらに、自動的に決定される現在のコンテキストに従ってプログラミングすることが可能である。また、どの対象がどの対象キーに割り当てられているかの指示をユーザが容易に、便利に受け取ることができるようにするレジェンドキーも提供することが可能である。【選択図】  図５
2004355614.tif 000002
【特許請求の範囲】
【請求項１】
パーソナルコンピュータにおいてキーボード上のキーをプログラミングするための方法であって、
前記キーが選択されているという指示を前記キーボードから受け取るステップと、
前記指示に応答して、タイマを開始させるステップと、
前記タイマがタイムアウトになるのを過ぎて前記キーが選択されつづけているかどうかを検出するステップと、
前記タイマがタイムアウトになるのを過ぎて前記キーが選択されつづけていることに応答して、前記キーをプログラミングするステップと
を含むことを特徴とする方法。
【請求項２】
前記キーをプログラミングするステップは、現在のコンテキストに従って前記キーをプログラミングするステップを含むことを特徴とする請求項１に記載の方法。
【請求項３】
前記現在のコンテキストは、現在、開かれている、または選択されているファイルであることを特徴とする請求項２に記載の方法。
【請求項４】
前記現在のコンテキストは、現在のブラウズ先のインターネットＷｅｂページアドレスであることを特徴とする請求項２に記載の方法。
【請求項５】
前記現在のコンテキストは、現在、実行されているアプリケーションであることを特徴とする請求項２に記載の方法。
【請求項６】
前記現在のコンテキストは、現在、開かれている、または選択されているファイルフォルダであることを特徴とする請求項２に記載の方法。
【請求項７】
前記現在のコンテキストは、フォーカスされている要素であることを特徴とする請求項２に記載の方法。
【請求項８】
前記タイマがタイムアウトになるのを過ぎて前記キーが選択されつづけていることに応答して、前記現在のコンテキストを自動的に決定するステップをさらに含むことを特徴とする請求項２に記載の方法。
【請求項９】
前記キーが選択され、前記タイマがタイムアウトになるのに先立って解放されたことに応答して、前記キーに関連するアクションを実行するステップをさらに含むことを特徴とする請求項１に記載の方法。
【請求項１０】
前記タイマがタイムアウトになるのを過ぎて前記キーが選択されつづけていることに応答して、サウンドを生成するステップをさらに含むことを特徴とする請求項１に記載の方法。
【請求項１１】
前記プログラミングできるキーは、物理キーであり、前記プログラミングできるキーを選択するステップは、前記プログラミングできるキーを物理的に押し下げるステップを含むことを特徴とする請求項１に記載の方法。
【請求項１２】
前記タイマがタイムアウトになるのを過ぎて前記キーが選択されつづけていることに応答して、前記キーに割り当てられる第１の対象を提供するようにユーザに促すユーザインターフェースを生成するステップをさらに含み、前記キーをプログラミングするステップは、前記第１の対象または第２の対象に従って前記キーをプログラミングするステップを含むことを特徴とする請求項１に記載の方法。
【請求項１３】
前記第２の対象が、現在のコンテキストに従って自動的に決定されることを特徴とする請求項１２に記載の方法。
【請求項１４】
前記タイマは、前記キーが最初に選択された時点から１秒間から３秒間の範囲内でタイムアウトになることを特徴とする請求項１に記載の方法。
【請求項１５】
前記キーをプログラミングするステップは、前記タイマがタイムアウトになるのを過ぎて前記キーが解放されたことにさらに応答することを特徴とする請求項１に記載の方法。
【請求項１６】
キーが選択されたことに応答してタイマを開始させるステップと、
前記タイマがタイムアウトになるのを過ぎて前記キーが選択されつづけているかどうかを検出するステップと、
前記タイマがタイムアウトになるのを過ぎて前記キーが選択されつづけていることに応答して、前記キーをプログラミングするステップと、
前記タイマがタイムアウトになるのを過ぎて前記キーが選択されつづけていることにさらに応答して、グラフィカルユーザインターフェースを生成するステップと
を含むステップを実行するためのコンピュータ実行可能命令を有することを特徴とするコンピュータ可読媒体。
【請求項１７】
前記キーをプログラミングするステップは、現在のコンテキストに従って前記キーをプログラミングするステップを含むことを特徴とする請求項１６に記載のコンピュータ可読媒体。
【請求項１８】
前記コンピュータ実行可能命令は、前記タイマがタイムアウトになるのを過ぎて前記キーが選択されつづけていることに応答して、前記現在のコンテキストを自動的に決定するステップを実行することをさらに目的とすることを特徴とする請求項１７に記載のコンピュータ可読媒体。
【請求項１９】
前記コンピュータ実行可能命令は、前記タイマがタイムアウトになるのに先立って前記キーが解放されたことに応答して、前記キーに関連するアクションを実行するステップを実行することをさらに目的とすることを特徴とする請求項１６に記載のコンピュータ可読媒体。
【請求項２０】
前記グラフィカルユーザインターフェースは、前記キーに割り当てられる第１の対象を提供するようにユーザに促し、前記キーをプログラミングするステップは、前記第１の対象または第２の対象に従って前記キーをプログラミングするステップを含むことを特徴とする請求項１６に記載のコンピュータ可読媒体。
【請求項２１】
前記第２の対象が、現在のコンテキストに従って自動的に決定されることを特徴とする請求項１６に記載のコンピュータ可読媒体。
【請求項２２】
前記タイマは、前記キーが最初に選択された時点から１秒間から３秒間の範囲内でタイムアウトになることを特徴とする請求項１６に記載のコンピュータ可読媒体。
【請求項２３】
コンピューティング環境において複数の対象キーの対象を決定するための方法であって、
レジェンドキーが選択されていることを検出するステップと、
前記レジェンドキーが選択されていることに応答して、前記対象キーのそれぞれの割り当てられた対象を示すステップと
を含むことを特徴とする方法。
【請求項２４】
前記示すステップは、前記複数の対象キーのそれぞれの前記割り当てられた対象を同時に示すステップを含むことを特徴とする請求項２３に記載の方法。
【請求項２５】
前記示すステップは、前記対象キーのそれぞれの前記割り当てられた対象を示すグラフィカルユーザインターフェースを生成するステップを含むことを特徴とする請求項２３に記載の方法。
【請求項２６】
前記対象キーの少なくとも１つの前記示された割り当てられた対象をユーザが変更できるようにするためのユーザインターフェースを提供するステップをさらに含むことを特徴とする請求項２３に記載の方法。
【請求項２７】
ユーザがプログラミングできる複数の対象キーを含むデバイスを含むキットであって、
タイマがタイムアウトになるのを過ぎて前記対象キーの１つが選択されつづけているかどうかを検出するステップと、
前記タイマがタイムアウトになるのを過ぎて前記対象キーが選択されつづけていることに応答して、前記対象キーをプログラミングするステップと
を含むステップを実行するためのコンピュータ実行可能命令を有するコンピュータ可読媒体をさらに含むことを特徴とするキット。
【請求項２８】
レジェンドキーをさらに含み、前記コンピュータ実行可能命令は、前記レジェンドキーが選択されていることに応答して前記対象キーのそれぞれの割り当てられた対象をユーザに示すステップを実行することをさらに目的とすることを特徴とする請求項２７に記載のキット。
【請求項２９】
前記デバイスは、英数字セクションをさらに含むキーボードであることを特徴とする請求項２７に記載のキット。
【請求項３０】
前記コンピュータ可読媒体は、前記コンピュータ実行可能命令を表わすデータにキットの購入者がインターネットを介してアクセスすることが可能な遠隔メディアであることを特徴とする請求項２７に記載のキット。
【請求項３１】
前記タイマは、前記キーが最初に選択された時点から１秒間から３秒間の範囲内でタイムアウトになることを特徴とする請求項２７に記載のキット。
【請求項３２】
タイマがタイムアウトになるのを過ぎてプログラミングできるキーが選択されつづけているかどうかを検出するステップと、
前記タイマがタイムアウトになるのを過ぎて前記プログラミングできるキーが選択されつづけていることに応答して、前記プログラミングできるキーに割り当てられる対象を提供するようにユーザに促すグラフィカルユーザインターフェースを生成するステップと
を実行するためのコンピュータ実行可能命令を有することを特徴とするコンピュータ可読媒体。
【請求項３３】
前記生成するステップは、現在のコンテキストに基づいて示唆される対象を含むように前記グラフィカルユーザインターフェースを生成するステップを含むことを特徴とする請求項３２に記載のコンピュータ可読媒体。
【請求項３４】
前記コンピュータ実行可能命令は、前記示唆される対象、または前記ユーザによって提供された前記対象を前記プログラミングできるキーに割り当てるステップを実行することをさらに目的とすることを特徴とする請求項３２に記載のコンピュータ可読媒体。
【請求項３５】
パーソナルコンピュータにおいて、複数の対象キーの１つが初めて押し下げられていることを検出するステップと、
前記対象キーが初めて押し下げられていることに応答して、タイマを開始させるステップと、
ファイル、フォルダ、インターネットＷｅｂページアドレス、または実行されている、または開かれているアプリケーションの１つである対象を決定するステップと、
前記タイマがタイムアウトになるのを過ぎて前記対象キーが押し下げられつづけているかどうかを判定し、押し下げられつづけている場合、前記対象を前記対象キーに割り当てるステップと
を含むことを特徴とする方法。
【請求項３６】
前記対象は、ファイル、フォルダ、インターネットＷｅｂページアドレス、または前記対象キーが初めて押し下げられた時点でフォーカスされているアプリケーションであることを特徴とする請求項３５に記載のコンピュータ可読媒体。
【請求項３７】
前記タイマがタイムアウトになるのを過ぎて前記対象キーが押し下げられない場合、前記対象キーに既に割り当てられている対象を立ち上げるステップをさらに含むことを特徴とする請求項３５に記載のコンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の態様は、一般に、コンピュータ入力デバイスおよびその他の電子デバイスにおいてプログラミングできるショートカットを提供することを対象とし、より具体的には、そのようなショートカットを定義し、使用するための改良された技術を提供することを対象とする。
【背景技術】
【０００２】
パーソナルコンピュータのための従来のキーボードは、１組のファンクションキー（例えば、Ｆ１、Ｆ２、Ｆ３等）を有し、１組のユーザがプログラミングできるホットキーも有する。ユーザは、ホットキーを以降、押すことにより、所望のファンクションが実行されるようにホットキーに割り当てられたファンクションを設定することができる。
【発明の開示】
【発明が解決しようとする課題】
【０００３】
残念ながら、多くのユーザは、ファンクションをホットキーに割り当てることが不便であるため、また多くのユーザは、そのような機能が存在することに気付いてさえいない可能性があるため、従来のホットキーを活用していない。ホットキーには、通常、制御パネルアプレットを介してユーザによってファンクションが割り当てられる。したがって、ファンクションをそのようなホットキーに割り当てるのに、ユーザは、制御パネルアプレットを開き、次に、ウィザードまたは一連のユーザインターフェースをナビゲートしなければならない可能性がある。代替として、ユーザは、独自のデスクトップショートカットを作成することができる。どの場合も、ホットキーをプログラミングするこのやり方は時間がかかるだけでなく、ホットキーをプログラミングできることが、実質的に平均的なユーザに見えなくなる。言い換えれば、どのようにホットキーをプログラミングするかが直ちに明らかでない場合、多くのユーザは、ホットキーをプログラミングできること自体に気付きさえせず、どのようにホットキーをプログラミングするかを理解していないことは言うに及ばない。
【０００４】
さらに悪いことには、ホットキーを一度、プログラミングすると、各ホットキーにどのファンクションを割り当てたかを思い出すことが、しばしば、困難である。これは、キーボード上にいくつかのホットキーが存在する場合、特に当てはまる。通常、ホットキーのファンクションを決定するのに、ユーザは、制御パネルアプレットを開き、所望のホットキーに関する割り当てられたファンクションを閲覧しなければならない。代替として、ユーザは、ホットキーを押して、割り当てられたファンクションが実行されるようにし、割り当てられたファンクションが何であるかを知り、次に、そのファンクションが所望されない場合、そのファンクションを取り消すことができる。
【０００５】
プログラムにもユーザにもよりユーザフレンドリなユーザがプログラミングできるキーの必要性が存在することが明白である。また、プログラミングできるキーがどのファンクションに割り当てられているかを決定する便利で簡易なやり方の必要性も存在する。
【課題を解決するための手段】
【０００６】
本発明のいくつかの態様は、便利なやり方でユーザがプログラミングできる１つまたは複数の「対象キー（ｄｅｓｔｉｎａｔｉｏｎ  ｋｅｙ）」を有する、キーボードなどのデバイスを対象とする。対象キーは、次の２つの別々の動作モードを有する。すなわち、プログラミングモードおよびオペレーションモードである。ユーザは、通常の時間、または長い時間、対象キーを選択することによってモードを選択することができる。例えば、対象キーをプログラミングするのに、ユーザは、対象キーを通常よりも長い時間（例えば、１秒間ないし３秒間またはそれ以上）、押し下げたままにする、またはそれ以外の形で選択を行う必要がある。そのような長い時間、対象キーが選択されることに応答して、対象キーを自動的にプログラミングすること、および／または対象キーに割り当てられる対象を選択するようにユーザに促す（ｐｒｏｍｐｔ）ユーザインターフェースを提示することが可能である。プロンプトは、ユーザが、スクリーン上の「ＯＫ」ボタンを選択することなどによって単に同意するだけでよい現行の対象をデフォルトとして含むことが可能である。したがって、従来のホットキーより対象キーの方が、プログラミングすることがはるかに容易である。実際、対象キーのプログラミングは、カラーラジオで一般に見られるプリセットボタンをプログラミングすることと同様である。また、ユーザが、対象キーを長い時間押した際に、この機能を偶然に知ることができる可能性も高い。いずれにしても、対象キーがプログラミングされると、以降に対象キーが通常の時間（例えば、１秒間未満）、選択されることにより、割り当てられた対象にアクセスが行われることがもたらされる。対象は、ファイル、フォルダ、インターネットアドレスまたは他のネットワークロケーション、アプリケーション、またはファンクションなどの、ただし、以上には限定されないあらゆるものとすることが可能である。本発明の態様を説明するのに本明細書で使用する「キー」という用語は、例えば、物理ボタンと仮想ボタンの両方、スイッチ、ダイヤル、ホイール、スライド、およびノブを含む。１組のキーのそれぞれは、互いに物理的に別個であることも、同じ物理構造を共有することも可能である。例えば、キーは、従来の物理キーボード上の従来の物理キーまたは物理ボタンであること、または感圧型のキーパッド上の規定された領域とすることが可能である。
【０００７】
本発明のさらなる態様は、「現在のコンテキスト」に従って対象キーをプログラミングすることを対象とする。本明細書で使用する現在のコンテキストとは、対象キーが通常より長い時間、選択された時点（例えば、対象キーが最初に選択された時点）におけるデバイスおよび／またはコンピュータのユーザインターフェースの状態を指す。例えば、現在のコンテキストは、フォーカスされている（ｉｎ  ｆｏｃｕｓ）アプリケーション、背景でブラウズされているＷｅｂ（ウェブ）サイト、または開いている現在のフォルダまたはファイルとすることが可能である。対象キーを現在のコンテキストに従って自動的にプログラミングすること、および／または現在のコンテキストに従って示唆される対象がユーザに提示されて、対象キーをプログラミングするようにユーザを促すことが可能である。
【０００８】
本発明のさらなる態様は、どの対象がどの対象キーに割り当てられているかの指示をユーザが容易に、便利に受け取ることができるようにするレジェンドキー（ｌｅｇｅｎｄ  ｋｅｙ）を対象とする。例えば、ユーザは、対象キーの割り当ての一部、またはすべてがディスプレイスクリーン上に表示されるようにするキーを押すことができる。割り当てを１回に１つづつ表示することも、複数の割り当てを同時に表示することも可能である。
【０００９】
本発明の以上の概要、ならびに例示的な実施形態の以下の詳細な説明は、請求する本発明に関して例として、限定としてではなく含めている添付の図面と併せて読むことで、よりよく理解されよう。
【発明を実施するための最良の形態】
【００１０】
デジタルコンピューティング環境
図１は、本発明の様々な態様を実装するのに使用することができる従来の汎用デジタルコンピューティング環境の例の機能ブロック図である。このセクションではコンピュータについて具体的に説明しているが、以下の説明は、他のタイプの電子デバイス、特に、プロセッサを利用し、インターネットなどのネットワークに接続する電子デバイスにも適用される（ただし、以下の説明は、そのように限定されない）。そのような他のデバイスには、セルラー電話機およびパーソナルデジタルアシスタント（ＰＤＡ）が含まれるが、以上には限定されない。図１で、パーソナルコンピュータなどの例示的なコンピュータ１００が、処理ユニット１１０、システムメモリ１２０、ならびにシステムメモリから処理ユニット１１０までを含む様々なシステムコンポーネントを結合するシステムバス１３０を含む。システムバス１３０は、様々なバスアーキテクチャのいずれかを使用するメモリバスまたはメモリコントローラ、周辺バス、およびローカルバスとすることが可能である。システムメモリ１２０は、読み取り専用メモリ（ＲＯＭ）１４０およびランダムアクセスメモリ（ＲＡＭ）１５０を含む。
【００１１】
始動中などにコンピュータ１００内部の要素間で情報を転送するのを助ける基本ルーチンを含む基本入力／出力システム１６０（ＢＩＯＳ）が、ＲＯＭ１４０の中に格納されている。また、コンピュータ１００は、ハードディスク（図示せず）に対して読み取りおよび書き込みを行うためのハードディスクドライブ１７０、取外し可能な磁気ディスク１９０に対して読み取りまたは書き込みを行うための磁気ディスクドライブ１８０、およびＣＤ  ＲＯＭまたは他の光メディアなどの取外し可能な光ディスク１７７に対して読み取りまたは書き込みを行うための光ディスクドライブ１９１も含む。ハードディスクドライブ１７０、磁気ディスクドライブ１８０、および光ディスクドライブ１９１は、それぞれ、ハードディスクドライブインターフェース１９２、磁気ディスクドライブインターフェース１９３、および光ディスクドライブインターフェース１９４でシステムバス１３０に接続される。以上のドライブ、および関連するコンピュータ可読媒体により、コンピュータ可読命令、データ構造、プログラムモジュール、およびその他のデータの不揮発性ストレージがコンピュータ１００に提供される。磁気カセット、フラッシュメモリカード、デジタルビデオディスク、ベルヌーイカートリッジ、ランダムアクセスメモリ（ＲＡＭ）、読み取り専用メモリ（ＲＯＭ）などの、コンピュータによってアクセス可能なデータを格納することができる他のタイプのコンピュータ可読媒体も、例示的な動作環境において使用できることが、当分野の技術者には認められよう。
【００１２】
オペレーティングシステム１９５、１つまたは複数のアプリケーションプログラム１９６、他のプログラムモジュール１９７、およびプログラムデータ１９８を含め、いくつかのプログラムモジュールを、ハードディスクドライブ１７０、磁気ディスク１９０、光ディスク１７７、ＲＯＭ１４０、またはＲＡＭ１５０に格納することが可能である。ユーザは、キーボード１０１やポインティングデバイス１０２などの入力デバイスを介してコマンドおよび情報をコンピュータ１００に入力することができる。オペレーティングシステム１９５は、ＵＮＩＸ（登録商標）、ＬＩＮＵＸ、マイクロソフトのＷＩＮＤＯＷＳ（登録商標）ブランドのオペレーティングシステム、またはアップルのＭＡＣＩＮＴＯＳＨブランドのオペレーティングシステムなどの、ただし、以上には限定されない任意のオペレーティングシステムとすることが可能である。その他の入力デバイス（図示せず）には、マイク、ジョイスティック、ゲームパッド、サテライトディッシュ、スキャナ等を含むことが可能である。以上の入力デバイス、およびその他の入力デバイスは、しばしば、システムバス１３０に結合されたシリアルポートインターフェース１０６を介して処理ユニット１１０に接続されるが、パラレルポート、ゲームポート、ユニバーサルシリアルバス（ＵＳＢ）ＰＳ／２接続、Ｂｌｕｅｔｏｏｔｈ接続などの他のインターフェースで接続してもよい。さらに、以上のデバイスは、適切なインターフェース（図示せず）を介してシステムバス１３０に直接に結合することができる。また、スクリーン１０７、および他のタイプのディスプレイデバイスも、ビデオアダプタ１０８などのインターフェースを介してシステムバス１３０に接続される。スクリーンに加えて、コンピュータは、通常、スピーカ１８８（オーディオアダプタ１８７を介する）やプリンタなどの他の周辺出力デバイス（図示せず）も含む。例示的な実施形態では、フリーハンドの入力をデジタル式にキャプチャするために、デジタイザ１６５、および付随するペンまたはスタイラス１６６を提供することが可能である。デジタイザ１６５は、さらに、スタイラス１６６および／または人間の指、または他のポインティングデバイスの位置を検出するタッチセンシティブデバイスおよび／または近接センシティブデバイスとして動作することが可能である。ペンデジタイザ１６５とシリアルポートの間の直接接続は図示していないが、実際には、ペンデジタイザ１６５は、当技術分野で周知のとおり、パラレルポートまたは他のインターフェース、およびシステムバス１３０を介して、処理ユニット１１０に直接に結合することができる。さらに、デジタイザ１６５をスクリーン１０７から切り離して示しているが、デジタイザ１６５の使用可能な入力領域は、スクリーン１０７の表示領域と同延であることが好ましい。さらに、デジタイザ１６５は、スクリーン１０７と一体化されることも、あるいはスクリーン１０７に重ね合わされた、または別の形で付加された別個のデバイスとして存在することも可能である。
【００１３】
コンピュータ１００は、遠隔コンピュータ１０９のような１つまたは複数の遠隔コンピュータに対する論理接続を使用するネットワーク化された環境において動作することができる。遠隔コンピュータ１０９は、サーバ、ルータ、ネットワークＰＣ、ピアデバイス、または他の一般的なネットワークノードとすることが可能であり、通常、コンピュータ１００に関連して前述した要素の多く、またはすべてを含むが、メモリ記憶装置１１１だけを図１に示している。図１に描いた論理接続は、ローカルエリアネットワーク（ＬＡＮ）１１２およびワイドエリアネットワーク（ＷＡＮ）１１３を含む。そのようなネットワーキング環境は、オフィス、企業全体のコンピュータネットワーク、イントラネット、およびインターネットで一般的である。
【００１４】
ＬＡＮネットワーキング環境において使用される場合、コンピュータ１００は、ネットワークインターフェースまたはネットワークアダプタ１１４を介してローカルネットワーク１１２に接続される。ＷＡＮネットワーキング環境において使用される場合、コンピュータ１００は、通常、インターネットなどのワイドエリアネットワーク１１３を介して通信リンクを確立するためのモデム１１５または他の手段を含む。内部にあることも、外部にあることも可能なモデム１１５は、シリアルポートインターフェース１０６を介してシステムバス１３０に接続される。ネットワーク化された環境では、コンピュータ１００に関連して描いたプログラムモジュール、またはプログラムモジュールの部分は、遠隔のメモリ記憶装置１１１の中に格納することが可能である。
【００１５】
図示するネットワーク接続は例示的であり、コンピュータ間で通信リンクを確立するための他の技術も使用できることが認められよう。ＴＣＰ／ＩＰ、イーサネット（登録商標）、ＦＴＰ、ＨＴＴＰなどの様々な周知のプロトコルのいずれかの存在が想定され、システムが、クライアント−サーバ構成で動作させられて、ユーザが、ＷｅｂベースのサーバからＷｅｂページを取り出すことができるようにすることが可能である。様々な従来のＷｅｂブラウザのいずれかを使用してＷｅｂページ上のデータを表示し、操作することができる。
【００１６】
対象キー
図２を参照すると、キーボード１０１のような電子デバイスが、本明細書で「対象キー」と呼ぶ１つまたは複数のキー２０２、２０３、２０４、２０５、２０６を含んでいることが可能である。キーボード１０１は、複数の英数字キーを含む英数字セクション２０７をさらに含むことが可能である。この特定のデバイス上に５つの対象キー２０２〜２０６を示しているが、任意の数を含むことが可能である。例えば、デバイス上に３ないし５の対象キーを含めることが望ましい可能性がある。対象キー２０２〜２０６のそれぞれには、ユーザが対象キー２０２〜２０６を区別するのに役立つ印が個々にラベル付けされていることが可能である。この例では、対象キー２０２〜２０６には、それぞれ、ＡないしＥがラベル付けされている。ただし、英数字、記号、アイコン、色、および／または任意の他の印などの任意の印を使用することができる。また、対象キーは、デバイス上のどこにでも配置することができる。例示した実施形態では、対象キー２０２〜２０６は、キーボード１０１上の特定の位置に示されている。ただし、対象キー２０２〜２０６は、キーボード１０１上のどこにでも配置することができる。
【００１７】
対象キー２０２〜２０６は、対象キーとしてだけ機能する専用キーとすることが可能である。代替として、対象キー２０２〜２０６は、追加の機能を有することが可能である。例えば、対象キー２０２〜２０６は、Ｓｈｉｆｔキー、Ａｌｔキー、またはＣｔｒｌキーの１つまたは複数がそれぞれの対象キーと同時に押された場合、標準のファンクションキー（例えば、Ｆ１、Ｆ２、Ｆ３等）として動作することも可能である。
【００１８】
対象キー２０２〜２０６のそれぞれには、特定の対象を割り当てることが可能である。割り当てられた対象は、メモリの中に格納され、レジストリエントリなどにおいて、適切な対象キーに関連付けることが可能である。ユーザが通常の時間、特定の対象キーを選択した場合、選択されたショートカットキーに割り当てられた対象にユーザを誘導することが可能である（すなわち、対象を立ち上げることが可能である）。通常の時間は、一般に、従来の仕方でキーを選択する意図でそのキーを選択することが見込まれる時間量である。例えば、ユーザは、通常、例えば、１秒間未満、キーを選択するものと見込むことができる。他方、ユーザが、例えば、３秒間、キーを選択することは、ユーザがそのような長い時間、キーを選択することを明確に意図していない限り、通常、見込まれない可能性がある。どれぐらいが通常の時間と見なされるかは、対象キーが存在するデジタルコンピューティング環境に依存する可能性がある。
【００１９】
対象は、ファイル、フォルダ、インターネットアドレス、または他のネットワークロケーション、アプリケーション、またはファンクションとすることが可能であるが、以上には限定されない。例えば、対象がファイルである場合、ファイルは、ワードプロセッシングドキュメント、イメージファイル、または任意の他のタイプのファイルとすることが可能である。例えば、特定のショートカットキーに、ａｂｃ．ｄｏｃという名前の付いたワードプロセッシングドキュメントが割り当てられた場合、そのショートカットキーを通常の時間、押すことにより、コンピュータ１００がファイルａｂｃ．ｄｏｃを開くようにさせられる。また、そのタイプのファイルに関するアプリケーション（例えば、ワードプロセッシングアプリケーション）も、既に実行されているのでない場合、立ち上げられて、ファイルａｂｃ．ｄｏｃをユーザが閲覧すること、および／または編集することができるようになることが可能である。
【００２０】
対象がフォルダである場合、フォルダは、オペレーティングシステムまたはユーザによって作成されたフォルダなどの任意のフォルダまたはサブフォルダとすることが可能である。対象がインターネットアドレスである場合、インターネットアドレスは、ｗｗｗ．ｃｎｎ．ｃｏｍのようなＷｏｒｌｄ  Ｗｉｄｅ  Ｗｅｂの一部であること、またはインターネットの別の一部とすることが可能である。対象がアプリケーションである場合、アプリケーションは、特定のワードプロセッサアプリケーション、インターネットブラウザアプリケーション、またはスプレッドシートアプリケーションとすることが可能である。対象がファンクションである場合、ファンクションは、オペレーティングシステム、アプリケーション、またはユーザによって定義された任意のファンクションとすることが可能である。
【００２１】
キーボード１０１は、レジェンドキー２０１をさらに含むことが可能である。ユーザがレジェンドキー２０１を選択した場合、コンピュータ１００は、同時に、または１回に１つづつ、対象キー２０２〜２０６の一部、またはすべての現在の割り当てを表示することが可能である。
【００２２】
キーボード１０１を例として使用しているが、対象キーおよび／またはレジェンドキーは、様々な電子デバイスのどの上に配置することも可能である。例えば、図３を参照すると、マウス１０２が、１つまたは複数の専用対象キー３０１、３０２、３０３を含むことが可能である。対象キー３０１〜３０３は、マウス１０２のどこにでも配置することが可能である。一部の場合、対象キー３０１〜３０３の１つまたは複数が、専用対象キーとすることが可能であり、例えば、ユーザが対象キーを左マウスボタン３０４および／または右マウスボタン３０５と一緒に選択した場合、ファンクションキーの役割もすることが可能である。図示していないが、マウス１０２は、図２のレジェンドキー２０１のようなレジェンドキーも含むことが可能である。
【００２３】
１つまたは複数の対象キーおよび／またはレジェンドキーを有することが可能な他のデバイスの例には、デスクトップコンピュータ、ラップトップコンピュータ、パーソナルデジタルアシスタント（ＰＤＡ）、タブレットスタイルのパーソナルコンピュータ、セルラー電話機、コンピュータディスプレイ（例えば、ＣＲＴ、液晶スクリーン等）、リモートコントロール、およびコンピュータユーザインターフェースデバイス（例えば、マウス、ジョイスティック等）が含まれるが、以上には限定されない。そのようなデバイスは、図１に示した環境のようなコンピュータ環境に結合されることも、されないことも可能である。さらに、図１のようなコンピューティング環境をデバイスに組み込むことも可能である。インターネットまたは別のネットワークに対するアクセスを有するデバイスは、特に、所望される対象がインターネットアドレスまたは他のネットワークロケーションである場合、対象キーを組み込むことが特に有用なデバイスである可能性がある。
【００２４】
対象キーおよびレジェンドキーは、物理的に押し下げられ、解放される物理キーとすることが可能である。ただし、対象キーとレジェンドキーは別個の物理キーである必要はない。一部の実施形態では、対象キーおよび／またはレジェンドキーの一部またはすべては、タッチセンシティブデバイスおよび／または近接センシティブデバイス上の特定の場所として表わされ、かつ／またはアイコンまたは他のグラフィック要素の形態などでスクリーン上に表示されることで、仮想キーとすることも可能である。例えば、スクリーン１０７は、タッチセンシティブスクリーンおよび／または近接センシティブスクリーンとすることが可能である。図４に示すとおり、スクリーン１０７は、１つまたは複数の仮想対象キー４０２、４０３、４０４、４０５、４０６を表示することが可能である。スクリーン１０７は、仮想レジェンドキー４０１をさらに表示することが可能である。これらの表示された仮想キーは、例えば、タッチセンシティブスクリーン上または他のタッチセンシティブ表面上でキーに触れること、および／またはホバー（ｈｏｖｅｒ）センシティブスクリーン上または他のホバーセンシティブ表面上でキーの近くをホバリングすることによって選択することができる。また、ホバリングは、キーが物理キーであり、ホバリングを検出するように構成されている場合にも選択として検出することが可能である。表示された仮想キーは、マウス、ジョイスティック、または他の同様のカーソル制御デバイスを使用してキーの上でクリックすることによって選択することも可能である。仮想キーが表示される場合、キーは、図４に示すとおり、割り当てられた対象を示して表示することが可能である。さらなる実施形態では、仮想対象キーおよび／またはレジェンドキーは、タッチパッドまたはタッチストリップ（ｓｔｒｉｐ）がスクリーン１０７に組み込まれていない可能性さえあるが、タッチパッドまたはタッチストリップの規定された部分とすることが可能である。
【００２５】
対象キーの割り当ておよび使用
前述したとおり、対象キーは、対象キーに対象が割り当てられるということでプログラミング可能である。対象は、ユーザが対象を詳細に指定して手動で割り当てることが可能である。対象キーが割り当てられる対象は、さらに、コンピュータ１００によって半自動的に、または自動的に割り当てることも可能である。図５を参照すると、ユーザは、特定の対象キーを選択することができる（ステップ５０１）。例えば、対象キーが物理キーである場合、ユーザは、キーを押し下げ、解放することができる。以下に説明するとおり、対象キーが選択されている（押し下げられている）時間量により、選択された対象キーに対象が割り当てられるかどうか、またはユーザがあらかじめ割り当て済みの対象に行くかが決まる可能性がある。選択に応答して、キーボードまたは他のデバイスは、キーが選択されたことを示す信号を生成することができる（ステップ５０２）。例えば、信号は、特定の対象キーが押し下げられていることを示すことができる。デバイスが、コンピュータ１００に結合されたキーボード１０１のようにコンピュータに結合されている場合、信号は、そのコンピュータに転送することが可能である。
【００２６】
オプションとして、対象キーが選択された時点で、その選択された対象キーが割り当てられた対象を有するかどうかを判定することができる（ステップ５０９）。割り当てられた対象を有さない場合、ステップ５０７に関連して以下にさらに説明するとおり、対象プログラミングモードに入ることが可能である。しかし、対象キーが選択されており、その対象キーに既に対象が割り当て済みであると判定された場合、タイマを開始することが可能である（ステップ５０３）。したがって、タイマは、対象キーが最初に選択されたことに応答して開始することが可能である。タイマは、結合されたコンピュータ（例えば、コンピュータ１００）、および／または対象キーを組み込んだデバイス（例えば、キーボード１０１）によって実装することが可能である。次に、タイマがタイムアウトになること、またはタイマがタイムアウトになるのに先立ち、ユーザが選択された対象キーを解放することのどちらが先に生じるかを判定することが可能である（ステップ５０４および５０５）。タイマがタイムアウトになる前に対象キーが解放された場合、選択された対象キーに割り当てられた対象がメモリから（例えば、システムメモリ１２０から）、またはレジストリから取り出され、ユーザが対象に導かれる（ステップ５０６および５０８）。他方、初期選択の後にキーが選択されつづけ、キーが解放されるのに先立ってタイマがタイムアウトになった場合、選択された対象キーに対象を割り当て（ステップ５０７）、対象キーをプログラミングすることが可能である。対象キーには、コンピュータ１００によって対象を自動的にプログラミングすることが可能であり、あるいはコンピュータ１００が、割り当てられる対象を提供する、または変更するようにユーザに促すユーザインターフェース要素を提示することが可能である。対象が自動的に割り当てられる場合でも、コンピュータ１００は、選択された対象キーに対象が割り当てられていることをユーザに示すビジュアルキュー（ｃｕｅ）および／またはオーディオキューなどのユーザインターフェース要素を提示することが可能である。
【００２７】
対象キーがキーボード１０１の一部である場合、キーボード１０１とコンピュータ１００の間の様々な通信は、キーボードのタイプに応じて異なることが可能である。例えば、ＰＳ／２キーボードの場合、対象キーが押し下げられたことに応答して「スキャン実行（ｍａｋｅ  ｓｃａｎ）コード」を生成することが可能であり、対象キーが後に解放されたことに応答して「スキャン中断（ｂｒｅａｋ  ｓｃａｎ）コード」を生成することが可能である。したがって、スキャン実行コードに応答してタイマを開始することが可能である。タイマがタイムアウトになるのに先立ってスキャン中断コードが受け取られた場合、コンピュータ１００は、その時点に先立って対象キーが解放されたことを知る。受け取られなかった場合、対象キーは、通常の時間より長い間、押し下げられていた。ＵＳＢキーボードの場合、対象キーが押し下げられていることと、対象キーが後に解放されたことの両方に応答して、ヒューマンインターフェースデバイス（ＨＩＤ）レポートが生成される。したがって、この場合、タイマは、ＨＩＤレポートに応答して開始し、停止することが可能である。
【００２８】
したがって、ユーザは、どれだけの時間ユーザが対象キーを選択しているかに応じて、割り当てられた対象に行く（導かれる）か、さもなくば、対象キーをプログラミングすることができる。２つの動作モードを区別するのに使用されるタイムアウトの期間は、任意の期間とすることが可能である。例えば、タイムアウトは、１秒間から１．５秒間の範囲内、または１秒間から３秒間の範囲内、または１秒間から５秒間の範囲内の特定の時間量とすることが可能である。ただし、タイムアウトは、１秒間より短いこと、あるいは５秒間より長いことも可能である。
【００２９】
したがって、対象キーは、２つの別個の動作モードを有する。第１のモードでは、対象キーをプログラミングすることが可能である。この第１のモードは、対象キーの１つを選択し（例えば、押し下げ）、通常の時間より長い間、すなわち、タイマがタイムアウトになる時点を過ぎて、その対象キーを選択しつづけることによって起動することが可能である。第１のモードは、タイマがタイムアウトになるとすぐに起動すること、またはタイマがタイムアウトになるのを過ぎて対象キーが最終的に解放された時点で起動することが可能である。ただし、対象キーが、その対象キーが選択された時点で割り当てられた対象を有さない場合、第１のモードは、対象キーがどれだけの時間選択されているかに関わらず、対象キーが選択されると即時に起動することが可能である。第２のモードでは、対象キーにより、対象にアクセスが行われるようになることが可能である。第２のモードは、通常の時間範囲で、すなわち、タイマがタイムアウトになるのに先立って、対象キーの１つを押すことによって起動することが可能である。一部の実施形態では、対象キーは、キーボード上でＳｈｉｆｔキー、Ｃｔｒｌキー、Ａｌｔキー、Ｗｉｎキー、またはＡｐｐキーなどの別のキーを同時に選択することで変更することが可能である。これらの補助キーの１つまたは複数を対象キーと組み合わせて選択することにより、どの補助キーが選択されたかに応じて、対象キーに複数の対象を割り当てることができるようになることが可能である。同様に、補助キーを対象キーとともに選択することにより、その対象キーの使用によって異なる対象にアクセスできるようになることが可能である。例えば、対象キーＡにより、ｗｗｗ．ｍｉｃｒｏｓｏｆｔ．ｃｏｍを立ち上げることが可能であり、Ｓｈｉｆｔに加えた対象キーＡにより、マイクロソフトのＷＯＲＤブランドのワードプロセッシングソフトウェアを立ち上げることが可能であり、Ｃｔｒｌに加えた対象キーＡにより、ｗｗｗ．ｃｎｎ．ｃｏｍを立ち上げることが可能である。
【００３０】
ステップ５０７で、選択された対象キーを様々な形でプログラミングすることが可能である。例えば、選択された対象キーは、ユーザが与えた指定の対象に従ってプログラミングすることが可能である。あるいは、プログラミングのために対象キーが選択されたことに応答して、コンピュータ１００が、対象を示唆することが可能である。あるいは、コンピュータ１００が、選択された対象キーに対象を自動的にプログラミングすることが可能である。後者の２つの状況では、対象は、現在のコンテキストに依存する。例えば、対象キーがコンピュータ１００に関連して使用される場合、現在のコンテキストには、限定としてではなく、次の１つまたは複数が含まれる可能性がある。すなわち、どのアプリケーションが現在、実行されているか、どのドキュメントまたは他のファイルが現在、開いており、閲覧されているか、どのインターネットアドレスが現在、閲覧されているか、どのフォルダが現在、開いているか、どのウインドウ（グラフィックウインドウベースのユーザインターフェースにおける）が現在、開いているか、あるいはどのアイコンまたはファイルが現在、ハイライトされている、または別の形で選択されているか（例えば、デスクトップ上またはフォルダ内で）。例えば、特定のワードプロセッサアプリケーションが実行されており、そのワードプロセッサにおいて特定のドキュメントが開いている場合、現在のコンテキストは、実行されているワードプロセッサ、および／または開いているドキュメントである。別の例として、ユーザがＷｅｂをブラウズしており、Ｗｅｂサイトを閲覧している場合、現在のコンテキストは、実行されているブラウザアプリケーション、および／または閲覧されているＷｅｂサイトのアドレスである。さらなる例として、ユーザがファイルフォルダを開いていることが可能であり、その場合、現在のコンテキストは、開いているフォルダである。現在のコンテキストは、異なるアプリケーション、フォルダ、ファイル、インターネットサイト等が開かれ、閉じられ、変更されるにつれ、刻々と変化することが可能である。
【００３１】
現在のコンテキストの決定は、オペレーティングシステムが複数のアプリケーションを同時に実行することができ、複数のファイルおよびフォルダを同時に開くことができ、複数のインターネットサイトを同時にブラウズすることができる場合、より複雑になる。これは、アップルのＭＡＣＩＮＴＯＳＨブランドのオペレーティングシステムやマイクロソフトのＷＩＮＤＯＷＳ（登録商標）ブランドのオペレーティングシステムなどのグラフィカルユーザインターフェースベースのオペレーティングシステムにおいて一般的である。そのようなオペレーティングシステムでは、多くのオブジェクト（フォルダ、アプリケーション、ＷＩＮＤＯＷＳ（登録商標）などの）が同時に開いており、かつ／または実行されている可能性があるが、任意の一時点で、そのオブジェクトの１つだけが前景にあることも一般的である。これは、しばしば、フォーカスと呼ばれ、前景のオブジェクトがフォーカスされている。しばしば、オブジェクトがユーザによって制御されるカーソルを組み込んでいる場合、カーソルは、そのオブジェクトがフォーカスされている場合にだけユーザによる制御が可能である。フォーカスは、ユーザ、オペレーティングシステム、および／またはアプリケーションが、フォーカスされる様々なオブジェクトを選択するにつれ、刻々と変化することが可能である。
【００３２】
複数の同時のオブジェクトがユーザに用意されているコンピューティング環境において、現在のコンテキストは、どのオブジェクトがフォーカスされているかに依存する可能性がある。例えば、ドキュメントａｂｃ．ｄｏｃを実行しているワードプロセッシングアプリケーションと、Ｗｅｂサイトｗｗｗ．ｃｎｎ．ｃｏｍを表示しているインターネットブラウザアプリケーションがともにアクティブであり、ワードプロセッシングアプリケーションがフォーカスされている場合、現在のコンテキストは、１）ワードプロセッシングアプリケーション自体、２）ドキュメントａｂｃ．ｄｏｃ、または３）この両方とすることが可能である。しかし、インターネットブラウザアプリケーションがフォーカスされている場合、現在のコンテキストは、１）インターネットブラウザアプリケーション自体、２）Ｗｅｂアドレスｗｗｗ．ｃｎｎ．ｃｏｍ、または３）この両方とすることが可能である。以上のどの１つが現在のコンテキストであるかは、ユーザの要望、および／またはオペレーティングシステムおよび／または実行されているアプリケーションの設定に依存する可能性がある。したがって、フォーカスが、現在のコンテキストが何であるかの決定要因とすることが可能である。
【００３３】
特定の対象に応じて、コンピュータ１００が使用して、対象に関する情報を獲得し、その対象を対象キーに自動的に、または半自動的に割り当てることができる様々な技術が存在する。例えば、対象キーがコンピュータ１００によって自動的にプログラミングされ、インターネットブラウザがアクティブである場合、コンピュータ１００は、使用されているインターネットブラウザを検出し、現在のＷｅｂページのユニバーサルリソースロケータ（ＵＲＬ）アドレスを獲得し、そのＷｅｂページアドレスを対象キーに割り当てることができる。次に、コンピュータ１００は、選択された対象キーに関するレジストリエントリの中などに、選択された対象キーに関連するものとしてそのＵＲＬアドレス（またはその一部分）を格納することができる。対象がフォルダである場合、コンピュータは、前景のフォルダパスをオペレーティングシステムに要求することができる。これは、標準のＷｉｎ３２アプリケーションプログラムインターフェース（ＡＰＩ）コールを介して実行することができる。フォルダに関するパスが見つかった後で、選択された対象キーに関するレジストリエントリの中にそのパスを格納することができる。対象がアプリケーションである場合、コンピュータ１００は、前景のウィンドウのハンドルを獲得し、例えば、Ｗｉｎ３２ＡＰＩを使用してそのハンドルをそのアプリケーションに至る完全なパスを含むことが可能な実行可能ファイル名前に変換することができる。パスおよび実行可能ファイルは、選択された対象キーに関するレジストリエントリの中に格納することができる。対象がファイルである場合、コンピュータ１００は、前景のウインドウを獲得し、そのウインドウの関連するハンドルを決定し、そのハンドルを実行可能ファイル名に変換することができる。コンピュータ１００は、アプリケーションの前景のウインドウ内の現在の開いているファイルを取り出すことができるのに十分なだけアプリケーションについて知ることができる。例えば、一部のアプリケーションでは、タイトルバーのテキストを獲得するだけで十分である可能性がある。他のアプリケーションの場合、現在の開いているファイルを取り出すためにアプリケーションのオブジェクトモデルを調べる必要がある可能性がある。いずれにしても、ファイルのパスおよび名前が取り出されると、その情報を選択された対象キーに関するレジストリエントリの中に格納することができる。
【００３４】
例示的なステップのある順序を図５に示しているが、そのステップの他の順序も構想されることに留意されたい。例えば、ステップ５０９は、ステップ５０２を実行するのに先立って実行することが可能である。また、ステップのすべてが必須なわけではない。例えば、ステップ５０２および／または５０９を完全に迂回することができる。
【００３５】
図６を参照すると、ユーザがプログラミングのために対象キーを選択したことに応答して、コンピュータ１００は、例示的なダイアログウインドウ６００などのユーザインターフェース要素を表示することが可能である。図示したダイアログウインドウ６００は、選択された対象キー（この例では、対象キーＡ２０２）のＩＤ６０１を含む。ダイアログウインドウ６００は、ユーザが対象をタイプ入力し、かつ／またはブラウズすることを可能にするテキストボックス６０２も含む。この例では、対象は、Ｗｅｂアドレスｗｗｗ．ｃｎｎ．ｃｏｍである。選択された対象キーに割り当てられる対象がコンピュータ１００によって自動的にあらかじめ選択されている（現在のコンテキストに基づくなどして）一部の実施形態では、そのあらかじめ選択されている対象が、テキストボックス６０２に既に入力されていることが可能である。ユーザは、あらかじめ選択されている対象を受け入れること、またはそれを変更することができる。現在のコンテキストが複数の可能な対象（複数のアプリケーションまたはファイルが開いている場合などの）をポイントすることが可能なさらなる実施形態では、ダイアログウインドウ６００は、ユーザが選択を行うことができる可能な示唆される対象のリストを含むことが可能である。
【００３６】
また、ユーザがプログラミングのために対象キーを選択したこと（例えば、タイムアウトを過ぎて押し下げられたままであること）に応答して、コンピュータ１００は、例えば、スピーカ１８８を介して、サウンドが生成されるようにすることができる。サウンドは、ビープ、音楽、クリック、トーン、および／または任意の他のサウンド、またはサウンドの組合せとすることが可能である。また、サウンドは、対象キーをプログラミングするためでなく、割り当てられた対象にアクセスするために対象キーが選択された際に生成することも可能である。この後者のサウンドは、対象キーがプログラミングのために選択された際に生成されるサウンドとは異なることが可能である。対象キーに対象が実際に割り当てられた際にさらなるサウンドを生成することが可能である。これは、ユーザがタイムアウトを過ぎて対象キーを選択したことに応答して、コンピュータ１００が対象を自動的に割り当てる場合、特に望ましい可能性がある。これは、割り当てが今しがた行われたことをユーザに知らせる。様々なサウンドを、ユーザが事前定義し、かつ／または選択することが可能である。対象キーが自動的に割り当てられた際にダイアログまたは他の情報をユーザに表示することも可能である。
【００３７】
レジェンドキー
前述したとおり、レジェンドキー（例えば、レジェンドキー２０１）を、対象キーとともに提供することが可能である。レジェンドキーが選択された際、コンピュータ１００が、対象キーの現在の割り当てに関する情報をユーザに提供することが可能である。図７を参照すると、レジェンドキーが選択されたことに応答して、例示的なダイアログウインドウ７００を表示することが可能である。図示したダイアログウインドウ７００は、対象キーのそれぞれ、および対応するそれぞれの割り当てを示すリストを含む。例えば、ダイアログウインドウ７００は、対象キーＡ（例えば、対象キー２０２）が対象Ｗｅｂサイトｗｗｗ．ｃｎｎ．ｃｏｍに割り当てられ、対象キーＢ（例えば、対象キー２０３）が、対象フォルダＣ：＼ＤｏｃｕｍｅｎｔｓおよびＳｅｔｔｉｎｇｓ＼Ｍａｘ＼Ｍｙ  Ｄｏｃｕｍｅｎｔｓに割り当てられ、対象キーＣ（例えば、対象キー２０４）がマイクロソフトのＷＯＲＤ（商標）ブランドのワードプロセッシングアプリケーションの対象に割り当てられていることを示している。そのような情報は、どの対象が対象キーに割り当てられているかを忘れるユーザに役立つ可能性がある。ダイアログウインドウ７００は、対象キーの一部またはすべてに割り当てられている対象を同時に、または１回に１つづつ示すことが可能である。また、ダイアログウインドウ７００は、ユーザが制御してリストされた対象キーの１つをハイライトし、選択することができるハイライトカーソル７０１も含む。ダイアログウインドウ内で特定の対象キーがハイライトされ、選択された際に、その対象キーに関するさらなる情報を提供すること、および／またはその対象キーに関するダイアログウインドウ６００が提示されることなどにより、その対象キーに関する対象を変更する機会をユーザに与えることが可能である。さらなる実施形態では、対象キーが選択された、またはプログラミングされたことに応答して、オーディオフィードバックおよび／または触覚フィードバック（例えば、キーボード１０１またはマウス１０２の振動）などの他のタイプのフィードバックを提供することが可能である。オーディオフィードバックは、対象キーが通常の時間より長い間、押された場合に提供されるオーディオフィードバックとは異なることが可能であり、対象キーの割り当てが取り出されていることを示すのに使用することができる。
【００３８】
さらなる実施形態では、レジェンドキーを特定の対象キーと併せて使用して、その特定の対象キーに関する情報を表示することができる。例えば、ユーザが、レジェンドキーと対象キーを同時に押し下げることが可能である。これに応答して、コンピュータ１００が、その対象キーだけに関する情報を表示し、その他の対象キーに関する情報は表示しないことが可能である。
【００３９】
対象キーシステム
前述した特徴の多くを実装するため、対象キー機能を提供するようにコンピュータ１００および／または別のデバイスを構成することができる。そのような機能は、本明細書で個別にも、集合としても対象キーシステムと呼ぶソフトウェア、ハードウェア、および／またはファームウェアによって提供することが可能である。対象キーシステムは、対象キーおよび／またはレジェンドキーの機能を提供することができる。
【００４０】
対象キーシステムがソフトウェアを含む場合、ソフトウェアは、コンピュータ１００が使用される場合、コンピュータ１００上に、かつ／またはキーボード１０１のような対象キーおよび／またはレジェンドキーを組み込んだデバイス上に存在することが可能である。ソフトウェアは、タッチセンシティブスクリーンを駆動するデバイスをさらに構成して、仮想対象キーおよび／または仮想レジェンドキーを表示することが可能である。ソフトウェアは、アプリケーションの一部、オペレーティングシステムの一部、ＡＰＩとすることが可能であり、かつ／または別個のプログラムとすることが可能である。ソフトウェアは、取外し可能な記憶メディア（例えば、磁気ディスク１９０）、および／またはコンピュータ１００内部のメモリ（例えば、システムメモリ１２０）などのコンピュータ可読媒体上に実現されたコンピュータ実行可能命令として存在することが可能である。
【００４１】
対象キーシステムがハードウェアおよび／またはファームウェアを含む場合、ハードウェアおよび／またはファームウェアは、コンピュータ１００が使用される場合、コンピュータ１００上に、かつ／または対象キーおよび／またはレジェンドキーを組み込んだデバイス上（例えば、キーボード１０１上）に存在することが可能である。
【００４２】
対象キーシステムは、対象キーおよび／またはレジェンドキーを組み込んだデバイスの一部とすることが可能である。代替として、対象キーシステムは、キットとしてデバイスと組み合わせて販売してもよい。例えば、ドライバを含むことが可能であり、キーボードに接続されたコンピュータにインストールされた際、本明細書で説明するとおり対象キーを利用するようにコンピュータを構成するソフトウェアを含むコンピュータ可読媒体とともに、対象キーを組み込んだキーボードを販売することができる。購入されるキットは、デバイスとソフトウェアの両方を物理的に含むこと、またはデバイスを物理的に含むが、ソフトウェアをインターネットからダウンロードすることなどによってソフトウェアを別に獲得するようにという購入者への指示を含むことが可能である。そのような場合、オリジナルのコンピュータ可読媒体自体は、インターネットに接続されたサーバ上など、購入者から遠隔とすることが可能である。
【００４３】
本発明の様々な態様を実現する本明細書で説明した例示的なシステムおよび方法を例として示したが、もちろん、本発明は、それらの実施形態に限定されないことを理解されたい。特に以上の教示に鑑みて、当分野の技術者が変更を行うことが可能である。例えば、前述した実施形態の要素のそれぞれを独立で利用すること、またはその他の実施形態の要素と組み合わせて利用することが可能である。また、以上の説明の多くは、コンピュータ１００のようなコンピューティング環境に関連して行ったが、ＰＤＡ、セルラー電話機、および／または他の同様のデバイスなどの他のコンピューティング環境を本発明に従って使用することもできる。さらに、本発明を特許請求の範囲を使用して定義しているが、本発明は、本明細書で説明した要素およびステップを任意の組合せ、または部分的な組合せ（ｓｕｂ  ｃｏｍｂｉｎａｔｉｏｎ）で含むものとされることで、例示的である。また、本発明の真の趣旨および範囲を逸脱することなく、様々な変更を行うことができることを認識し、理解されたい。
【図面の簡単な説明】
【００４４】
【図１】本発明の態様による例示的なデジタルコンピューティング環境を示す機能ブロック図である。
【図２】本発明の態様による対象キーおよびレジェンドキーを有する例示的なキーボードを示す部分平面図である。
【図３】本発明の態様による対象キーを有する例示的なマウスを示す平面図である。
【図４】本発明の態様による対象キーを有する例示的なタッチスクリーンを示す図である。
【図５】本発明の態様による対象キーを使用するため、およびプログラミングするための方法の例示的なステップを示す流れ図である。
【図６】本発明の態様による対象キーを割り当てることに関連する例示的なグラフィカルユーザインターフェースを示すスクリーンショットである。
【図７】本発明の態様による対象キーの割り当てを表示することに関連する例示的なグラフィカルユーザインターフェースを示すスクリーンショットである。
【符号の説明】
【００４５】
１０１  キーボード
１０２  ポインティングデバイス
１０７  スクリーン
２０１  レジェンドキー
２０２、２０３、２０４、２０５、２０６、３０１、３０２、３０３  対象キー
２０７  英数字セクション
３０４、３０５  マウスボタン
４０１、４０２、４０３、４０４、４０５、４０６  仮想キー
６００、７００  ダイアログウインドウ
６０１  ＩＤ
６０２  テキストボックス
７０１  カーソル
【図１】
2004355614.tif 000003
【図２】
2004355614.tif 000004
【図３】
2004355614.tif 000005
【図４】
2004355614.tif 000006
【図５】
2004355614.tif 000007
【図６】
2004355614.tif 000008
【図７】
2004355614.tif 000009