Cuando está en modo javascript intentando utilizar, aparece C-c C-m i
un error que dice "¿ C-c RET
Está indefinido?"
¿Qué hace que Emacs crea que estoy presionando RET
?
¿Cómo puedo hacer que esta combinación de teclas funcione correctamente?
Cuando está en modo javascript intentando utilizar, aparece C-c C-m i
un error que dice "¿ C-c RET
Está indefinido?"
¿Qué hace que Emacs crea que estoy presionando RET
?
¿Cómo puedo hacer que esta combinación de teclas funcione correctamente?
Respuestas:
Emacs "piensa" que C-m
se RET
debe a que "Control M" es el carácter de control ASCII "retorno de carro". Aunque esta razón es "histórica", Emacs puede ejecutarse en un terminal y, por lo tanto, debe ser compatible con la forma en que los terminales todavía funcionan ahora.
Intente abrir una ventana de terminal, escriba " ls
" y presione C-m
. Verá que se interpreta como "retorno", a pesar de que está no en Emacs.
Vea el carácter de control en Wikipedia para obtener detalles sobre los caracteres de control
Para distinguir C-m
a partir RET
de una interfaz gráfica de usuario de Emacs, se puede cambiar C-i
a C-m
en @nispio 's respuesta :
(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)
Ver también
¿Cómo distinguir Ci de TAB? , que está muy relacionado.
¿Cómo vincular Ci como diferente de TAB? y esta respuesta en particular.
C-m
como prefijo un mapa para múltiples cursores.