EmacsW32:可以同时使用“windows key”和“alt key”绑定吗?

时间:2008-12-14 05:48:53

标签: emacs binding editor keyboard

问题: EmacsW32是Emacs的一个版本,允许用户让Emacs将“Windows”键视为“Meta”键(而不是将Alt键视为“Meta”键)。虽然这可以像宣传的那样工作,但问题是当你想为“Alt”键创建一个Emacs键绑定时会发生什么?

问题:在这种情况下是否有办法允许Emacs捕获并创建“Alt”键的键绑定,即使它现在认为“Windows”键是新的Meta?

3 个答案:

答案 0 :(得分:3)

要确定Emacs是否完全识别您的Alt键:输入C-h c,然后输入一些以Alt开头的组合键,例如: ALT-F。
如果它显示“M-f runs the command forward-word”(例如),则Emacs也会将您的Alt键视为Meta键,并且您绑定到Meta的任何内容都将同时使用Windows键和Alt键,因此无法使Alt键与Windows键的工作方式不同。
如果显示“Hyper f is undefined”或“Super f is undefined”(例如),则Emacs会将您的Alt键识别为分别是Hyper或Super,您可以将命令绑定到以Hyper或Super开头的键绑定,这些命令将与您的Alt键一起使用。
如果它根本没有反应,则意味着它没有将Alt键识别为任何东西,并且在Emacs中你无法做任何事情:Emacs甚至没有获得密钥。在这种情况下,正如另一个答案所说,你应该查找Windows的xmodmap的等价物 - 它与注册表有关;关于Windows的GNU Emacs常见问题解答How do I swap CapsLock and Control?部分有关于此的一些相关详细信息(“扫描码”);另请参阅this page

答案 1 :(得分:1)

您可以将Windows和Alt键同时绑定到Meta,也可以将Alt键分配给其他更改键。 Emacs提供了这些可能的绑定:

Shift
Control
Meta
Hyper
Super

您必须查看系统的文档,了解如何将物理键绑定到这些(例如,对于X窗口man xmodmap)。

答案 2 :(得分:1)

您可能需要查看thread on Super and Hyper keys in EmacsW32.

我没有反弹我的Meta键(仍然在Alt上 - 我经常使用它)但Super和Hyper可以绑定到各种windows和app键。