
Sublime Text 原生不支持 COBOL,连 IDENTIFICATION DIVISION 都不会高亮——这不是你配错了,是压根没这个语言包。
怎么让 .cbl 文件显示 COBOL 高亮
Sublime 不会自动识别 .cbl、.cob 或 .cpy,右下角显示 “Plain Text” 是常态。
- 用 Package Control 安装
havok2063/COBOL包(兼容 ANSI-85,别选其他冷门分支) - 保存文件,扩展名必须是
.cbl或.cob(.txt或无后缀无效) - 点击右下角语法标签 → 选
COBOL;之后再点View → Syntax → Open all with current extension as… → COBOL,才能永久绑定 - 高亮失效?先检查文件是否已保存到磁盘——未保存的临时缓冲区不触发语法匹配
为什么 cobc 编译失败但错误不跳转
构建系统里 file_regex 没对上 GnuCOBOL 实际报错格式,就只能看到红字,点不了错误行。
- GnuCOBOL 报错固定形如:
hello.cbl:12:7: error: syntax error, unexpected END OF LINE -
file_regex必须严格匹配:"^([a-zA-Z0-9._/-]+):([0-9]+):([0-9]+):? (.*)$"——少一个括号或字母顺序错,跳转就失效 -
shell_cmd中若用了-free,而源码是固定格式(列 8–72),也会导致编译失败但错误被忽略 -
working_dir必须设为"${file_path}":否则COPY语句找不到.cpy文件
为什么开了 highlight_line 却看不到当前行高亮
不是设置没生效,而是高亮被“盖住”或“压根没定义”。
- 在用户设置中加
"highlight_line": true后,颜色由当前color_scheme文件里的lineHighlight规则决定 - 很多主题(尤其是自定义 UI 主题或老版本主题)根本没定义
lineHighlight,结果就是“开了等于没开” - 手动编辑
.sublime-color-scheme文件,在rules数组末尾加一条:{"name": "Current Line", "scope": "region.line", "background": "#2f3337"} - 注意:
region.line是 Sublime 内部固定 scope 名,写成region.line小写或漏掉background值都会失效
真正容易被忽略的是:highlight_line 只作用于光标所在行,不是选中行;且它和 COPY 路径、file_regex 捕获组、语法绑定这三件事一样,任一环节断掉,整个 COBOL 开发流就卡在“看起来能用,其实不能用”的状态。


















