扩展崇高文本 3 构建选项



我正在使用Sublime Text 3中的AVR包。如果我cmd-shift-b(构建方式),我会得到选项"制造"和"制造 - 清洁"。

我想添加选项以在 Make 文件中执行其他部分。具体来说,我想有一个选项Make - Avrdude来运行avrdude来编程Atmel。我可以从命令行执行此操作,但不能从Sublime执行此操作。

如何添加到"构建方式"选项?

Sublime中的构建系统是通过sublime-build文件定义的,这些文件是JSON格式的文件,告诉它如何执行构建。这些包括基本构建的至少一个选项,并且可以包含 0 个或多个略微修改命令的"变体"。

用于调用make的生成系统称为Make.sublime-build,位于Makefile包中。查看该文件内容的最简单方法是使用 PackageResourceViewer。

默认情况下,它看起来像这样(从Sublime Build 3126开始):

{
"shell_cmd": "make",
"file_regex": "^(..[^:n]*):([0-9]+):?([0-9]+)?:? (.*)$",
"working_dir": "${folder:${project_path:${file_path}}}",
"selector": "source.makefile",
"syntax": "Packages/Makefile/Make Output.sublime-syntax",
"keyfiles": ["Makefile", "makefile"],
"variants":
[
{
"name": "Clean",
"shell_cmd": "make clean"
}
]
}

主体提供调用makeshell_cmd以及所需的所有其他构建选项,variants部分允许您覆盖其中一些设置以执行其他操作。您在变体中未覆盖的任何内容都使用基本设置。

为了添加额外的变体,您只需将它们添加到具有不同名称和要使用的命令的变体数组中。例如,我的变体部分如下所示:

"variants":
[
{
"name": "Clean",
"shell_cmd": "make clean"
},
{
"name": "Run",
"shell_cmd": "make run"
}
]

重要说明:该文件是JSON格式的,如果您的格式错误(因此Sublime无法解析该文件),则不会生成错误消息,并且该文件将被忽略。

一种方法是覆盖默认文件。若要使用 PackageResourceViewer,请从命令面板(Tools > Command Palette或平台的关联键)中选择"PackageResourceViewer: Open Resource",选择"Makefile",然后选择"Make.sublime-build"。

这将打开文件,允许您对其进行修改。保存时,保存的文件将覆盖内置版本,这意味着无论您现在访问构建如何,它都将以相同的方式工作,并且将显示您的新选项。但是,这确实掩盖了对构建文件的任何官方更改(例如,如果Sublime的未来版本修改了此文件)。

您也可以执行与上述类似的操作,只是不使用文件,而是使用Save As并将其保存到User包中。如果采用此路线,则需要从Tools > Build System菜单中手动选择构建才能使用它。请注意,您为文件指定的名称控制着菜单中显示的名称,因此,如果为其指定与默认值相同的名称,则相同的名称将在该菜单中显示两次。

第三种选择是将生成设置直接存储在sublime-project文件中(如果使用),在这种情况下,自定义生成仅在该项目中可用。在这种情况下,您仍然需要手动选择内部版本。

最新更新