vim+c ++:在警卫条款中插入uuid
-
03-10-2019 - |
题
我正在尝试自动化文件评论标头。我坚持不懈地试图弄清楚如何插入 uuidgen
使用VIM的AutoCMD命令进入我的标题。
在标题内,占位符文本如下:
#ifndef _UUID_
#define _UUID_
// Code goes here!
#endif // _UUID_
填充的AutoCMD线 _UUID_
在.vimrc中是:
autocmd bufnewfile *.h exe "1,$s/_UUID_/" . r!uuidgen ."/g"
问题在R!uuidgen下出现。 如何在AutoCMD行中插入壳牌执行的结果?还是在VI替代命令中?
解决方案
使用System(),并且不要忘记将结果弄坏 - > matchstr(system('uuidgen'), "[^\n\r]*")
NB:对于更复杂的模板,您可以使用诸如此类的解决方案 Mu-Template. 。例如,在 c-header.template, ,您必须更改 s:guard
致电matchtr()+system()。
其他提示
出于后代的缘故,我在LUC的建议之后产生的AutoCMD系列是:
autocmd bufnewfile *.h exe "1,$g/_UUID_/s/_UUID_/" . matchstr(system('uuidgen'), "[^\n\r]*")
不隶属于 StackOverflow