必须用?vscodeVersion=精确版本号参数触发Marketplace回溯下载,或手动构造_apis/public/gallery直链;下载后需解压修改package.json中engines.vscode字段并重打包为.vsix,再通过命令面板安装,最后执行Configure Display Language并重启。

怎么下载到匹配的旧版中文包
VSCode 旧版本语言包必须和本地 code --version 输出的**精确主版本号**一致,比如你用的是 1.87.2,就得找 vscode-language-pack-zh-hans-1.87.*.vsix,不能只看 1.87 就随便下个 1.87.0 或 1.87.10——补丁号不匹配会 404 或静默失败。
官方唯一可靠渠道是 Marketplace 页面加参数回溯:
- 打开 官网页面
- 在 URL 末尾追加
?vscodeVersion=1.87.2(把你自己的版本号填进去) - 刷新后右下角出现 Install Another Version… 下拉菜单,选对应版本下载
若菜单灰显,说明该版本未发布,需改用 API 直链:
把 https://marketplace.visualstudio.com/_apis/public/gallery/publishers/MS-CEINTL/vsextensions/vscode-language-pack-zh-hans/1.90.0/vspackage 中的 1.90.0 替换为你需要的旧版号(如 1.87.2),粘贴到浏览器下载。
安装前必须改 engines.vscode
旧版 VSCode(尤其是 ≤1.85)对 package.json 里的 "engines": {"vscode": "^1.87.0"} 校验极严。直接安装大概率报错 Extension is not compatible with Code x.x.x,甚至不报错但界面不变。
必须解压修改再重打包:
- 用
7-Zip(Windows)或unzip(macOS/Linux)解压.vsix文件 - 编辑
extension/package.json,把"vscode": "^1.87.0"改成"vscode": ">=1.87.0"或更稳妥的"vscode": "=1.87.2" - 用同一工具重新打包为
ZIP,再把后缀名改为.vsix
别用资源管理器双击解压再拖回去——ZIP 结构会被破坏,VSCode 启动时校验失败,直接跳过加载。
离线安装必须走命令面板,不能双击
VSCode 自 1.70 起已禁用双击或拖拽 .vsix 安装方式。它只会把文件复制进 ~/.vscode/extensions/(或 Windows 的 %USERPROFILE%\.vscode\extensions\),但不注册扩展 ID、不触发语言资源加载流程。
正确操作路径唯一:
- VSCode 中按
Ctrl+Shift+P(macOS 是Cmd+Shift+P) - 输入
Extensions: Install from VSIX→ 回车 - 在弹出的文件选择框中定位并选中你处理好的
.vsix文件 → 点Install
装完后别急着关,立刻执行 Configure Display Language → 选 zh-cn → Restart。漏掉这步,状态栏右下角永远显示 en。
重启后还是英文?重点查这三处
不是插件没装上,而是环境或配置覆盖了语言设置:
-
后台进程没杀干净:Windows 用任务管理器干掉所有
Code.exe;macOS/Linux 执行pkill -f "Code Helper"和pkill -f Electron -
系统 locale 干预:Windows 若区域设为 English (United States) 且勾了「Beta: Use Unicode UTF-8」,VSCode 会跳过语言包;macOS/Linux 检查
echo $LANG,如果是en_US.UTF-8,临时改export LANG=zh_CN.UTF-8再启 VSCode -
settings.json 里写了错误 locale:删掉任何形如
"locale": "zh-CN"、"locale": "zh_hans"或"locale": "en"的硬编码项——VSCode 只认"zh-cn",且必须写在locale.json里,不是settings.json
最常被忽略的是:旧版 VSCode(≤1.75)默认不启用 vs/nls.js 模块,即使语言包装对了也白搭。如果内网部署的是这种老版本,得先升级 VSCode 主程序,再装包。


















