iTerm2 vim 无法映射 alt 键

iTerm2 vim 无法映射 alt 键

我在尝试映射 iTerm2 中 vim 上的 alt 键绑定时遇到了麻烦。我想映射在缓冲区之间切换的快捷方式,如下所示:

map <A-Right> <C-w>l
map <A-Left> <C-w>h
map <A-Down> <C-w>j
map <A-Up> <C-w>k

但我无法让它工作。我尝试了所有方法,在配置文件设置中将选项键设置为“Normal”、“Meta”和“+Esc”。我试过了,<M-Right><T-Right>这些都不起作用。superuser 和 stackoverflow 上有帖子,但他们使用的是旧版本的 iTerm2 (v0.x)。

我唯一能够让它工作的东西是<T-up><T-down>,或者当我只使用 Macvim 时。

我在 Macbook Pro 上使用 iTerm2 v1.0.0.20120203 和 Mac OS X 10.7.5。

答案1

由于 Mac OS X 使用 Option 键插入字符,因此常规<A-[key]>映射不起作用。因此,:h i_CTRL-V您需要使用 Option 键。例如,您可以这样输入右箭头映射:

mapcontrolVoption<C-w>l

结果如下:

map ^[f <C-w>l

但请注意,您无法复制和粘贴上述内容,因为^[在 vim 中这是一个字符,但这里用两个字符表示。但是,大多数 vim 用户会建议您不要使用箭头键(或任何其他键)。我改用map <C-l> <C-w>l(对于 h、j、k 也是如此),因为它可以让我的手放在键盘上。

答案2

我的这个答案关于类似问题。我的建议是使用:h mapleader

相关内容