Sublime Text原生拼写检查默认关闭,需在语法专属设置中启用spell_check并正确配置dictionary路径,仅对非代码文件启用才可靠。

拼写检查默认是关的,开错地方就完全没反应
Sublime Text 原生拼写检查从不自动启用——哪怕你刚装完 Language - English 包、正在写 README.md,只要没手动打开 spell_check,就不会标任何错词。这不是加载慢,是压根没启动。
- 必须在 当前文件对应语法的专属设置里开:菜单 →
Preferences → Settings – Syntax Specific(不是全局Settings) - 如果当前是
.py文件,改全局设置无效;Python 语法默认禁用拼写,spell_check字段在它那儿被忽略 - 状态栏右下角出现
Spell Check才算真正生效,这是唯一可信信号
dictionary 路径写错 = 静默失败,标红但无建议
开了 spell_check 却右键看不到替换建议?八成是 dictionary 路径不对。Sublime 不报错、不提醒、不 fallback,只默默跳过词典加载。
- 正确路径必须是完整相对路径字符串:
"Packages/Language - English/en_US.dic"(注意空格、大小写、“dictionaries”子目录是否存在) -
"en_US"、"en_US.dic"、/Packages/...全部无效 - 验证方法:菜单 →
Preferences → Browse Packages…,打开Language - English/目录,确认里面真有en_US.dic(不是 .aff 或其他后缀) - macOS 用户若加载失败,可把
en_US.dic复制到Packages/User/下,并设为"Packages/User/en_US.dic"
别在代码文件里全局开 spell_check
在全局 Settings 里加 "spell_check": true,会导致所有文件——包括 .py、.js、.json——全被当作文本校验,recieveData、initalize 这类变量名立刻变红。这不是 bug,是设计如此,但完全违背使用意图。
- 推荐做法:只对
Plain Text、Markdown、reStructuredText等非代码语法启用 - 误加进 Python 语法设置后,右键选
Add to Dictionary会把recieveData加进词典——下次真拼错receive就再也看不到了 - 想临时检查某段注释?别硬开语法检查,用
Spell Check Comments插件更安全精准
原生不支持自动纠错,别信“输入即替换”
Sublime 原生拼写检查只标红线、给建议、允许加词,没有自动替换功能。所谓“自动纠错”必须靠插件(如 AutoReplace),但规则要手写,且极易误伤。
- 例如把
teh→the看似安全,但在字符串"teh_api_v2"里替换就直接 break 接口 - 插件无法区分上下文:它不会判断
recieve是变量名还是拼写错误 - 若坚持用自动替换,务必限定作用域,关闭对
source.开头的所有语法支持
拼写检查真正靠谱的边界就三条:只标记、不干预;词典路径写死、不猜;非文本类文件默认关掉 spell_check。其余都是权衡和妥协。

















