存在未转换版本时忽略转换命令
Shifted command ignored when unshifted version exists
我有以下绑定:
M-q => fill-paragraph
M-S-q => unfill-paragraph
但是任一组合键都会产生第一个:fill-paragraph
,所以它
似乎 Shift
因此
unfill 被忽略。我设置了
第二个我自己:
(prelude-require-package 'unfill)
(define-key prelude-mode-map "\M-\S-q" nil) ; don't let prelude dictate it
(global-set-key (kbd "M-S-q") 'unfill-paragraph)
Emacs 有一个回退到未移位序列的行为
当转移的版本不存在时(这看起来不错,但应该
这种情况不会发生)。所以如果我没有 M-S-q
绑定,然后按它应该会导致 fill-paragraph
,这
是我不高兴看到的。这表明 Emacs 以某种方式
不知道第二个绑定。但我已经证实它确实如此
通过 C-h f unfill-paragraph
确认知道。调用自
M-x
表明它运作良好。
为什么 Shift
被忽略了?
(这是 Emacs 的 GUI 版本,我的 Shift 键适用于其他
东西。)
Emacs 在处理 shift 时存在一些令人困惑的问题 w.r.t,因为 shift 修饰符有时被视为普通修饰符,但其他时候是特殊大小写以修改基本字符,因此它是大写的。
在这种情况下,我认为您需要 ?\M-Q
。相反,?\C-Q
与 ?\C-q
相同,因此您需要使用 ?\C-S-q
将某些内容绑定到 C-S-q。
这可能值得 M-x report-emacs-bug
。
我有以下绑定:
M-q => fill-paragraph
M-S-q => unfill-paragraph
但是任一组合键都会产生第一个:fill-paragraph
,所以它
似乎 Shift
因此
unfill 被忽略。我设置了
第二个我自己:
(prelude-require-package 'unfill)
(define-key prelude-mode-map "\M-\S-q" nil) ; don't let prelude dictate it
(global-set-key (kbd "M-S-q") 'unfill-paragraph)
Emacs 有一个回退到未移位序列的行为
当转移的版本不存在时(这看起来不错,但应该
这种情况不会发生)。所以如果我没有 M-S-q
绑定,然后按它应该会导致 fill-paragraph
,这
是我不高兴看到的。这表明 Emacs 以某种方式
不知道第二个绑定。但我已经证实它确实如此
通过 C-h f unfill-paragraph
确认知道。调用自
M-x
表明它运作良好。
为什么 Shift
被忽略了?
(这是 Emacs 的 GUI 版本,我的 Shift 键适用于其他 东西。)
Emacs 在处理 shift 时存在一些令人困惑的问题 w.r.t,因为 shift 修饰符有时被视为普通修饰符,但其他时候是特殊大小写以修改基本字符,因此它是大写的。
在这种情况下,我认为您需要 ?\M-Q
。相反,?\C-Q
与 ?\C-q
相同,因此您需要使用 ?\C-S-q
将某些内容绑定到 C-S-q。
这可能值得 M-x report-emacs-bug
。