Sublime Text一键配置运行测试脚本

雨枫君_5383

雨枫君_5383

2026-08-17

1000人浏览

原创

sublime text 一键运行 python 本质是配置正确的 build system:必须用绝对路径指定 python 解释器、加 -u 参数禁用缓冲、含 "$file" 动态传入当前文件,且 file_regex 和 selector 需精准匹配错误格式与语法类型,否则 ctrl+b 无输出或不跳转错误。

sublime text一键配置运行测试脚本

Sublime Text 本身不运行脚本,它只调用系统命令行执行解释器。所谓“一键配置运行”,本质是写对 Python.sublime-build 文件里的 cmd、file_regex 和 selector 这三项——错一个,Ctrl+B 就没输出、不跳错误、甚至根本不动。

怎么写对 cmd:路径、参数、平台差异全得管

cmd 不是随便填个 python 就行。它必须能被 Sublime 启动的子进程真正执行到:

  • 先在终端里确认 python --version 或 python3 --version 能返回结果;不行就说明没进 PATH,得写死路径,比如 Windows 上:["C:\Python311\python.exe", "-u", "$file"](注意双反斜杠)
  • -u 必须加——否则 print() 输出会卡住,直到脚本结束才刷出来
  • macOS/Linux 用户如果用 python3 命令,cmd 就得写成 ["python3", "-u", "$file"],不能混用
  • 想让脚本在文件所在目录运行(尤其涉及相对路径读写),加上 "working_dir": "$file_path"

file_regex 写错,双击报错行就失效

Sublime 的构建面板靠 file_regex 解析错误位置,从而支持双击跳转。Python 默认报错格式是:

File "demo.py", line 5, in <module></module>

对应正则必须严格匹配,推荐用这个:

Sublime Text Build Linux版
Sublime Text Build Linux版

Sublime Text Linux x86-64 deb 安装包。官方也提供 rpm、tar.xz 和软件源安装方式。

下载

"file_regex": "^File "(.+?)", line ([0-9]+)"

  • 别漏掉开头的 ^,否则可能匹配到中间某行的字符串里
  • 括号要转义成 ",不然 JSON 解析失败
  • Windows 路径含反斜杠时,正则不用特别处理,Sublime 会自动适配

为什么 Ctrl+B 没反应?大概率是 selector 或手动选择没做

即使 .sublime-build 文件内容完全正确,如果当前文件没被识别为 Python,构建系统也不会自动启用:

  • 右下角状态栏必须显示 Python(不是 Plain Text 或空),这靠 "selector": "source.python" 控制
  • 如果新建文件还没保存(.py 扩展名未生效),或语法高亮没设对,Sublime 就不会关联该构建系统
  • 最稳做法:先手动点 Tools → Build System → Python 选一次,再按 Ctrl+B
  • 也可以临时用 Tools → Build With… 弹出菜单选,绕过自动匹配逻辑

运行时卡住、无输出、input() 失效怎么办

这不是配置错了,而是 Sublime 构建系统的能力边界:

  • 输出面板不是伪终端(pty),所以 input() 无法输入,会直接抛 EOFError
  • Node.js 或某些 C 扩展脚本若 stdout 不刷新,加 -u 无效时,可改用 shell 中转:["sh", "-c", "python -u $file"](macOS/Linux)或 ["cmd", "/c", "python -u $file"](Windows)
  • 脚本路径含中文或空格?$file 会被自动加引号,一般没问题;但极少数旧版解释器可能崩,这时改用 $file_path/$file_name 拆开拼接

真正容易被忽略的是:构建系统一旦保存,修改后必须重启 Sublime 或切换一次构建系统才能重载——改完 JSON 不生效,八成是忘了这步。

相关文章

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
PixTV官网入口地址合集
PixTV官网入口地址合集

本专题汇总了 PixTV AI 一站式视频创作平台的官方入口与使用教程。无需下载软件,浏览器直接访问即可使用。平台将剧本、图像、视频、声音与剪辑整合在“无限画布”中,接入 GPT Image 2.5、Seedance 2.5 等头部模型。本专题整理了从新建画布、角色锚定、分镜拆分到视频生成与导出的完整操作指南,助你快速上手 AI 短剧与漫剧创作。

2026.10.10

40

15

Kratos框架HTTP与gRPC服务开发教程
Kratos框架HTTP与gRPC服务开发教程

本专题围绕Kratos框架双协议服务开发,涵盖HTTP路由与处理器编写、参数获取、gRPC服务实现与客户端调用、metadata上下文传递、encoding编解码注册、统一响应封装、超时控制与流式响应实现方法。

2026.10.10

20

15

Kratos框架Protobuf接口定义与代码生成合集
Kratos框架Protobuf接口定义与代码生成合集

本专题讲解Kratos框架接口定义体系,涵盖proto编写规范、proto add/client/server生成命令、http注解路由、validate校验、OpenAPI文档生成、跨服务proto复用与兼容性设计。

2026.10.10

0

15

C++虚函数怎么定义和调用
C++虚函数怎么定义和调用

C++虚函数是实现运行时多态的重要机制。本专题从virtual关键字的基本用法入手,介绍基类与派生类之间的函数重写、基类指针调用派生类方法,以及动态绑定的执行过程,帮助初学者掌握虚函数的核心语法。

2026.10.10

20

26

C++类与对象的封装方法教程
C++类与对象的封装方法教程

C++封装是面向对象编程的核心特性之一,通过类将数据与操作数据的函数组织在一起,并利用访问权限控制外部访问。本专题介绍类的定义、成员变量、成员函数以及public、private和protected的使用方法,帮助初学者掌握封装的基本原理。

2026.10.10

20

32

C++构造函数定义与调用方法
C++构造函数定义与调用方法

C++构造函数用于初始化类对象,是面向对象编程的重要基础。本专题从构造函数的定义、声明和调用入手,介绍默认构造函数、带参数构造函数、拷贝构造函数及成员初始化列表,帮助初学者掌握对象创建与初始化的基本方法。

2026.10.10

20

16

Kratos框架零基础入门教程
Kratos框架零基础入门教程

本专题整理Kratos框架入门内容,涵盖Go环境准备、kratos CLI安装升级、new命令创建项目、目录结构分层说明、服务启动与双协议端口、依赖下载报错排查,帮助开发者快速跑通第一个Kratos框架微服务应用。

2026.10.10

20

15

C++条件判断语句怎么写
C++条件判断语句怎么写

C++条件判断是控制程序执行流程的重要基础。本专题介绍if、if-else、else if和switch等常见分支语句,结合条件表达式、比较运算符与代码示例,帮助初学者掌握不同场景下的判断逻辑。

2026.10.10

0

13

C++变量怎么声明和赋值
C++变量怎么声明和赋值

C++变量是编写程序和存储数据的基础。本专题围绕变量声明、定义、初始化、赋值和类型选择等内容展开,帮助初学者理解不同变量的用法,并掌握在实际代码中定义和使用变量的方法。

2026.10.10

20

20

热门下载

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

精品课程

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