拼写检查语言切换必须在Settings–Syntax Specific中配置dictionary路径才生效;F6或右键仅临时切换且不保存,全局设置或路径错误均静默失效,状态栏显示“Spell Check”是唯一可信开启信号。

拼写检查语言切换必须走 Syntax Specific 设置
Sublime 的 spell_check 不支持全局语言切换,按 F6 或右键菜单里的 “Spell Check” 仅临时开启/关闭当前视图,关掉文件就重置。真正生效的语言切换,必须在当前文件语法对应的 Settings – Syntax Specific 中配置 dictionary 路径——不是 Preferences → Settings(全局),也不是右键随便点一下。
常见错误现象:状态栏没出现 “Spell Check”,右键无建议词、Add to Dictionary 灰掉、标红线但悬停无提示。90% 是因为改错了设置位置或路径格式。
- 打开一个
.md或.txt文件(确保右下角语法标识是 Plain Text / Markdown) - 菜单 → Preferences → Settings – Syntax Specific
- 在右侧用户面板中写入完整配置,例如:
{"spell_check": true,"dictionary": "Packages/Language - English/en_US.dic"} - 保存后,状态栏立刻显示 “Spell Check”,错词才真正被识别
中英文混合校对不能靠原生功能实现
Sublime 原生拼写检查是单字典、全文本扫描机制,不区分中英文、不识别语种边界、不支持自动语言检测。你配了 en_US.dic,中文词全标红;配了 zh_CN.dic,英文单词又全放过——根本不存在“混合校对”这回事。
所谓“中英混排文档校对”,实际只有两种可行路径:
- 用
AutoSpell插件:通过 Package Control 安装后,右键 → AutoSpell → Toggle Spell Check + Language 切换,它能同时加载多个词典并按词干判断语种(需手动指定区域或依赖插件逻辑) - 分文件处理:英文段落存为
.md并配en_US.dic,中文段落另存为.txt并配Packages/User/zh_CN.dic(注意该文件需 UTF-8 无 BOM,且不能有 .aff 配套文件)
别试 spelling_selector 或正则过滤——Sublime 的 scope 系统无法可靠提取中英文混合文本中的独立单词边界,结果要么漏检,要么误标变量名。
dictionary 路径写错 = 静默失效,没有报错也没有提示
Sublime 对 dictionary 路径极其严格:多一个斜杠、少一级目录、大小写错、空格多一个,都会导致词典加载失败。失败表现是:标红线但无右键菜单、悬停无建议、Add to Dictionary 不可用——它不会告诉你哪错了,只会沉默。
验证路径是否有效:
- 菜单 → Preferences → Browse Packages… → 打开
Language - English/目录 → 确认存在en_US.dic(不是en_US.aff,也不是在dictionaries/子目录里) - 正确路径只有一种:
"Packages/Language - English/en_US.dic" - macOS 或权限受限时,可把
en_US.dic复制到Packages/User/,然后设为"Packages/User/en_US.dic" - Windows 下必须用正斜杠
/,反斜杠\会直接失效
中文词典需手动准备,且效果有限
Sublime 原生不带中文词典,Packages/ 下默认没有 Language - Chinese。想启用中文拼写检查,必须自己找一份 UTF-8 编码、无 BOM、纯文本的 zh_CN.dic(常见来源是 LibreOffice 中文词典导出),放进 Packages/User/,再配 "dictionary": "Packages/User/zh_CN.dic"。
但要注意:
- 原生机制不支持中文分词,它把整行当单词切分,所以 “我爱编程” 会被当成一个词校验,而非 “我”“爱”“编程” 三个词
- 没有纠错建议,只能标红+右键忽略或加词典
- 中英文混排时,只要一个字不在词典里,整块连续中文都可能被标红
真正需要中英文混合校对的场景,AutoSpell 是目前唯一稳定可用的选择,其他方案都在赌路径、赌权限、赌运气。

















