【发布时间】:2015-12-28 09:05:38
【问题描述】:
我有自己的 perl 测试文件构建系统,除了捕获输入外,它工作得很好。如果我有一个名为 ~/projects/something.pm 的打开文件,则在出错时,构建系统的输出将类似于 Failed test at /home/username/projects/something.pm line 66。
用于捕获的正则表达式工作正常,问题是 sublime 认为这两个文件在不同的路径中,所以它打开一个新选项卡,我只想把打开的文件放在前面。
是否有任何设置可以使这种“匹配”?
编辑:每次运行构建时都会生成我的 .sublime-build 文件,以支持我可能想要运行单个测试而不是所有文件的事实。 我有自己的插件,可以检测我正在使用光标位置的测试并将其附加到命令行。但这并没有什么区别,因为行为总是相同的,即使是“标准”构建。 .sublime-build 文件的内容是这样的:
{
"shell_cmd" : "prove $file_path/$file_name" ,
"working_dir" : "/home/username/projects/",
"file_regex": " at (.*.pm) line ([0-9]*)",
}
我尝试将/home/username 替换为~ 字符,但由于某种原因,这会破坏构建系统,并且在构建时我只是得到一个黑色的输出面板,状态栏显示“正在构建...” .
无论如何,我发现了解决方法的真正问题,并将其发布为答案。
【问题讨论】:
-
请edit 您的问题与您的
.sublime-build文件的内容。
标签: perl sublimetext3 sublime-build