在带有emacs键绑定的bash shell中,可以使用M-f、M-b等组合键分别在shell提示符上向前或向后移动一个单词。在Windows和Linux操作系统中,通常将meta键映射为Alt键。但是,在iTerm中,我找不到一种方法将这个元键映射到我的MacBook Pro上的Option或Command键。

似乎在OS X中,元键默认映射到ESC键。你可以在iTerm上使用ESC-f和ESC-b。然而,ESC键显然不实用。此外,iTerm确实有选项,允许你修改映射元键(Bookmarks > Profiles > Keyboard Profiles > Global > option key as…),这个设置似乎根本不起作用。

因此,如果有人知道这个问题的解决方案,请告诉我。

我已经升级到最新版本,0.9.6.1012,这种行为仍然存在。

编辑:对我的问题做一些澄清。我所说的键绑定是针对bash shell的,而不是emacs。缺省情况下,bash shell也使用与emacs相同的键绑定。


当前回答

我纠结于Meta + Left或Meta + Right。上下文是用于iTerm2会话中使用的Emacs中的击键。

我尝试了Esc+和Meta的左选项键没有运气。我试过用和不用十六进制映射。没有运气。

但后来我尝试了“报告修改器使用CSI u”。(文档)。这允许我在Emacs中使用meta + Left和meta + right键,这是我的Linux机器上的行为。

其他回答

对于iTerm2用户来说,这个答案只是部分解决了问题。

Cmd +。,配置文件,键和选择左选项键作为:+Esc。

除此之外,你必须去首选项(Cmd+,)➔配置文件➔键和在键映射找到这些键组合的:和。双击每个映射,将它们的Action和Esc+改为如下:

去书签>管理配置文件。选择“Keyboard Profiles > Global”,选择“Option Key”为“+ESC”。

适用于iTerm Build 0.9.5.0611和Build 0.9.6.20090415

去书签>管理配置文件。然后选择“Keyboard Profiles > Global”,选择“Option Key as Meta”。这在0.9.6.1201版本中适用。

我不了解iTerm,但你可以在终端中这样做。使用说明可以在这里找到:

Emacs在Mac OS X豹键绑定

打开“首选项”(⌘,)->配置文件->键->常规选项卡。 设置“左选项键:”为“Esc+”。

在Emacs中适用于我,尽管我不确定它是否会有任何其他不良影响。