2011-01-12 40 views
0

我想在我的vimrc创建一组简单的键地图,并写在我的vimrc以下:为什么vim的关键地图“地图”!“”哈<ESC>”引起奇怪的行为

地图!“‘’哈哈

上面的键映射工作在插入模式,当你键入" VIM将只需键入另一个",然后将光标放在两个引号之间。

然而,最奇怪的事情发生,似乎vim不能停止产生双重的qutation标记并继续,只有当按一下<CTRL-C>时,它才会停止。

这是我的错误,还是这是一个vim错误?

+0

fow回答了你的“bug”问题。不过,我建议你不要使用映射的砰砰声(!)版本(因为它在COMMAND模式下根本不起作用)。在这个平衡对话题上,我建议你看看http://stackoverflow.com/questions/4521818/getting-automatic-matching-brace-in-vim – 2011-01-12 10:13:03

回答

7

这不是一个错误。问题是你的地图正在递归。该解决方案是使用noremap!,不允许地图在RHS:

noremap! " ""ha 

我个人倾向于使用noremap命令,除非我知道我需要在RHS映射到扩大。