问题是我需要将包含路径传递给C ++编译器。 我可以为每个缓冲区定义它们,例如:
:let b:COMPILER_OPTIONS='-ggdb -I"E:\boost_1_42_0\boost\"'
但是如何在命令行上展开b:COMPILER_OPTIONS?
:!g++ program.cpp eval('b:COMPILER_OPTIONS')
不起作用。
或者,如果不可能,还有其他方法可以做到这一点吗?
答案 0 :(得分:3)
我认为你不能直接这样做,但你可以定义一个自定义命令:
:command! -nargs=1 Gpp exe '!g++' b:COMPILER_OPTIONS '<args>'
如果您想要完成文件名,可以添加-complete
选项:
:command! -nargs=1 -complete=file Gpp exe '!g++' b:COMPILER_OPTIONS '<args>'
用法:
:Gpp program.cpp