次: , 前: Basic Kbd Macro, 上: Keyboard Macros


28.3.2 キーボードマクロの命名と保存

新たにつぎのキーボードマクロを定義したあとでも 現在のキーボードマクロを使いたいなら、 M-x name-last-kbd-macroでキーボードマクロに名前を 付けておく必要があります。 このコマンドは、ミニバッファで名前を読み取り、 その名前でキーボードマクロを実行できるように定義します。 マクロ名はLispシンボルであり、このように定義されているので、 M-xで呼び出したりglobal-set-key (see Keymaps)でキーに対応付けたりできる有効なコマンド名になります。 その名前にキーボードマクロ以外のものがすでに定義されていると、 エラーメッセージが表示され何の変更も起こりません。

キーボードマクロにコマンド名を付けると、その定義をファイルに保存できます。 そうすると、別の編集セッションで使えるようになります。 まず、定義を保存したいファイルを訪問してから、 つぎのコマンドを使ってください。

     M-x insert-kbd-macro <RET> macroname <RET>

このコマンドは、実行するとそのキーボードマクロと 同じ動作を行うLispコードをバッファに挿入します。 (insert-kbd-macroがLispコードの生成を代行するので、 Lispコードを理解する必要はない。) そうしたら、このファイルを保存します。 load-file(see Lisp Libraries)でファイルをロードできます。 保存するファイルとして~/.emacs(see Init File)を使えば、 Emacsを起動するとつねにそのマクロが定義されます。

insert-kbd-macroに数引数を指定すると、 さらに(もしあれば)キーボードマクロに割り当てたキーを 記録するLispコードが追加されるので、 ファイルをロードしたときに同じキーがマクロに割り当てられます。