什么导致`M-S-t`(元+ shift + t)键绑定不采取?

时间:2016-07-01 08:09:38

标签: emacs key-bindings aquamacs

默认情况下,C-S-tM-S-t在我的Emacs中都未绑定。因此,当我按下它们时,它们会被翻译为C-tM-t。很好,但我想用它们来调整原始函数,因此将这些行放在我的.emacs中:

(global-set-key (kbd "C-S-t") 'transpose-chars-backward)
(global-set-key (kbd "M-S-t") 'transpose-words-backward)

这些函数是我自己的,通过M-x调用时工作正常。

这适用于C-S-t,但M-S-t仍未转换为M-tC-h k M-S-t上的消息证实了这一点。

一般来说,配置M-S-组合并不是不可能的,因为M-qM-S-q做了不同的事情。

导致这种不一致的原因是什么?如何绕过它?

我在Mac OS X 10.9.5上运行Aquamacs。

1 个答案:

答案 0 :(得分:4)

这里有两种不同的方法可以做你想做的事:

(global-set-key (kbd "M-T") 'transpose-words-backwards)
(global-set-key [(meta shift t)] 'transpose-words-backwards)

我不确定是什么导致(kbd "M-S-t")(kbd "C-S-t")的工作方式不同,顺便说一下。前段时间我变得很擅长使用矢量符号([(meta shift t)]),因为我觉得它更容易预测(我总是第一次就把它弄好了,而kbd符号有时我需要几次尝试。)< / p>