8

不知何故,我正在使用的 emacs 不会将 Alt 视为 Meta。它只使用ESC。如果我按 Alt+x,它会告诉我“AX”未定义。我试图弄清楚如何将它映射到元,但在网络上没有运气,因为在我搜索的大多数结果中,人们默认将 Alt 作为元。我想这样的事情应该有效:

global-set-key Alt(?) 'meta

但我不确定如何在 lisp 中表示 Alt .. 有什么帮助吗?谢谢!

4

3 回答 3

7

大多数解决方案会告诉您在 X11 级别更改键盘映射。wiki 存在信息过多的问题。如果您只想要一个仅在 emacs 级别上工作的解决方案(对 VNC/远程桌面非常有用),那么将以下行添加到您的 emacs 初始化文件中

;; Map Alt key to Meta
(setq x-alt-keysym 'meta)
于 2015-03-01T12:00:48.210 回答
0

在 shell(甚至)中输入此命令M-x shell对我有用。

xmodmap -e "clear mod4"

当问题是输出xmodmap包含显示 Meta_L 设置为 mod4 的行时,此方法有效:

mod4        Meta_L (0x73)

Emacs 认为您的键盘具有 Meta 键,因此它不会将 Alt 解释为 Meta。上面的命令告诉 X 你没有 Meta 键,所以 Emacs 会按照我们习惯的方式解释 Alt。

我从https://www.emacswiki.org/emacs/MetaKeyProblems了解到这一点。

于 2020-02-07T23:16:11.053 回答
0

我遇到了同样的问题,把它放在 ~/.emacs 中帮助了我。

(set-keyboard-coding-system nil)

如果您需要更多帮助,请参阅此 http://www.emacswiki.org/emacs/MetaKeyProblems#toc15

于 2015-12-08T13:56:38.800 回答