禁用 cspell.enabled 是最直接有效的方法;波浪线主要来自 code spell checker 插件,可通过状态栏 abc 图标或运行扩展列表确认;若仍标红需检查工作区、语言专属及主题配置覆盖;仅隐藏波浪线可设 cspell.showtypes 为 ["warning"];中文误标应禁用拼写检查而非诊断装饰。

cSpell.enabled 设为 false 是最直接有效的做法。VS Code 本身不带拼写检查,你看到的波浪线几乎全部来自 streetsidesoftware.code-spell-checker 插件——关掉它,红线就没了;但别误关 problems.decorations.enabled,否则真实错误也一并隐身。
怎么确认是 code-spell-checker 在标红
右下角状态栏如果显示 ABC 图标,说明它正在运行;没这个图标,波浪线大概率来自别的扩展或配置。按 Ctrl+Shift+P(Windows/Linux)或 Cmd+Shift+P(macOS),输入 Developer: Show Running Extensions,看 Code Spell Checker 是否在活跃列表里。如果没装这个插件,却仍有红线,再查 Spell Right、LanguageTool 或某些 Markdown 预览插件是否悄悄启用了拼写逻辑。
cSpell.enabled 关了还标红?检查三层配置覆盖
常见错误现象:全局设置里已设 "cSpell.enabled": false,重启后某文件里波浪线还在。这不是 Bug,而是配置优先级问题:
- 工作区级(
.vscode/settings.json)配置优先级最高,检查项目根目录下是否有"cSpell.enabled": true - 语言专属配置(如
"[typescript]": { "cSpell.enabled": true })会覆盖全局设置 - 某些主题(如
Nord)把拼写错误样式硬编码进 theme 文件,换回默认主题验证一下
只想隐藏波浪线,但保留后台检查
如果你仍想让插件扫描单词、只不想看到下划线,可改 cSpell.showTypes:
- 该选项从
v2.20+开始支持,旧版本无效 - 设为
["warning"]可保留警告类提示(比如疑似拼错的英文),去掉"error"和"hint"就不画红线绿线 - 注意:这仅影响渲染,不影响插件实际扫描行为
中文注释标红,别关诊断系统,只关拼写检查
中文被标红不是语法问题,是 cSpell 把整段中文当“非法英文单词”处理。这时候最危险的操作是关掉 problems.decorations.enabled——它会让 TypeScript 类型错误、ESLint 未定义变量等真实问题也消失。真正该动的是:
-
"cSpell.enabled": false(全局禁用) - 或更精细地用
cSpell.ignoreRegExpList跳过注释内容,例如:["//.*", "/\*[^]*?\*/", "#.*"] - 确认当前文件语言 ID 正确(按
Ctrl+Shift+P→Change Language Mode),避免plaintext模式触发全量误检
README.md 里的英文错字没人提醒了——拼写检查这东西,开要开得准,关要关得巧,关键得知道它到底在检查谁、在哪检查、凭什么标红。











