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