1

私は他の投稿を検索しましたが、役に立ちませんでした。

を使用すると、マクロを名前(DDタグの削除の場合はddd)に定義し、 ...npC-xC-kn NameOfMacroで自由に再利用できます。M-x ddd

次に、別のバッファーで.emacsを開き、それにM-x insert-kbd-macro RET ddd RETラムダコードを挿入するために使用します。正常に動作します。

またC-xC-kb、Emacsのマニュアルに示されているように、これを1つの番号に割り当てていましたC-xC-kb4(「d」は4番目の文字であるため、4を選択しました)。その後、で自由に再利用できC-xC-k4ます。

.emacsバッファに戻りM-x insert-kbd-macro、単一の数値「4」を指定すると、「一致なし」エラーが発生します。C-xC-k4.emacsバッファでマクロを実際に使用できるので奇妙です。insert-kbd-macroマクロという名前の1桁の数字を保存するのは間違ったコマンドだと推測しました。

しかし、マニュアルの21.5の終わりには、次のように書かれています。

insert-kbd-macro数値引数を指定すると、マクロ名にバインドしたキー(存在する場合)を記録するための追加のLispコードが作成されるため、ファイルをロードしたときにマクロに同じキーが再割り当てされます。」

理解できない...

ああ、アンガス...あなたの知恵をお願いします。応答してくれたすべての人に感謝します。

PS私の質問は次の最後の投稿だと思います:
Emacsのinitファイルでキーボードマクロを生成するにはどうすればよいですか?

4

2 に答える 2

1

あなたは「...数値引数を与える」という指示を誤解しています。

インタラクティブに、それは数値プレフィックス引数を使用することを意味します。したがって、これらのいずれかで十分です。

  • C-u8RETM-x insert-kbd-macro RET
  • M-1M-x insert-kbd-macro RET
  • C-9M-x insert-kbd-macro RET

マクロ名として番号を入力しようとしたため、一致するものが見つかりませんでした(マクロ名はddd)。

于 2012-05-30T01:24:17.303 に答える
0

kmacro-name-last-macro(Cx Ck n)は、最後のマクロに名前を割り当てることに注意してください。

次に、insert-kbd-macroは、指定された名前のマクロをバッファーに挿入します。

互換性がないのは、最後のマクロを(名前ではなく)キーにバインドするkmacro-bind-to-key(Cx Ck b)です

于 2012-05-30T01:25:04.767 に答える