2

如果我没有理解错,sublime 可以通过配置file_regexor来从错误输出中捕获文件和行号line_regex

我有这样的错误输出:

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

如何配置构建文件?

我试过:

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

但它不起作用。

4

1 回答 1

2

这对我有用:

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

注意:

  • 这使用 file_regex 而不是 line_regex
  • 我正在使用崇高文本 2
  • 我在 Windows 上运行 dart.exe

我正在运行一个简单的 dart 命令行程序并获得如下输出:

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]*",

注意后面只有两个\/s file:,否则 sublime 会尝试查找路径错误的文件,例如

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

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

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

于 2013-07-03T23:41:07.070 回答