前: Command History, 上: Command Loop
キーボードマクロは、 コマンドとみなせる入力イベントのまとまった列であり、 キーの定義から構成されます。 Lispにおけるキーボードマクロの表現は、 イベントを含んだ文字列やベクトルです。 キーボードマクロとLispマクロ(see Macros)を混同しないでください。
この関数はキーボードマクロkbdmacroをイベント列として実行する。 kbdmacroが文字列かベクトルであると、 その中のイベントをユーザーが入力した場合とまったく同様に実行する。 列は単一のキーイベントである必要はない。 通常、キーボードマクロの定義は、複数のキー列を連結したものである。
kbdmacroがシンボルであると、 kbdmacroのかわりにその関数定義を用いる。 それがさらに別のシンボルであると、この処理を繰り返す。 最終的な結果は、文字列かベクトルであること。 結果がシンボルでも文字列でもベクトルでもないと、 エラーを通知する。
引数countは繰り返し回数であり、 kbdmacroをその回数だけ実行する。 countを省略するか
nil
であると、kbdmacroを1回実行する。 countが0であると、 kbdmacroの実行をエラーに出会うか探索に失敗するまで繰り返す。
execute-kbd-macro
を使った例についてはsee Reading One Event。
この変数は、現在実行中のキーボードマクロの定義である 文字列やベクトルを保持する。 これが
nil
であると、現在実行中のマクロはない。 コマンドでこの変数を検査することで、 マクロ実行で起動されたときのふるまいを変更できる。 読者自身はこの変数に設定しないこと。
この変数は、キーボードマクロを定義中かどうかを表す。 コマンドでこの変数を検査することで、マクロ定義中のふるまいを変更できる。 コマンド
start-kbd-macro
とend-kbd-macro
がこの変数に設定する。 読者自身は設定しないこと。この変数は現在の端末に対してつねにローカルであり、 バッファに対してローカルにはならない。 see Multiple Displays。
この変数は、もっとも最近に定義されたキーボードマクロの定義である。 その値は、文字列かベクトル、あるいは、
nil
である。この変数は現在の端末に対してつねにローカルであり、 バッファに対してローカルにはならない。 see Multiple Displays。