在vim中重新映射Ctrl-D

时间:2012-11-06 20:04:10

标签: vim

我想重新映射另一个关键组合,比如 CTRL - G ,以 CTRL - D 的形式运行确实(注意:与 S - Down / PageDown / CTRL - F < KBD>)。

到目前为止我所拥有的是:

nmap ^G :exe 'normal '.&scroll.'^E<CR>'

启动我的vim命令模式并输入,它完美无缺。但是,当我保存我的.vimrc并重新加载vim时,在按 CTRL - G 时出现以下错误:

E114: Missing quote: '
E15: Invalid expression: 'normal '.&scroll.'

似乎没有适当地评估^ E.但是,我完全没有成功使用或以任何其他方式指定 CTRL - E 。我在这里缺少什么?

2 个答案:

答案 0 :(得分:5)

^G^E是特殊字符,当您将它们放入.vimrc时效果不佳。您需要使用<C-g><C-e>,但由于您的Ctrl + E位于字符串中,因此您需要将其转义并写入\<C-e>。您还需要使用双引号而不是单引号 - 否则您无法进行转义。

在其他说明中 - 您应该使用nnoremap代替nmap,这样如果您在其他地方重新映射<C-e><C-g>仍然会像原始<C-e>一样1}}。

答案 1 :(得分:2)

我认为你可以为 CTRL - E <C-E>