需要一个脚本来模拟<cr>按插入模式</cr>

时间:2012-10-03 00:06:11

标签: vim

我正在编写一个在某些条件下自动插入一些文本的函数。当我尝试模仿Enter按时,我陷入了困境。我想出了这个(显而易见的)代码:

execute "normal! a\<cr>"

问题是它打破了自动注册。例如,我有一个像这样的文本文件(|是游标):

if (condition) {
    action();|

所以我运行execute "normal! a\<cr>"。当我需要这个时:

if (condition) {
    action();
    |

它的行为如下:

if (condition) {
    action();
|

当然,autoindent已开启。我做错了什么?

1 个答案:

答案 0 :(得分:5)

它实际上按预期工作。如果你执行:execute "normal! a\<cr>hello,它会把'hello'放在正确的位置。如果按 A 输入 Esc ,它将下降到该行的开头。该命令退出插入模式,因为它是一个空行,不需要。