MS-를 어떻게 발행하나요?Mac OS Mavericks의 iTerm에서 실행되는 Emacs에?

MS-를 어떻게 발행하나요?Mac OS Mavericks의 iTerm에서 실행되는 Emacs에?

해당 키 조합을 누르면 벨 소리가 들리고 0D실행 중인 해당 키 코드에 바인딩된 명령(이 경우 org-table-delete-column) 대신 버퍼에 문자가 인쇄되는 것을 볼 수 있습니다. M-<left-arrow>그러나 잘 작동합니다.

몇 가지 조사를 해본 결과 M-<any-arrow>iTerm이 특정 16진수 시퀀스를 해당 키에 대한 터미널로 보내도록 구성되어 있기 때문에 작동한다고 생각합니다. 이러한 바인딩 없이 새 프로필을 만들면 모든 M-<arrow>키로 인해 종소리와 문자가 인쇄되었습니다.

그래서 몇 가지 질문이 있습니다. 우선, 16진수 시퀀스란 무엇입니까? M-S-<left-arrow>올바르게 발행되려면 어떤 시퀀스가 ​​필요합니까 ? 왜 iTerm에는 이러한 모든 항목이 이미 정의되어 있지 않습니까? 그리고 마지막으로, 왜 우리는 그것들을 가지고 있습니까? iTerm은 왜 터미널에 키를 눌렀을 때 키를 전송하고 iTerm 및 Mac OS X에 필요한 키 코드를 제외하고 작동하도록 할 수 없습니까?

답변1

다음에 다음 줄을 추가해 보세요 ~/.emacs.

(define-key input-decode-map "\e[1;10A" [S-M-up])
(define-key input-decode-map "\e[1;10B" [S-M-down])
(define-key input-decode-map "\e[1;10C" [S-M-right])
(define-key input-decode-map "\e[1;10D" [S-M-left])

이스케이프 시퀀스를 보려면 쉘에서 cat -v또는 를 사용하십시오 .C-v

관련 정보