使用变量/regexp进行智能文本替换的vim脚本
我不熟悉vim编辑。我想创建一个脚本或使用变量/regexp进行智能文本替换的vim脚本,vim,Vim,我不熟悉vim编辑。我想创建一个脚本或:ab命令来使用变量进行智能替换 我想用我的vimrc中的:ab命令来实现,但我不确定如何或者是否可以为变量实现 例如,当我写作时: :<ab or something else> kuku v1 v2 你知道我是怎么实现的吗?for循环是文本替换的一个例子,但我需要它的一些变体。你不能用缩写来表达逻辑,所以你可以忘记:ab 唯一可以接受您描述的参数的内置命令是自定义命令,如:help user commands所述,可能由自定义函数支持,如:
:ab
命令来使用变量进行智能替换
我想用我的vimrc
中的:ab
命令来实现,但我不确定如何或者是否可以为变量实现
例如,当我写作时:
:<ab or something else> kuku v1 v2
你知道我是怎么实现的吗?
for
循环是文本替换的一个例子,但我需要它的一些变体。你不能用缩写来表达逻辑,所以你可以忘记:ab
唯一可以接受您描述的参数的内置命令是自定义命令,如:help user commands
所述,可能由自定义函数支持,如:help user functions
所述
这里是一个粗略的近似值:
function! ForSnippet(init, max)
put='for (i=' . a:init . ', i<=' . a:max . '; i++){'
put='}'
normal O
endfunction
command! -nargs=+ Kuku call ForSnippet(<f-args>)
请注意,对于粗溶液,这已经相当复杂,需要您:
- 在你得到有用的东西之前要做很多改进
- 在将来写并维护很多这样的东西
function! ForSnippet(init, max)
put='for (i=' . a:init . ', i<=' . a:max . '; i++){'
put='}'
normal O
endfunction
command! -nargs=+ Kuku call ForSnippet(<f-args>)
:Kuku foo bar