3

问题: EmacsW32 是 Emacs 的一个版本,它允许用户让 Emacs 将“Windows”键视为“Meta”键(而不是将 Alt 键视为“Meta”键)。尽管这如宣传的那样有效,但问题是当您想为“Alt”键创建 Emacs 键绑定时会发生什么?

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

4

3 回答 3

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 甚至没有获得该键。在这种情况下,正如另一个答案所说,您应该查找xmodmapWindows 的等价物——这与注册表有关;Windows 版 GNU Emacs 常见问题解答部分关于如何交换 CapsLock 和 Control?有一些关于这个的相关细节(“扫描码”);另见这个页面

于 2008-12-14T15:08:15.613 回答
1

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

Shift
Control
Meta
Hyper
Super

您将不得不查看系统文档以了解如何将物理键绑定到这些(例如man xmodmapX 窗口)。

于 2008-12-14T10:54:59.553 回答
1

您可能想查看EmacsW32 中 Super 和 Hyper 键上的线程。

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

于 2008-12-16T14:13:41.430 回答