2013-07-01 21 views
2

如果我不明白错误,通过配置file_regexline_regex,崇高可以从错误输出中捕获文件和行号。如何配置sublime的构建系统以捕获这样的错误输出中的文件和行?

我有这样的错误输出:

main.<anonymous closure>.<anonymous closure> file:///Users/freewind/dev/workspace/RythmDart/test/test_grammar.dart 135:19 

如何配置构建文件?

我想:

"line_regex": "([\\w/:\\-_]*) (\\d*):(\\d*)", 

但它不工作。

+0

顺便说一句 - 注意,是一个SublimeText2包飞镖 - https://github.com/dart-lang/dart -sublime束。但是,他们的构建系统很复杂,我没有太多的运气。 –

回答

2

这个工作对我来说:

"file_regex": ".*file:\/\/\/(.*):([0-9]*):[0-9]*", 

需要注意的是:

  • 此使用file_regex代替line_regex
  • 我使用的崇高文字2
  • 我正在dart.exe在Windows上

我运行一个简单的飞镖命令行程序,并得到输出是这样的:

Hello world 

Unhandled exception: 
exception 
#0  main (file:///C:/src_test/dart/dart_test.dart:4:3) 

这里是我的测试程序:

void main() { 
    print("Hello world\n"); 
    throw 'exception'; 
} 

编辑:

为Mac,它应该成为:

"file_regex": ".*file:\/\/(.*):([0-9]*):[0-9]*", 

请注意在file:之后只有两个\/,否则升华会尝试找到具有错误路径的文件,例如,

〜的/ dev /镖/ myproject的/用户/家庭/乱风的/ dev /镖/ myproject的/ test.dart

如果我用两个\/,这将是正确的:

/Users/home/freewind/dev/dart/myproject/test.dart

+0

它不适用于Mac? – Freewind

+1

找到解决方案并更新了答案,谢谢你 – Freewind

相关问题