Vim多个元键

时间:2011-02-13 03:26:23

标签: ruby vim map meta-key

更新:原来是a bug in MacVim(或者可能是尚未实施的功能)。


我正在尝试来自TextMate的Vim。 TextMate有一个Ruby插件,您可以在其中键入 Control + Command + Shift + E ,它会找到所有文件中包含“#=>”的行,它会使用该行的检查结果更新它们。

我找到了他们用来做这个的库,它叫做xmpfilter,并附带rcodetools

所以我可以通过输入“mzggVG:!xmpfilter -a”来让Vim做同样的行为,它会突出显示整个文件,转到最后一行模式,然后将内容传递给xmpfilter,然后用结果。

但我想将它映射到TextMate使用的相同组合键,以便它具有相同的界面,因为这已经成为我工作流程中巨大的部分。

以下是我尝试如何开展这项工作的一系列示例

:nmap <silent> <D-C-E> mzggVG!xmpfilter -a<cr>'z
:nmap <silent> <S-D-C-e> mzggVG!xmpfilter -a<cr>'z
:nmap <silent> <SDC-e> mzggVG!xmpfilter -a<cr>'z
:nmap <silent> <S-<D-<C-e>>> mzggVG!xmpfilter -a<cr>'z
:nmap <silent> <SDC-e> mzggVG!xmpfilter -a<cr>'z
:nmap <silent> <S-><D-><C-e> mzggVG!xmpfilter -a<cr>'z

但这些都不正确。似乎我无法弄清楚如何指定多个元键。 (作为一项完整性测试,我已经确认:nmap <silent> <S-e> mzggVG!xmpfilter -a<cr>'z确实有效。)任何帮助都将受到赞赏。

(注意:我在Snow Leopard上使用MacVim

1 个答案:

答案 0 :(得分:2)

如果我没弄错,命令键由D表示而不是M(M是alt我相信)。我想你想用<S-D-C-e>。 **注意:据我所知,只有在使用GUI时才能使用命令键。