Next: キーの照合, Previous: アクティブなキーマップの検索, Up: キーマップ [Contents][Index]
この変数はEmacsキーボード入力をコマンドにマップするデフォルトのグローバルキーマップを含む。通常はこのキーマップがグローバルキーマップである。デフォルトグローバルキーマップはself-insert-command
をすべてのプリント文字にバインドするfullキーマップである。
これはグローバルキーマップ内のバインディングを変更する通常の手段だが、この変数に開始時のキーマップ以外の値を割り当てるべきではない。
この関数はカレントのグローバルキーマップをリターンする。デフォルトグローバルキーマップとカレントグローバルキーマップのいずれも変更していなければglobal-map
と同じ値。リターン値はコピーではなく参照である。これにkeymap-set
などの関数を使用すると、グローバルバインディングが変更されるだろう。
(current-global-map) ⇒ (keymap [set-mark-command beginning-of-line … delete-backward-char])
この関数はカレントバッファーのローカルキーマップをリターンする。ローカルキーマップがなければnil
をリターンする。以下の例では、(Lisp
Interactionモードを使用する)*scratch*バッファーにたいするキーマップは、ESC(ASCIIコード27)にたいするエントリーが別のsparseキーマップであるようなsparseキーマップである。
(current-local-map) ⇒ (keymap (10 . eval-print-last-sexp) (9 . lisp-indent-line) (127 . backward-delete-char-untabify)
(27 keymap (24 . eval-defun) (17 . indent-sexp)))
current-local-map
はローカルキーマップのコピーではなく参照をリターンします。これにkeymap-set
などの関数を使用するとローカルバインディングが変更されるでしょう。
この関数はカレントで有効なメジャーモードのキーマップリストをリターンする。
この関数はkeymapを新たなカレントグローバルキーマップにする。これはnil
をリターンする。
グローバルキーマップの変更は異例である。
この関数はkeymapをカレントバッファーの新たなローカルキーマップにする。keymapがnil
なら、そのバッファーはローカルキーマップをもたない。use-local-map
はnil
をリターンする。ほとんどのメジャーモードコマンドはこの関数を使用する。
この変数はアクティブかどうかに関わらず、特定の変数の値にたいするキーマップを示すalistである。要素は以下のようになる:
(variable . keymap)
キーマップkeymapは
variableが非nil
値をもつときはアクティブである。variableは通常はメジャーモードを有効か無効にする変数である。キーマップとマイナーモードを参照のこと。
minor-mode-map-alist
の要素がminor-mode-alist
の要素と異なる構造をもつことに注意。マップは要素のCDRでなければならず、そうでなければ2つ目の要素にマップリストは用いられないだろう。CDRはキーマップ(リスト)、または関数定義がキーマップであるようなシンボルである。
1つ以上のマイナーモードキーマップがアクティブなとき、minor-mode-map-alist
内で前のキーマップが優先される。しかし互いが干渉しないようにマイナーモードをデザインすること。これを正しく行えば順序は問題にならない。
マイナーモードについての詳細な情報は、キーマップとマイナーモードを参照のこと。minor-mode-key-binding
(キー照合のための関数を参照)も確認されたい。
この変数はメジャーモードによる特定のマイナーモードにたいするキーバインディングのオーバーライドを可能にする。このalistの要素はminor-mode-map-alist
の要素のような(variable
. keymap)
という形式である。
ある変数がminor-mode-overriding-map-alist
の要素として出現するなら、その要素によって指定されるマップはminor-mode-map-alist
内の同じ変数にたいして指定されるすべてのマップを完全に置き換える。
すべてのバッファーにおいてminor-mode-overriding-map-alist
は自動的にバッファーローカルである。
この変数が非nil
ならバッファーのローカルキーマップ、テキストプロパティまたはoverlayによるキーマップ、マイナーモードキーマップのかわりに使用されるするキーマップを保持する。このキーマップが指定されると、カレントグローバルキーマップ以外のアクティブだった他のすべてのマップがオーバーライドされる。
この変数が非nil
ならoverriding-local-map
、バッファーのローカルキーマップ、テキストプロパティまたはoverlayによるキーマップ、およびすべてのマイナーモードキーマップのかわりに使用されるキーマップを保持する。
この変数はカレント端末にたいして常にローカルでありバッファーローカルにできない。複数の端末を参照のこと。これはインクリメンタル検索モードの実装に使用される。
この変数が非nil
なら、overriding-local-map
とoverriding-terminal-local-map
の値がメニューバーの表示に影響し得る。デフォルト値はnil
なので、これらのマップ変数なメニューバーに影響をもたない。
これら2つのマップ変数は、たとえこれらの変数がメニューバー表示に影響し得るを与えない場合でも、メニューバーを使用してエンターされたキーシーケンスの実行には影響を与えることに注意。したがってもしメニューバーキーシーケンスが到着したら、そのキーシーケンスをルックアップして実行する前に変数をクリアーすること。この変数を使用するモードは通常は何らかの手段でこれを行っている。これらのモードは通常は“読み戻し(unread)”とexitによって処理されないイベントに応答する。
この変数はスペシャルイベントにたいするキーマップを保持する。あるイベント型がこのキーマップ内でバインディングをもつなら、それはスペシャルイベントであり、そのイベントにたいするバインディングはread-event
によって直接実行される。スペシャルイベントを参照のこと。
この変数はエミュレーションモードにたいして使用するキーマップのalistのリストを保持する。この変数は複数マイナーモードキーマップを使用するモードとパッケージを意図している。リストの各要素はminor-mode-map-alist
と同じフォーマットと意味をもつキーマップのalistか、そのようなalist形式の変数バインディングをもつシンボルである。それぞれのalist内のアクティブなキーマップはminor-mode-map-alist
とminor-mode-overriding-map-alist
の前に使用される。
この関数は一時的(transient)なキーマップとしてkeymapを追加する。一時的なキーマップは1つ以上の後続するキーにたいして、他のキーマップより優先される。
keymapは通常は直後のキーをルックアップするために1回だけ使用される。しかし、オプション引数keep-predがt
なら、そのマップはユーザーがkeymap内で定義されたキーをタイプするまでアクティブのままとなる。keymap内にないキーをユーザーがタイプしたとき一時的キーマップは非アクティブとなり、そのキーにたいして通常のキールックアップが継続される。
keep-predには関数も指定できる。この場合にはkeymapがアクティブの間は、各コマンドの実行に優先してその関数が引数なしで呼び出される。keymapがアクティブの間、関数は非nil
をリターンすること。
オプション引数on-exitが非nil
なら、それはkeymapが非アクティブになった後に引数なしで呼び出される関数を指定する。
オプション引数messageには一時的なマップをアクティブ化後に表示するメッセージを指定する。messageが文字列ならメッセージ用のフォーマット文字列であり、文字列中のすべての‘%k’指定子は一時的マップのキーのリストに置き換えられる。messageの値としては、それ以外の非nil
値はデフォルトのメッセージフォーマット‘Repeat
with %k’を意味する。
オプション引数timeoutが非nil
なら、それはkeymapを非アクティブにするまでに待機するアイドル時間を秒数で指定する数値であること。変数set-transient-map-timeout
の値が非nil
なら、この引数の値をオーバーライドする。
この関数は他のすべてのアクティブなキーマップに優先される変数overriding-terminal-local-map
にたいして、keymapを追加または削除することによって機能する(アクティブなキーマップの検索を参照)。