先确认是否使用绝对路径并添加--allow-unverified参数,再检查code命令是否注册、vscode是否已加载工作区并获得焦点,最后确保语言包已单独安装启用且文件类型被正确识别。

code --install-extension 装不进 spellchecker.vsix?先看路径和签名
离线装拼写检查扩展(比如 streetsidesoftware.code-spell-checker)最常卡在命令行报错却没提示,本质是两件事没做对:路径不是绝对路径、没加 --allow-unverified。VSCode 在离线环境下无法连接微软证书服务器,遇到任何未联网验签的 .vsix 都会静默拒绝,哪怕文件是从官网下载的。
必须用绝对路径 + 允许非验证安装:
- Windows:
code --install-extension "C:/downloads/code-spell-checker-2.27.0.vsix" --allow-unverified - macOS/Linux:
code --install-extension /Users/me/Downloads/code-spell-checker-2.27.0.vsix --allow-unverified
如果提示 command not found: code,不是 PATH 没配,而是 VSCode 本身没注册 CLI:打开 VSCode → Ctrl+Shift+P → 输入 Shell Command: Install 'code' command in PATH → 回车执行。
拖拽安装没反应?你可能还没“真正启动”VSCode
把 code-spell-checker-2.27.0.vsix 直接拖进编辑区是最稳的方式,但 VSCode 对环境很挑剔——它只响应三种状态下的拖拽:已加载工作区(哪怕只是空文件夹)、窗口有系统焦点、且没处于全屏或远程连接未就绪状态。
常见假失败现象:
- 拖进空白启动页(Welcome 页面)→ 完全无反应
- 任务栏图标灰着、窗口最小化或被其他程序遮挡 → 拖拽坐标失效
- 右下角显示
Extensions disabled by policy→ 组策略已全局禁用,GUI 和 CLI 都无效
验证是否就绪:打开任意文件夹 → 确保编辑区是白底可编辑状态 → 点击一下编辑区获取焦点 → 再拖。
装完看不到拼写红线?缺的是语言包,不是插件本身
streetsidesoftware.code-spell-checker 安装成功后默认只带英语词典,中文、法语、Python 关键字等都得额外装语言包扩展,比如 streetsidesoftware.code-spell-checker-langpack-zh-cn。这些语言包也是独立的 .vsix,必须单独下载、单独安装。
更关键的是:语言包不是“装上即用”,必须手动启用。打开扩展面板 → 搜索 zh-cn → 点击启用按钮(不是安装按钮)→ 重启 VSCode。
如果仍不标红,检查当前文件类型是否被识别为 plaintext:右下角语言模式应显示 Python 或 Markdown,而不是 Plain Text;否则插件不会触发检查。
为什么 Python 文件里拼写检查不工作?LSP 和依赖链容易漏
拼写检查本身不依赖 LSP,但如果你同时装了 Python 扩展(ms-python.python),它的语言服务可能会覆盖或干扰拼写检查的高亮逻辑——尤其当 "editor.suggest.showWords": false 这类设置被 Python 扩展注入时。
排查建议:
- 临时禁用
ms-python.python,看拼写红线是否恢复 - 确认
settings.json中没写死"cSpell.enabled": false - 检查
cSpell.language是否包含当前文件语言,例如:"cSpell.language": "en,python,zh-cn"
离线环境最易忽略的一点:语言包扩展的 extensionDependencies 字段可能指向其他未安装的包,而 VSCode 不会提示缺失——它只是默默跳过检查。所以装完主扩展后,务必去 package.json 里翻一遍 extensionDependencies 数组,逐个补全。











