Sublime Text 可通过配置 build system 实现 Pascal 编译运行,前提是系统已安装并正确配置 Free Pascal(fpc),需验证 fpc -v 能返回版本号,再创建 Pascal.sublime-build 文件,设置语法为 Pascal,并保存至 User 包目录。

Sublime Text 本身不内置 Pascal 支持,但通过配置 build system 可以实现编译和运行(需系统已安装 Free Pascal 编译器 fpc)。关键不是“装插件”,而是让 Sublime 知道怎么调用 fpc 并处理输出。
确认 fpc 已正确安装并可命令行调用
这是最常被跳过的一步。Sublime 的 build system 本质是执行 shell 命令,如果终端里都跑不起来 fpc,Sublime 肯定失败。
- 在终端输入
fpc -v,应返回版本信息(如3.2.2) - Windows 用户注意:若用的是 Lazarus 自带的 fpc,可能未加到
PATH;建议单独下载安装 Free Pascal 官方 Windows 版,勾选“Add to PATH” -
macOS 用户若用
brew install fpc,通常没问题;但 M1/M2 芯片需确认是否为 arm64 架构的 fpc(file $(which fpc)查看)
创建 Pascal build system 文件(.sublime-build)
Sublime 通过 JSON 格式的 .sublime-build 文件定义如何编译。它不依赖插件,纯配置驱动。
- 菜单栏选择 Tools → Build System → New Build System…
- 替换全部内容为以下配置(适配你的系统路径和需求):
{
"cmd": ["fpc", "$file"],
"file_regex": "^(.+?)\\((\\d+)\\)(?:\\s+Inherited|\\s+(Error|Warning|Note|Fatal))",
"selector": "source.pascal",
"variants": [
{
"name": "Run",
"cmd": ["./$file_base_name"]
}
]
}
说明:
-
"cmd": ["fpc", "$file"]是核心:调用fpc编译当前文件(如hello.pas) -
"file_regex"让错误行能双击跳转——Pascal 错误格式通常是hello.pas(5) Error: Identifier not found "x" -
"selector": "source.pascal"表示该 build system 仅对 Pascal 语法高亮的文件生效(需先设置语法为 Pascal) -
"variants"添加了Run子选项:编译后自动执行生成的可执行文件(Linux/macOS 下是./xxx,Windows 需改为"cmd": ["cmd.exe", "/c", "$file_base_name.exe"])
设置文件语法与保存 build system
Build system 不会自动识别 .pas 文件,必须手动指定语法类型,否则 selector 不匹配。
- 打开一个
.pas文件 → 菜单 View → Syntax → Open all with current extension as… → Pascal - 保存刚编辑的 build system:菜单 File → Save As…,路径为:
• Windows:%APPDATA%\Sublime Text\Packages\User\Pascal.sublime-build
• macOS:~/Library/Application Support/Sublime Text/Packages/User/Pascal.sublime-build
• Linux:~/.config/sublime-text/Packages/User/Pascal.sublime-build - 保存后,菜单 Tools → Build System 应出现
Pascal选项;选中它
常见报错与绕过方法
即使配置正确,仍可能遇到这些典型问题:
-
Unable to find target for build system "Pascal":build system 文件名含空格或扩展名不是.sublime-build;或保存路径不在User目录下 - 编译成功但
Run报错Permission denied(Linux/macOS):生成的可执行文件无执行权限。可在 build system 的Runvariant 中加"shell": true并改 cmd 为:["chmod +x $file_base_name && ./$file_base_name"] - 中文路径或文件名导致 fpc 报错:Free Pascal 对非 ASCII 路径支持差。解决办法是把
.pas文件放在纯英文路径下(如~/code/pascal/hello.pas) - Windows 下
Run执行一闪而退:因为控制台窗口立即关闭。可在程序末尾加readln;,或改用cmd.exe /k $file_base_name.exe(/k 保持窗口打开)
真正卡住的往往不是 Sublime 配置,而是 fpc 是否就绪、路径是否干净、错误是否可定位。把终端能跑通作为第一验证标准,比在 Sublime 里反复试错高效得多。










