キーボード割付

設定 >

[キーボード割付]テーブルは、Magicの内部イベントとキーストロークの対応が定義されています。

ここには、2種類の[キーボード割付]テーブルがあります。各テーブルの表示は、タブで切り替えることができます。

Magic には内部コマンドが用意されており、このようなコマンドを「Magicの内部イベント」または単に「内部イベント」と呼びます。内部イベントは低レベルのコマンドで、Magicでのみ解釈が可能です。内部イベントにはそれぞれ独自の機能が用意されており、ユーザが何らかの操作を行った場合、その操作はMagic により所定の処理を実行する内部イベントに変換されます。

例えば、[終了]イベントでは、現在の処理が終了します。また、[Magic情報]イベントでは、[バージョン情報]ダイアログが開きます。

ショートカットキーを使用して操作するユーザのため、内部イベントにキーを割当てておくと便利です。この内部イベントのキーボードへの割当には、[キーボード割付]テーブルを使用します。

Magic には多くの内部イベントが組み込まれており、それぞれ、独自の機能が割当てられています。いくつかの内部イベントはグローバルであり、Magic の全ての環境で動作します。また、いくつかの内部イベントは特定の条件でのみ有効です。特定の条件でのみ有効な内部イベントは、その条件でのみ機能することから、異なる内部イベントに同じキーを割当てることができます。キーが同じでも、条件が異なれば、実行される内部イベントも異なるからです。

内部イベントのステータス

内部イベントには、実行される条件を設定することができます。この条件をステータスといい、全てのステータスが満たされた場合にのみ内部イベントが実行されます。ステータスは、最高で4 つまで指定できます。4つのステータスは、AND 条件で動作します。ステータスに関連する状況としては、「表」と「編」の2 種類があります。

例えば、以下は2つの異なったステータスの例を示します。

「表」では、テーブルに関連する各種ステータスが有効になります。また、「編」では、項目エディタに関連する各種ステータスが有効になります。テーブル編集、項目編集のどちらも、ステータスは複数あり、現在、どのようなステータスにあるかはユーザの操作状況によって決まります。また、この複数のステータスの組み合わせによって、キーと状況が同じであっても、異なる内部イベントとして判断させることができます。

内部イベントの例

テーブル編集では、Ctrl+PageDownキーは[テーブル末尾]イベントが割当てられています。この内部イベントの実行後、テーブルデータの最後の行にカーソルが移動します。また、Ctrl+PageDown キーは、[画面末尾]イベントも割当てられていて、この内部イベントでは、現在画面に表示されているテーブルの最後の行にカーソルが移動します。ここではどちらの場合も、キーは同じCtrl+PageDown であり、状況も同じくテーブル編集です。キーと状況が同じでも違う内部イベントとして識別されるのは、ステータスが異なるためです。つまり、[テーブル末尾]イベントに定義されているステータスは[表:画面末尾]であり、この場合、画面に表示されているテーブルの最後の行にカーソルがあり、その状態でCtrl+PageDown キーが押された時に内部イベントが実行されます。一方、[画面末尾]イベントに定義されているステータスは[表:非画面末尾]です。この場合、画面に表示されているテーブルの最後の行以外の行にカーソルがあり、その状態でCtrl+PageDownキーが押ます。この2 種類のステータスは排他的なのでキーと状況が同じであっても、それぞれのステータスに対応された時に内部イベントが実行されます。

このテーブルで、内部のイベント/キー操作の割り当てを変更/削除/追加することが可能です。内部イベントの最後のキー操作割り当てを削除することはできません。新しい行を追加すると、前行の内容がコピーされます。

参照