Wenn Sie im Javascript-Modus versuchen C-c C-m i, eine Fehlermeldung zu erhalten, die besagt, dass " C-c RETist undefiniert?"
Was lässt Emacs glauben, dass ich dränge RET?
Wie kann ich diese Tastenkombination richtig ausführen?
Wenn Sie im Javascript-Modus versuchen C-c C-m i, eine Fehlermeldung zu erhalten, die besagt, dass " C-c RETist undefiniert?"
Was lässt Emacs glauben, dass ich dränge RET?
Wie kann ich diese Tastenkombination richtig ausführen?
Antworten:
Emacs „denkt“ das C-mist , RETweil „Control M“ die ASCII - Steuerzeichen „Wagenrücklauf“ ist. Obwohl dies ein "historischer" Grund ist, kann Emacs in einem Terminal ausgeführt werden und muss daher die Art und Weise unterstützen, in der Terminals noch funktionieren.
Versuchen Sie, ein Terminalfenster zu öffnen, geben Sie " ls" ein und drücken Sie C-m. Sie werden sehen, dass es als "return" interpretiert wird, obwohl Sie nicht in Emacs sind.
Weitere Informationen zu Steuerzeichen finden Sie unter Steuerzeichen in Wikipedia.
Zur Unterscheidung C-mvon RETin einer GUI - Emacs, könnte man ändern , C-ium C-min @nispio ‚s Antwort :
(define-key input-decode-map [?\C-m] [C-m])
;; now we can do this:
(defun my-command ()
(interactive)
(message "C-m is not the same as RET any more!"))
(global-set-key (kbd "<C-m>") #'my-command)
Siehe auch
Wie unterscheidet man Ci von TAB? , was sehr eng verwandt ist.
Wie binde ich Ci anders als TAB? und diese Antwort im Besonderen.
C-mals Präfix eine Map für mehrere Cursor haben.