Build 为不同目录中的构建和源代码创建Sublime文本构建系统

Build 为不同目录中的构建和源代码创建Sublime文本构建系统,build,sublimetext2,Build,Sublimetext2,我有一个项目,其构建目录和源目录不同。我想在source目录中编辑时,创建一个将在build目录中生成的 假设我有这个目录结构: /home/dbw/src源文件 /home/dbw/bld生成文件 (我知道,这是一个令人震惊和独特的命名系统——让我们把掌声保持到最后,好吗?) 构建嵌套了许多层,目录结构是对称的。从源代码中的一个目录中,我想在相关的构建目录中启动一个构建。例如,如果我正在编辑/home/dbw/src/foo/Makefile,我希望make在/home/dbw/bld/f

我有一个项目,其构建目录和源目录不同。我想在
source
目录中编辑时,创建一个将在
build
目录中生成的

假设我有这个目录结构:

  • /home/dbw/src源文件
  • /home/dbw/bld生成文件
(我知道,这是一个令人震惊和独特的命名系统——让我们把掌声保持到最后,好吗?)

构建嵌套了许多层,目录结构是对称的。从
源代码
中的一个目录中,我想在相关的
构建
目录中启动一个构建。例如,如果我正在编辑/home/dbw/src/foo/Makefile,我希望make在/home/dbw/bld/foo中执行。我试过这个:

{
  "cmd": ["make"],
  "file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$",
  "working_dir": "/home/dbw/bld/${file_path/$project_path//}",
  "selector": "source.makefile",

  "variants":
  [
    {
      "name": "Clean",
      "cmd": ["make", "clean"]
    },
    {
      "name": "Test",
      "cmd": ["make", "test"]
    }
  ]
}
我的.sublime项目位于/home/dbw/src中

我还尝试使用
“working\u dir”:/home/dbw/bld/${file\u path/\/home\/dbw\/src/}“


在我看来,问题在于我没有正确地避开替换表达式中的斜杠。有什么建议吗?

我这样做了,效果很好

"working_dir": "/home/dbw/bld${file_path/.home.dbw.src//}"

尽管如此,它对我来说还是有点不雅观。

我想这是一个简单的插件,但这似乎太过分了。构建系统似乎是用来处理这个问题的。