回答:
「describe-last-function」に関して:
last-command
最後に行ったことを表す記号に設定された変数があります。したがって、このelispスニペット(describe-function last-command)
は、すぐに起こったことのドキュメントを表示するはずです。
あなたは些細な作業作ることができるようにdescribe-last-function
そうように
(defun describe-last-function()
(interactive)
(describe-function last-command))
そのelisp .emacs
または同等のものを入れると、Mx describe-last-functionが作成されます。
興味のあることから、いくつかのキーを叩いたり、最後のコマンドを変更したことをしたりした場合は、そのcommand-history
機能が興味深いかもしれません。Mx command-historyでそれを取得できます
繰り返し機能はrepeat.el
、標準のEmacsディストリビューションに含まれているEmacs Lispパッケージによって提供されます。repeat.el
のドキュメントから:
このパッケージは、前のコマンドを、その引数を含めて、何であれ、繰り返すコマンドを定義します。このコマンドはキーCx zに接続されています。前のコマンドを1回繰り返すには、Cx zと入力します。直後にもう一度繰り返すには、zと入力します。zを何度も入力すると、コマンドを何度も繰り返すことができます。
repeatコマンドに関する追加情報を表示するには、C-h F repeat RETEmacs内から入力します。
C-xz
一度押すと、z その後だけを押すだけで繰り返されます(C-xもう一度押す必要はありません )。
はい、繰り返しコマンドがあります。それはrepeat
:
repeat-complex-command
キーバインディングから入手可能な、誰も言及されていない少し衝撃的なものC-x ESC ESC。
C-x M-:
(ニーモニック:のようですM-:
が、elisp式が既に入力されています)。
repeat.el
(これを包含するC-x z z z...
)によって提供される可能性は、2番目に近いものです。最後にヒットしたキーストロークについて2番目の質問が尋ねられた場合、最良の答えはC-h l
(view-lossage
)です。describe-last-command
コマンドにはIMHOの使用はほとんどありません。
C-x M-:
便利なキーボードマクロの一部として使用することもできます。デフォルトのrepeat-complex-command
バインディングは、何度も入力するのが少し面倒です。
また、M-x view-lossage
最後に入力した100(?)キーストロークを示します。そのため、コマンドの場所を確認できます。それは私がちょうど今まで使用するM-x command-history
つもりであると思うところを私が今見つけるまで使用したものC-h w
です。
これも役に立つかもしれません... emacs Helpから逐語的に:
C-x M-ESC runs the command repeat-complex-command
which is an interactive compiled Lisp function in `simple.el'.
It is bound to <again>, <redo>, C-x M-:, C-x M-ESC.
(repeat-complex-command ARG)
Edit and re-evaluate last complex command, or ARGth from last.
A complex command is one which used the minibuffer.
The command is placed in the minibuffer as a Lisp form for editing.
The result is executed, repeating the command as changed.
If the command has been changed or is not the most recent previous command
it is added to the front of the command history.
You can use the minibuffer history commands M-n and M-p
to get different commands to edit and resubmit.
個人的に私はセバスチャンのアイデアが役に立ったと思いました。これは実際のバージョンです
(global-set-key "\C-r" #'(lambda () (interactive)
(eval (car command-history))))
isearch
とisearch-backward
は重要なナビゲーションコマンドであり、後者はデフォルトで<kbd> Cr </ kbd>にバインドされていることを考えると、おそらくrepeatコマンドのより適切なバインドを見つけることができます。Macでは、コマンド(super)-Yをお勧めします。これは、一部のアプリでは、これを「元に戻す」の反対として使用するための慣例があるためです。
(repeat)
およびCx Mz(repeat-complex-command)
。もご覧ください(repeat-matching-complex-command)
。