Emacs: Druckt die Schlüsselbindung für einen Befehl oder listet alle Tastenkombinationen auf


100

Wie kann ich in Emacs (GNU 23.2, * nix):

  1. die an einen bestimmten Befehl gebundenen Tastenfolgen auflisten? Wie können wir beispielsweise alle ausgeführten Schlüsselsequenzen auflisten save-buffers-kill-emacs, wobei die Ausgabe von Schlüsselsequenzen daran gebunden ist? Angenommen, wir können dies tun, sollte die Auflistung der gebundenen Schlüsselsequenzen goto-linedie Ausgabe drucken: M-g gbei einer Standardinstallation.
  2. Alle Tastenkombinationen auflisten? Tut C-h bdas? Würde es meine eigenen Bindungen drucken?

Ich bin mir bewusst, dass das direkte Ausführen des Befehls eine Tastenfolge drucken kann, mit der er aktiviert werden kann, aber dies ist nicht immer der Fall, und einige Dinge passieren, darunter:
(1) Die Ausgabe bleibt nicht lange erhalten. (2) ) Der Befehl wird ausgeführt.

Ich möchte einen Befehl , der für mich (vorzugsweise alle) die an einen bestimmten Befehl angehängten Bindungen auflistet, ohne den Befehl auszuführen, oder so ähnlich.

Antworten:


138
  1. C-h f(oder M-x describe-function) zeigt Ihnen die Bindungen für einen Befehl.

  2. Sie sind richtig, C-h b(oder M-x describe-bindings) zeigt Ihnen alle Bindungen. C-h m( M-x describe-mode) ist auch praktisch, um Bindungen nach Modus aufzulisten.

Sie können auch versuchen C-h k( M-x describe-key), um anzuzeigen, welcher Befehl an einen Schlüssel gebunden ist. Zum Beispiel ist auf meinem Computer save-buffers-kill-emacsnichts gebunden, sondern C-h k C-x C-csagt mir, dass dies C-x C-cgebunden ist save-buffers-kill-terminal. Es werden alle Bindungen für den Befehl gleichzeitig aufgelistet.


10
+1, Es gibt auch C-h c(oder M-x describe-key-briefly), das nur die Funktion angibt, der eine Taste im Minipufferraum zugewiesen ist.
Shannon Severance

Sie sind sich nicht sicher, ob dies eine separate Frage sein soll, aber ist es möglich, alle Tastenkombinationen / Funktionen anzuzeigen, die mit einer bestimmten Taste beginnen? Welche Bindungen beginnen beispielsweise mit <f2>? Das Drücken von <f2> nach "Ch m" funktioniert nicht, da Emacs auf eine zweite Taste wartet.
SabreWolfy

1
Als neue Frage hier gestellt: stackoverflow.com/questions/10330510/…
SabreWolfy

37

Wie wäre es einfach

M-x where-is <COMMAND>

Sie erhalten die gleichen Informationen wie mit C-h f.

Auch gebunden C-h w, <f1> wund <help> w.


Dies ist eigentlich die richtige Antwort auf die erste Frage, da describe-functionnicht alle Bindungen für Funktionen wie ignoreoder aufgelistet sind self-insert-command.
David Ongaro
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.