必须装Language CoffeeScript插件、手动绑定.coffee语法为CoffeeScript、缩进严格设为2空格,三者缺一不可,否则文件显示Plain Text且功能失效。

装错插件、没手动绑定语法、缩进不是2空格——这三件事只要有一件没做对,.coffee 文件就永远是 Plain Text,高亮、编译、括号匹配全失效。
必须装 Language CoffeeScript,不是 CoffeeScript
很多人搜“CoffeeScript 插件”随手点了第一个,结果装的是早已废弃的 CoffeeScript(无 Language- 前缀)或 SublimeCoffeeScript。这两个包用的是过时的 .tmLanguage 格式,在 Sublime Text 3/4 上直接不工作:右下角永远显示 Plain Text,关键词全黑,缩进无分层。
- 正确做法:
Ctrl+Shift+P→ 输入Install Package→ 等列表加载完 → 搜索并安装Language CoffeeScript(作者 jashkenas,官方维护) - 装完后打开任意
.coffee文件,右下角状态栏**必须显示CoffeeScript**;若仍是Plain Text,说明没生效 - 检查
Packages/User/下是否残留旧插件目录(如CoffeeScript/),有则手动删掉 - 别手动丢
CoffeeScript.tmLanguage文件进Packages—— Sublime Text 3/4 已弃用该格式,会和Language CoffeeScript冲突
.coffee 文件右下角还是 Plain Text?手动绑定是唯一可靠解法
Sublime 不会自动把 .coffee 后缀和语法绑定,尤其对新建空文件或无 shebang 的文件,识别率极低。这不是 bug,是它的默认策略:仅靠扩展名不够,还需内容特征辅助判断。
- 打开一个
.coffee文件,点击右下角状态栏(当前显示Plain Text)→ 选CoffeeScript - 再点菜单
View → Syntax → Open all with current extension as…→ 确认弹窗中显示.coffee并已关联到CoffeeScript语法 - 新建文件后务必再点一次右下角手动设语法——Sublime 不继承上一个标签页的语法设置
- 已有文件改完后需关闭重开,或
Ctrl+Shift+P→ 输入Reload Syntax回车 - 进入
Preferences → Settings – Syntax Specific,确认里面没有"syntax"或"extensions"字段强行覆盖
缩进一动,高亮全丢、右下角跳回 Plain Text
CoffeeScript 语法解析器对空白符零容忍。Sublime 一旦检测到 Tab 和空格混用、或缩进宽度 ≠ 2,就会直接放弃渲染:关键词变黑、缩进无分层、甚至自动降级语法。
立即学习“前端免费学习笔记(深入)”;
- 菜单 →
View → Indentation → Convert Indentation to Spaces - 再点
Indentation → Tab Width: 2 - 在
Preferences → Settings(用户设置)中加一行:"detect_indentation": false,禁用自动探测 - 对已存在文件,执行一次
Convert Indentation to Spaces,然后关闭再重开 - 改完后观察右下角是否稳定显示
CoffeeScript,且关键字(如if、for、->)开始有颜色分层
构建系统报 Unable to find command coffee 或静默失败
你在终端能跑 coffee --version,不代表 Sublime 能调到它。Sublime 构建系统启动时读取的是它自己的环境变量,不继承 shell 的 PATH。
- 先查真实路径:
Windows:CMD 运行where coffee,结果类似C:\Users\xxx\AppData\Roaming\npm\coffee.cmd
macOS/Linux:终端运行which coffee,结果类似/usr/local/bin/coffee - 构建系统 JSON 中:
Windows 的"cmd"必须写"coffee.cmd"(不是coffee)
macOS/Linux 可加"path": "/usr/local/bin:/opt/homebrew/bin" - Sublime 控制台(
Ctrl+`)里运行import os; print(os.environ.get('PATH')),确认输出里有上述路径 - 保存构建文件为
CoffeeScript.sublime-build,放在Packages/User/目录下
最常被忽略的一点:语法高亮正常 ≠ 构建能跑。哪怕右下角稳稳写着 CoffeeScript,只要 cmd 路径写错、.cmd 后缀漏掉、或 path 没配对,Ctrl+B 就只会静默失败或弹出错误框——它不会告诉你哪里错了,只让你反复怀疑自己是不是漏装了什么。


















