默认情况下,C-S-t
和M-S-t
在我的Emacs中都未绑定。因此,当我按下它们时,它们会被翻译为C-t
和M-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-t
。 C-h k M-S-t
上的消息证实了这一点。
一般来说,配置M-S-
组合并不是不可能的,因为M-q
和M-S-q
做了不同的事情。
导致这种不一致的原因是什么?如何绕过它?
我在Mac OS X 10.9.5上运行Aquamacs。
答案 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>