我正在尝试编写一个简单的Vim函数,该函数将文件名作为参数,并将该文件的内容读入当前文档(与this question相关)。
这是我的第一次尝试:
fun! Tpl(tplfile)
r c:\tpl\a:tplfile
endfun
这只是给我以下错误:
E484:无法打开文件c:\ tpl \ a:tplfile
如何让函数实际使用tplfile参数的值?
答案 0 :(得分:6)
将该行替换为:
exe 'r c:\tpl\' . a:tplfile
a:tplfile是一个字符串变量,所以要将它包含在一个命令中,你必须将整个批次组合成一个字符串(使用'.
'运算符),然后使用exe来运行命令
:help exe
在相关说明(以及无耻的插件)上,如果您尝试添加模板(如您链接的帖子所暗示的那样),我的file templates插件会添加一个命令AddTemplate
来添加来自当前光标位置的vimfiles / templates目录的模板。但是,文档目前相当差,所以如果您决定使用它并遇到任何困难,请随时通过我网站上的地址给我发电子邮件。