Angenommen, ich habe einen magical-mode
Hauptmodus mit dem Namen heruntergeladen und er hat eine eigene magische Tastaturbelegung mit dem Namen magical-mode-map
. Dieser Modus bietet auch einen Hook, magical-mode-hook
der jedes Mal ausgeführt magical-mode
wird, wenn er zum Hauptmodus eines Puffers wird. Jetzt möchte ich meine Init-Datei so ändern, dass einige benutzerdefinierte Tastenkombinationen hinzugefügt werden, die in diesem Modus verwendet werden.
Es scheint (mindestens) zwei Möglichkeiten zu geben, benutzerdefinierte Tastaturbelegungen für einzurichten magical-mode
. Das, was ich am häufigsten sehe, ist folgendes:
(defun my-magical-keys ()
(local-set-key (kbd "C-i") 'previous-line)
(local-set-key (kbd "C-k") 'next-line)
(local-set-key (kbd "C-j") 'backward-char)
(local-set-key (kbd "C-l") 'forward-char))
(add-hook 'magical-mode-hook 'my-magical-keys)
Es ist aber auch möglich, dies so zu tun:
(define-key magical-mode-map (kbd "C-i") 'previous-line)
(define-key magical-mode-map (kbd "C-k") 'next-line)
(define-key magical-mode-map (kbd "C-j") 'backward-char)
(define-key magical-mode-map (kbd "C-l") 'forward-char)
Die zweite Methode scheint mir tatsächlich sauberer zu sein. Gibt es irgendwelche Vorteile, wenn man es auf die eine oder andere Weise macht?
C-n
und Guten C-p
. Das Beispiel ist nur Dummy-Code. Ich wollte einige sehr einfache Beispielmodi und Beispielbindungen entwickeln, damit die Bindungen selbst nicht vom eigentlichen Zweck der Frage ablenken.