我使用该:set makeprg功能根据文件设置不同的制作行为。这样做的一个特点是我可以使用%and%<来引用活动缓冲区中的文件以及$环境变量。
我想回应扩展 makeprg变量,但我似乎无法实现这一点。
例如,假设我有:set makeprg=build\ %,并且我正在处理文件Foo.txt。我希望回显扩展的输出makeprg是:
build Foo.txt
&makeprg但是,在回显变量时,我们会得到以下结果:
:echo(&makeprg)
build\ %
解决方案可能涉及使用expand(),除了这将涉及解析&makeprg转义符号并$适当处理环境变量。有没有我想念的解决方案?