Meta + Shift + Character를 바인딩 할 수 없습니다.

Oct 14 2020

Meta + Shift + 어떤 문자도 바인딩 할 수 없습니다.

다른 키 조합 (예 : Control + Shift + Key)에서는 이러한 문제가 발생하지 않습니다.

다음은 제가 일을 할 수없는 특정한 경우입니다.

(global-set-key (kbd "M-S-Z") 'zap-up-to-char-backward)
(defun zap-up-to-char-backward (char)
  (interactive "cZap up to char (backward): ")
  (zap-up-to-char -1 char))

답변

4 Drew Oct 15 2020 at 00:31

M-S-ZMeta + Shift +를 의미 Z합니다. 그러나 Z(대문자)는 Emacs가 Shift>+에 사용하는 것입니다 z.

키보드에에 해당하는 키가 없을 수 S-Z있습니다. 그것이 작동하지 않는다고 말하는 이유입니다.

사용하는 경우 C-h b키 바인딩이 확인 목록에 있음을 알 수 있습니다. 당신이 사용하는 경우 그리고 C-h w zap-up-to-char-backward당신은이 바인딩 말한다 것을 볼 수 있습니다 M-S-Z.

문제는 키보드로 이러한 키 시퀀스를 입력 할 방법이 없다는 것입니다.

C-C-Z제어 문자 C-z, 즉 ASCII 제어 Z 로 해석 된다는 점에서 특별 합니다.


당신이 정말로하고 싶은 일이 분명하지 않습니다. 키보드 키 조합 Meta+ Shift>+ 를 바인딩 z하시겠습니까? 그렇다면 (kbd "M-Z"), not (kbd "M-S-z")또는을 사용하십시오 (kbd "M-S-Z").