0

我们知道您无法通过以下方式进入插入模式

:exec "normal [iIaAs]"

我知道从冒号命令进入插入模式的唯一方法是

:startinsert[!]

而 :startinsert 的表现类似于 'i' 和 :startinsert! 像一个'。但是我怎样才能得到'a'?你不能使用

:exec "normal l"
:startinsert

因为它在行尾不起作用。

4

2 回答 2

2

功能有feedkeys帮助吗?

例如

:call feedkeys('a','n')
于 2013-08-17T21:32:08.820 回答
1

这个片段:

function! Append()
  startinsert
  normal! l
endfunction

nmap <F6> :call Append()<CR>

使<F6>工作像a

在脚本之外,您必须执行以下操作:

:startinsert
<C-o>
:normal l

请注意,execute仅当您在要执行的命令中进行一些插值或连接时才需要这样做。

execute "normal a"

没有意义,但是

execute "normal a" . my_variable

是正确的。

于 2013-08-18T05:36:32.613 回答