Ich habe einen kleinen Modus. Wenn dieser Modus aktiv ist und der Benutzer auf DEL klickt, möchte ich eine Aktion ausführen, aber nur, wenn eine Bedingung erfüllt ist. Wenn die Bedingung gilt und die Aktion ausgeführt wird, möchte ich danach nichts mehr tun . Aber wenn die Bedingung fehlschlägt, möchte ich nichts tun und lassen Sie die Standard-DEL-Aktion ausführen.Emacs Schlüssel Binding Fallback
Nicht sicher, wie ich das lösen könnte. Aber ich denke, ich es auf zwei Arten tun könnte:
1) ich die DEL-Taste, um eine Funktion in Moll rebind konnte und dann überprüfen, ob die Bedingungen nicht ot halten. Aber woher weiß ich dann, was der Standardbefehl für DEL ist?
2) Ich könnte einen Pre-Befehl Hook wie folgt hinzufügen. Führen Sie den Befehl und dann brechen Sie die Kette. Aber wie durchbrich ich die Kette?
(add-hook 'pre-command-hook
(lambda()
(when (equal last-input-event 'backspace)
;; Do something and then stop (do not execute the
;; command that backspace is bound to)
)))
In welcher Weise würden Sie es lösen? Vielen Dank!
Sind Del und Backspace gleich? – Amos