在vimscript中的光标后插入文本块

在vimscript中的光标后插入文本块,vim,Vim,我原以为这会容易些,但我还没有做到。我想运行一个函数,在光标后插入一个特定的文本块(这是我经常插入的一些文本) 一旦完成,我会将按键映射到这样的函数。我不能使用append(),因为我不想创建新行,只想像“a”命令那样在光标后追加一些文本。您可以使用 exe "normal! a".functionresult."\<esc>" 我可能对列偏移量有错误(我已经检查了代码的行为),但这就是我的想法 请注意,根据插入的触发方式,仅使用表达式映射可能更简单 inoremap <si

我原以为这会容易些,但我还没有做到。我想运行一个函数,在光标后插入一个特定的文本块(这是我经常插入的一些文本)

一旦完成,我会将按键映射到这样的函数。我不能使用append(),因为我不想创建新行,只想像“a”命令那样在光标后追加一些文本。

您可以使用

exe "normal! a".functionresult."\<esc>"
我可能对列偏移量有错误(我已经检查了代码的行为),但这就是我的想法

请注意,根据插入的触发方式,仅使用表达式映射可能更简单

inoremap <silent> <expr> YOURTRIGGER <sid>the_function()
inoremap YOURTRIGGER\u函数()
您可以使用映射:

:nnoremap <F2> axxx<Esc>
每次插入“tx”并按空格键时,“tx”将替换为文本

:nnoremap <F2> axxx<Esc>
:iabbrev tx some long text