在 Sublime Text 中可通过自定义 Build System Variant 实现“编译”和“运行”等多模式切换,提升开发效率。首先在 Tools → Build System → New Build System… 中创建 JSON 配置文件,定义主命令 shell_cmd 用于编译,如 g++ “$file” -o “$file_base_name”,并设置 working_dir 和 selector 确保路径正确及语法匹配。接着在 variants 数组中添加多个变体,例如名为 “Run” 的 variant 执行 “$file_base_name”,或 “Compile & Run” 执行编译后立即运行的组合命令。保存为 C++ Custom.sublime-build 至 Packages/User/ 目录。使用时选择该构建系统,Ctrl + B 执行默认编译,Ctrl + Shift + B 选择 variant 运行。还可通过 Command Palette 输入 “Build With” 快速调用。建议添加 “encoding”: “utf-8” 避免中文乱码,支持跨平台配置时可用 cmd 替代 shell_cmd,并分设 osx、windows、linux 命令。配置一次即可灵活切换不同执行流程。

在 Sublime Text 中,创建自定义的 Build System Variant 可以让你为同一个构建系统设置多个运行选项,比如“编译”和“编译并运行”。这样可以在不重复配置的情况下灵活切换不同的执行方式。
理解 Build System 和 Variant
Sublime 的 Build System(构建系统)通过 .sublime-build 文件定义命令行操作。一个构建系统可以包含多个 variant,每个 variant 是该构建系统的不同运行模式。
例如,你可以有一个主构建系统用于“编译”,再添加一个 variant 用于“运行”程序。
创建带 Variant 的自定义 Build System
步骤如下:
1. 打开菜单创建新 Build System
点击顶部菜单:
Tools → Build System → New Build System…
会打开一个 JSON 模板文件。
2. 编辑内容,加入 main 和 variant
示例:为 C++ 创建“编译”主任务和“运行”变体:
{ “shell_cmd”: “g++ “$file” -o “$file_base_name””, “working_dir”: “$file_path”, “selector”: “source.c, source.cpp”, “variants”: [ { “name”: “Run”, “shell_cmd”: “”$file_base_name”” }, { “name”: “Compile & Run”, “shell_cmd”: “g++ “$file” -o “$file_base_name” && .”/$file_base_name”” } ]}
说明:
shell_cmd:默认执行的命令(如编译) variants:定义额外的运行方式 name:出现在菜单中的 variant 名称 working_dir:设置工作目录,确保可执行文件能被找到 selector:指定适用的语言语法
3. 保存文件
将文件保存为:
C++ Custom.sublime-build
位置通常是:
Packages/User/C++ Custom.sublime-build
使用 Build System 和 Variant
保存后,在 Sublime 中:
选择:Tools → Build System → C++ Custom 执行默认构建(编译):Ctrl + B 选择 variant 运行:Ctrl + Shift + B,然后从列表中选 “Run” 或 “Compile & Run”
你也可以在 Command Palette(Ctrl+Shift+P)中输入 “Build With” 快速选择 variant。
其他实用技巧
支持多平台判断,用 cmd 替代 shell_cmd 并配合 osx、windows、linux 字段 可用变量如:$file、$file_name、$file_base_name、$file_path 加 “encoding”: “utf-8” 防止中文输出乱码基本上就这些。配置一次,以后就能方便地切换编译和运行模式,提升编码效率。
以上就是sublime如何创建自己的build system variant_sublime自定义Build System Variant方法的详细内容,更多请关注创想鸟其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/86932.html
微信扫一扫
支付宝扫一扫