我需要每次写一个单引号或双引号,括号,花括号,方括号...自动vim应该创建一个结束引号并将光标放进去,以便继续轻松地进行编辑。我注意到,大多数编辑器做到这一点。
我需要针对每种编程语言进行此操作。PHP,JS,JQUERY,HTML,CSS ...,但不使用代码段,因为代码段需要使用shorcut或keymap来做到这一点(没有效果)。我需要在按下“键”后自动完成此自动填充。
有可用的插件(例如delimitMate)提供此功能。或者,您可以创建自己的映射。可以在这里找到大量的插件列表,以及对潜在映射的详细讨论:http : //vim.wikia.com/wiki/Automatically_append_closing_characters;通常,映射类似于:
inoremap ( ()<Left>
inoremap <expr> ) strpart(getline('.'), col('.')-1, 1) == ")" ? "\<Right>" : ")"
但是,当前(自Vim 7.4.781起)此类映射以及您安装的任何插件都会破坏undo / redo / repeat,因此需要两个撤消步骤才能删除您输入的文本:1删除括号内的内容,一个删除括号内的内容。删除括号本身。如果您愿意编译自己的Vim,可以使用一个补丁来解决此问题:https ://groups.google.com/forum/#! topic/ vim_dev/gBumYDSEJoo/ discussion
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句