0

0

Sublime Text如何自定义编译系统_Sublime实现一键运行脚本【教程】

穿越時空

穿越時空

发布时间:2026-02-08 13:14:02

|

376人浏览过

|

来源于php中文网

原创

Sublime Text“一键运行”实为Build System调用系统解释器,需手动配置Python.sublime-build:cmd用["python", "-u", "$file"](Windows写死路径),file_regex设为"^File \"(...*?)\", line ([0-9]+)",保存至Packages/User/。

sublime text如何自定义编译系统_sublime实现一键运行脚本【教程】

Sublime Text 本身不带运行脚本的能力,所谓“一键运行”,本质是靠 Build System 调用系统命令行执行解释器(比如 pythonnodebash),再把输出捕获到面板里。它不是真正的集成终端,也不自动处理路径、环境变量或依赖安装。

怎么创建一个可用的 Python 编译系统

手动写 JSON 配置最可靠,避免插件引入的不可控行为。关键点是:cmd 必须写对解释器路径和参数顺序,file_regex 决定能否双击跳转错误行。

  • cmd 推荐用 ["python", "-u", "$file"]:加 -u 是为了禁用输出缓冲,否则 print 不会实时显示
  • Windows 用户如果没配环境变量,得写死路径,比如 ["C:\\Python39\\python.exe", "-u", "$file"](注意双反斜杠)
  • file_regex 设为 "^File \"(...*?)\", line ([0-9]+)" 才能正确解析 Python 报错位置
  • 保存为 Python.sublime-build,放在 Packages/User/ 目录下(可通过 Preferences → Browse Packages… 进入)

Node.js 脚本运行时 stdout 不刷新怎么办

Node 默认对 TTY 输出做行缓冲,但 Sublime 的构建系统不提供伪终端(pty),所以 console.log("hello") 可能卡住不显示,直到进程退出或缓冲满。

DeepSider
DeepSider

浏览器AI侧边栏对话插件,集成多个AI大模型

下载
  • 临时解决:在 JS 文件开头加 process.stdout.setEncoding('utf8'); process.stdout._handle.setBlocking(true);(不推荐)
  • 正解:改用 ["node", "--unhandled-rejections=warn", "-u", "$file"],其中 -u 启用未缓冲模式(Node v15.12+ 支持)
  • 更稳方案:用 ["sh", "-c", "node $file"]macOS/Linux)或 ["cmd", "/c", "node $file"](Windows),借 shell 层转发输出

为什么 Ctrl+B 没反应或报 “No build system”

常见原因不是配置没生效,而是当前文件没关联到对应构建系统,或构建系统语法有硬伤。

  • 检查右下角状态栏是否显示语言类型(如 Python)——只有匹配 selector 或手动指定,构建系统才会默认启用
  • 如果没设 selector,必须先通过 Tools → Build System → Python 手动选中一次
  • JSON 格式错误会导致整个 Packages/User/ 下的构建系统失效,用在线 JSON 校验器(如 jsonlint.com)粘贴内容快速排查
  • Mac 上若用 Homebrew 安装的 Python,python 命令可能指向 pyenv 或 shims,建议用 which python 确认真实路径

真正麻烦的从来不是写那个 JSON 文件,而是不同系统对路径分隔符、空格、shell 转义的处理差异——比如 Windows 的 cmd 里双引号要转义,而 macOS 的 sh 里空格路径必须用引号包住,这些细节一旦漏掉,Ctrl+B 就只会静默失败。

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

通义千问
通义千问

阿里巴巴推出的全能AI助手

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
json数据格式
json数据格式

JSON是一种轻量级的数据交换格式。本专题为大家带来json数据格式相关文章,帮助大家解决问题。

431

2023.08.07

json是什么
json是什么

JSON是一种轻量级的数据交换格式,具有简洁、易读、跨平台和语言的特点,JSON数据是通过键值对的方式进行组织,其中键是字符串,值可以是字符串、数值、布尔值、数组、对象或者null,在Web开发、数据交换和配置文件等方面得到广泛应用。本专题为大家提供json相关的文章、下载、课程内容,供大家免费下载体验。

543

2023.08.23

jquery怎么操作json
jquery怎么操作json

操作的方法有:1、“$.parseJSON(jsonString)”2、“$.getJSON(url, data, success)”;3、“$.each(obj, callback)”;4、“$.ajax()”。更多jquery怎么操作json的详细内容,可以访问本专题下面的文章。

314

2023.10.13

go语言处理json数据方法
go语言处理json数据方法

本专题整合了go语言中处理json数据方法,阅读专题下面的文章了解更多详细内容。

79

2025.09.10

python中print函数的用法
python中print函数的用法

python中print函数的语法是“print(value1, value2, ..., sep=' ', end=' ', file=sys.stdout, flush=False)”。本专题为大家提供print相关的文章、下载、课程内容,供大家免费下载体验。

191

2023.09.27

python print用法与作用
python print用法与作用

本专题整合了python print的用法、作用、函数功能相关内容,阅读专题下面的文章了解更多详细教程。

9

2026.02.03

js正则表达式
js正则表达式

php中文网为大家提供各种js正则表达式语法大全以及各种js正则表达式使用的方法,还有更多js正则表达式的相关文章、相关下载、相关课程,供大家免费下载体验。

516

2023.06.20

js获取当前时间
js获取当前时间

JS全称JavaScript,是一种具有函数优先的轻量级,解释型或即时编译型的编程语言;它是一种属于网络的高级脚本语言,主要用于Web,常用来为网页添加各式各样的动态功能。js怎么获取当前时间呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

328

2023.07.28

Golang处理数据库错误教程合集
Golang处理数据库错误教程合集

本专题整合了Golang数据库错误处理方法、技巧、管理策略相关内容,阅读专题下面的文章了解更多详细内容。

67

2026.02.06

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
PostgreSQL 教程
PostgreSQL 教程

共48课时 | 8.7万人学习

Git 教程
Git 教程

共21课时 | 3.4万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号