sublime构建系统需保存为packages/user/下以.sublime-build结尾的json文件,路径、命名、语法须严格规范,且需手动选中才能生效。

直接在 Tools → Build System → New Build System… 里新建,保存到 Packages/User/ 目录下就生效,不需要重启、不是脚本、也不用编译——它就是一个 JSON 配置文件。
Build System 文件必须放对位置才能被识别
Sublime 只从两个地方加载构建系统:内置只读包(你改不了),和 Packages/User/。丢在桌面、项目根目录、甚至 Packages/ 下其他子文件夹里,都不会出现在 Tools → Build System 菜单中。
- 打开
Preferences → Browse Packages…,确认弹出的是User文件夹,不是Default或别的子目录 - 保存时文件名必须以
.sublime-build结尾,比如Python3_Run.sublime-build - 文件名不能含中文、空格或特殊符号;大小写敏感,
python3.sublime-build和Python3.sublime-build是两个不同文件
JSON 格式错一个字符,Ctrl+B 就会静默失败
常见错误不是报错,而是按 Ctrl+B 后底部面板没反应、没输出、甚至菜单里根本看不到你新建的系统。原因往往藏在 JSON 的细节里:
使用ydata-profiling(前身为pandas-profiling)生成全面的数据质量报告,包含相关性分析、缺失值模式和基数检测。导出交互式HTML仪表板和JSON摘要。
- 末尾多了一个逗号:
"selector": "source.python",→ 最后一项后面不能有逗号 - 路径或字符串用了单引号:
'python'必须改成"python" -
cmd数组里命令名写错,比如写成"python3"但系统 PATH 里只有python,或 Windows 上没加.exe后缀(其实不用加,Sublime 会自动补) -
selector值不对,比如写成"python"或"source.py",正确应为"source.python"(可通过Ctrl+Shift+P → Developer: Show Scope Name查当前文件的作用域名)
cmd 中的变量和常见语言适配要点
cmd 字段决定实际执行什么命令,里面支持的变量直接影响行为是否符合预期:
-
$file:当前文件完整路径,适合运行单个脚本(如 Python、Node.js) -
$file_path:仅目录路径,常配合working_dir使用,避免命令在错误目录执行 -
$file_base_name:不带扩展名的文件名,适合 C 编译时生成同名可执行文件 - Python 必加
-u参数:["python", "-u", "$file"],否则print输出可能被缓冲,看不到实时日志 - Node.js 若需指定版本,可用 nvm 的 shell wrapper:
["sh", "-c", "nvm use 18 && node $file"],但注意shell模式下file_regex解析可能失效
真正容易被忽略的是:构建系统是否被“选中”。即使配置完全正确,如果右下角状态栏显示的是 Automatic 或别的构建系统,Ctrl+B 就不会走你新建的那个。务必手动点开 Tools → Build System,选中你刚保存的名称(比如 Python3_Run),再试一次。










