我似乎无法做出瓦拉建立系统崇高文本2 ...这是我到目前为止有:创建瓦拉崇高的文本生成系统
{
"cmd": ["valac", "--pkg", "gtk+-3.0", "'$file'"]
}
不幸的是,这只是编译代码valac,但不运行它。
我该如何让它直接运行编译后的程序?
我似乎无法做出瓦拉建立系统崇高文本2 ...这是我到目前为止有:创建瓦拉崇高的文本生成系统
{
"cmd": ["valac", "--pkg", "gtk+-3.0", "'$file'"]
}
不幸的是,这只是编译代码valac,但不运行它。
我该如何让它直接运行编译后的程序?
使用vala
而不是valac
。但是,请记住,这不会保留生成的可执行文件。要做到这一点,你需要把多个命令在一起,我不知道该怎么做,与崇高的文本,但在命令行中,你可以做类似
valac -o foo --pkg gtk+-3.0 file.vala && ./foo
这崇高的文本3对我的作品(通过引进 “shell_cmd”):
{
"shell_cmd": "valac --pkg gtk+-3.0 $file -o app.vala && ./app.vala"
}
app.vala将编译生成文件的文件名。
我不知道崇高,但也许另一种可能性是编写一个小shell脚本并用'“cmd”'运行它? –
最简单的构建系统从崇高文字2运行瓦拉代码如下:
{ "cmd": ["vala", "--pkg=gtk+-3.0", "$file"] }
这是创建瓦拉Windows上的构建系统我第一次尝试,我不是很满意结果。在编译过程中弹出几个令人讨厌的窗口,之后,主窗口仍然可见。为了解决这个问题,我跑VALA以最小化窗口:
{ "cmd": ["cmd", "/c start /min vala --pkg=gtk+-3.0 $file"] }
它的工作,但现在,编译器的输出是不崇高文本可见。
因为我只是在玩Vala,而且我的程序是Hello World的复杂性,所以我可以通过简单编译两次来解决这两个问题。首先用C代码获取构建结果,然后从最小化的窗口运行代码。
{ "cmd": ["cmd", "/c valac --ccode --pkg=gtk+-3.0 $file && start /min vala --pkg=gtk+-3.0 $file"] }
只编译为C有它的缺点,C编译器错误不会显示在编译结果中,但我可以忍受。
这里是我结束了:
{
"cmd": ["cmd", "/c valac --ccode --pkg=gtk+-3.0 $file && start /min /wait valac -X -mwindows --pkg=gtk+-3.0 $file -o $file_base_name && $file_base_name"],
"file_regex": "^(?<filename>(?:[A-Z]:)?[^:]+):(?<line>[0-9]+).(?<column>[0-9]+)[^:]+: (?<message>.+)",
"selector": "source.vala"
}
我以前华劣克而不是VALA这里保存编译后的程序和编译后运行(通过罗马Fischer和nemequ描述的伎俩,但用$file_base_name
变量而不是静态文件名)。
另外我还增加了两个字段:构建结果导航的file_regex
和构建系统自动选择的selector
。
你有没有找到任何解决方案呢? – HSRF