能跑 perl -v,Sublime Text 就能跑 Perl;不能跑,配什么都白搭。验证前提是终端执行 perl -v 成功,macOS/Linux 用 which perl、Windows 用 where perl 确认路径,且必须通过终端启动 subl 才能继承 shell 的 PATH,再配置 Perl.sublime-build 构建系统并确保右下角显示“Perl”而非“Plain Text”。

能跑 perl -v,Sublime Text 就能跑 Perl;不能跑,配什么都白搭。
验证 Perl 是否真可用
Sublime Text 不自带 Perl,它只调用系统 PATH 里的 perl 可执行文件。所以第一步不是打开 Sublime,而是打开终端(macOS/Linux)或命令提示符(Windows),执行:
perl -v
如果报 command not found 或 'perl' is not recognized,说明 Perl 没装好,或者没加进 PATH。此时配 Sublime 的 Perl.sublime-build 文件毫无意义。
- macOS/Linux:运行
which perl,无输出就去检查~/.zshrc或~/.bash_profile中是否把 Perl 路径(如/opt/homebrew/bin)加进了PATH - Windows:运行
where perl,没结果就重装 Strawberry Perl,并在安装时勾选「Add to PATH」;已安装但找不到,大概率是没重启命令提示符和 Sublime(尤其桌面图标启动的 Sublime 不继承新 PATH) - 最稳验证方式:用终端启动 Sublime —— macOS 输入
subl,Windows 输入subl.exe,这样它才能拿到你当前 shell 的完整 PATH
创建 Perl.sublime-build 构建系统
菜单 → Tools → Build System → New Build System…,清空默认内容,贴入以下最小可用 JSON:
{
"cmd": ["perl", "$file"],
"file_regex": "^(.*?):([0-9]+):?([0-9]+)?:? (.*)$",
"selector": "source.perl",
"encoding": "utf-8"
}
注意几个关键点:
-
"cmd"第一项必须是"perl"字符串,不是路径;只有which perl返回空时才填绝对路径(如 Windows 上写成["C:\Strawberry\perl\bin\perl.exe", "$file"],注意双反斜杠) -
"file_regex"必须匹配 Perl 默认错误格式,例如test.pl line 7.或test.pl:12: syntax error;不匹配,点击错误行就跳不到源码 -
"selector": "source.perl"意味着这个构建系统只对语法识别为 Perl 的文件生效——右下角状态栏必须显示 “Perl”,不是 “Plain Text”。若显示 Plain Text,先用 Ctrl+Shift+P → Set Syntax → Perl
常见失败现象与排查点
按 Ctrl+B 后控制台一片空白、没输出、没报错,是最典型的静默失败。原因几乎全是 JSON 格式问题或环境变量未继承:
- JSON 错一个逗号、少一个引号、多一个空格,Sublime 都会静默忽略整个构建系统,且不报错
- 用桌面图标或开始菜单启动 Sublime,它拿不到你刚改的 PATH,
perl找不到,但也不提示 - 文件保存后没加
.pl后缀,Sublime 不识别为 Perl,selector不匹配,构建系统压根不触发 - 想用
-w开启警告?可以加进"cmd":["perl", "-w", "$file"],但注意某些 Perl 版本(如 perlbrew 管理的)可能因模块路径问题导致-w报错,先去掉再试
真正卡住的地方,往往不是 Sublime 配置本身,而是 perl 这个命令能不能在你启动 Sublime 的那个 shell 里敲出来就跑通。其他所有步骤,都建立在这个前提之上。


















