Cm과 RETURN을 구별하는 방법은 무엇입니까?


14

자바 스크립트 모드에서 C-c C-m i" C-c RETundefined?" 라는 오류 메시지 가 표시됩니다.

Emacs가 내가 압박하고 있다고 믿는 이유는 무엇입니까 RET?

이 키 바인딩을 올바르게 작동 시키려면 어떻게해야합니까?



1
같은 문제, 다른 진입 점, 다른 검색에서 온 사람들을 위해 두 가지 질문을 모두 유지하는 것이 좋을 것이라고 생각합니다.
Jordon Biondo


답변:


19

이맥스는 "생각" C-m입니다 RET"제어 M"이 ASCII 제어 문자 "캐리지 리턴"이기 때문이다. 이 이유가 "역사적"이지만 Emacs는 터미널에서 실행될 수 있으므로 터미널이 여전히 작동 하는 방식을 지원해야합니다 .

터미널 창을 열고 " ls"를 입력 한 다음를 누릅니다 C-m. 당신은 당신이하더라도, 그것은 "수익"으로 해석되는 것을 볼 수 없습니다 이맥스.

제어 문자 에 대한 자세한 내용은 Wikipedia의 제어 문자 를 참조하십시오 .

구별하기 위해 C-m에서 RETGUI를 이맥스에서, 하나는 변경 될 수 있습니다 C-iC-m@nispio 대답의 ' :

(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)

또한보십시오


2
훌륭합니다. 감사합니다. 이제 C-m다중 커서의 접두사 맵으로 사용할 수 있습니다 .
John Wiegley
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.