1

我想在 vim 中映射以下序列以插入手镯。

:map ( i() <Esc>hi

在这张地图上,我可以从命令模式插入手镯,并在插入模式下开始在手镯内打字。但是当我使用这张地图时,我会在我的文本中插入以下结果。

() <Esc>hi

据我了解,该程序不使用该命令,它只是在插入模式下键入它。

4

2 回答 2

1

看起来你<'cpoptions'. 检查与:set cpo?。将其关闭:set cpo-=<,但请注意您不会意外以兼容模式运行;你不想要那个!

Disable the recognition of special key codes in <>
form in mappings, abbreviations, and the "to" part of
menu commands.

关于您的映射,无需退出并重新进入插入模式。您可以使用<Left>(假设您已经修复了文字插入问题):

:map ( i() <Left><Left>
于 2013-11-06T10:00:59.387 回答
0

这有效:

:map ( i()<esc>i

用你好,你在第一个括号之前开始,因为它把你放在最后一个括号之后。

于 2013-11-06T09:46:17.837 回答