问题 如何在Windows中为Emacs 23使用Alt作为元键,尤其是M-x?


我尝试使用Alt作为FSF Emacs 23 Windows版本和EmacsW32的元键,但特别是M-x(Alt-x)不起作用。

不知怎的,我不能使用Alt作为Alt-x(M-x)的Meta键。我搜索得非常努力,我得到的是如何在w32-meta-style中将元键切换为Alt。目前,此变量的值为“使用Alt作为Meta键”。我也尝试了所有其他值,但没有成功。此外,我安装了未修补的emacs版本 http://ourcomments.org/Emacs/EmacsW32.html 和来自gnu.org的原始二进制文件。所有版本都有同样的问题。

Alt用作Meta,但Alt-x(Meta-x)除外。

我的设置如下:

  • Windows 7 x64专业版
  • 德国键盘

这个问题是Windows特有的,因为我有一个工作的Ubuntu版本的Emacs 23。

编辑:这是适用于Windows的Growl。它在启动时加载并捕获所有Alt-x输入。所以我的解决方案就是禁用Growl,因为我不再需要它了。可能是你的另一个应用程序。


9127
2018-06-27 15:14


起源

我猜想这与德国键盘有关 - 除此之外我有相同的设置,它开箱即用。 - dfb
很好的发现,它是Windows的Growl也为我造成了问题。 - Matt Curtis
谢谢。对我来说,低吼也是问题所在。真是个奇怪的事情。 - drt


答案:


它应该开箱即用。如果你用-Q标志启动Emacs,Alt + x是否可以作为M-x?这会禁止加载您的自定义项,以防其中一个在Windows上破坏M-x。

此外,默认情况下,Emacs仅将左Alt键视为Meta,右Alt(AltGr)用于输入特殊字符。


11
2018-06-30 21:52



你是对的。问题不在于Emacs,而是在我的Autostart中的Growl for Windows。 Growl在内部使用Alt-x作为热门话题。此链接[0]显示如何更改热键。另一种选择是完全禁用咆哮。 [0] - groups.google.com/group/growl-for-windows/browse_thread/thread/... - ayckoster
哇,有什么不合理的理由。帮助过我。谢谢。我会尽力 搞乱 而不是低吼。 Snarl甚至是开源的! - Prof. Falken
Growl for Windows看起来也像是开源的(code.google.com/p/growl-for-windows),但最后一次提交是在2012年。一旦我弄清楚如何将GNTP传输添加到Snarl,看起来它将是一个很好的替代品。它解决了我的M-x问题,挂钩了许多其他通知系统,例如内置的Win32通知程序,并且是一个活跃的项目。谢谢你的建议。 - Ryan Beesley
@RyanBeesley,不客气。我的记忆太糟糕了,我不得不通过谷歌回到这里再次发现同样的事情。 :) 害怕。 - Prof. Falken
@Frof.Falken,我也是。 : - /我不记得哪个是导致我问题的那个。 :-) - Ryan Beesley


我不知道 w32-meta-style 但你确定了吗? w32-alt-is-meta?看到 http://www.gnu.org/software/libtool/manual/emacs/Windows-Keyboard.html


0
2018-06-28 12:55



我试图分配w32-alt-is-meta但它仍然无效。 - ayckoster


Growl热键可以更改: https://groups.google.com/forum/#!topic/growl-for-windows/luSpf9lQQRM

要禁用热键,只需删除“值”标记的内容即可。


0
2017-12-22 09:47