vs code离线安装中文语言包后菜单仍英文,主因是locale.json未正确配置或被覆盖;必须执行configure display language命令生成严格格式{"locale":"zh-cn"}的文件,并彻底终止进程后重启生效。

确认语言包是否真正生效
VSCode 离线安装语言包后菜单仍为英文,大概率不是安装失败,而是 locale.json 配置未生效或被覆盖。VSCode 启动时优先读取用户级配置而非插件安装状态,即使语言包已放入 ~/.vscode/extensions/(macOS/Linux)或 %USERPROFILE%\.vscode\extensions\(Windows),若 locale.json 里没写对值,界面照样不切换。
检查方式:打开命令面板(Ctrl+Shift+P / Cmd+Shift+P),输入并执行 Configure Display Language —— 它会自动打开 locale.json。确保内容形如:
{
"locale": "zh-cn"
}
注意:"zh-cn" 必须全小写、带短横、无空格;"zh_CN"、"zh"、"Chinese" 均无效。
离线语言包必须匹配 VSCode 主版本号
VSCode 语言包是按主版本严格绑定的,比如你用的是 1.93.1,却装了 1.92.0 对应的 vscode-language-pack-zh-hans-1.92.0.vsix,安装虽成功,但运行时加载失败,控制台(Help → Toggle Developer Tools → Console)会报类似错误:
Failed to load language pack: zh-cn (from extension xxx) — version mismatch
解决方法:
- 在 VSCode 关于页(
Help → About)确认完整版本号,例如1.93.1 - 去官方语言包发布页(
https://github.com/microsoft/vscode-loc/releases)找对应 tag 下的vscode-language-pack-zh-hans-X.YY.Z.vsix - 卸载旧包:
Extensions → 点击语言包右侧 … → Uninstall,重启后再安装新版
Windows 用户特别注意系统区域设置干扰
某些 Windows 版本(尤其是教育版/企业版)启用了“区域设置继承策略”,会强制将 VSCode 的 UI 语言回退到系统区域语言(如系统设为英语,即使 locale.json 是 zh-cn,菜单也显示英文)。
验证和修复步骤:
- 打开 Windows 设置 →
Time & Language → Language → Administrative language settings - 点击
Copy settings…,勾选Current user和Welcome screen and new user accounts,点确定 - 重启 VSCode,再执行一次
Configure Display Language确保保存
如果仍无效,可临时在 VSCode 启动命令行加参数验证:code --locale=zh-cn。若此时中文正常,则基本锁定是系统策略覆盖问题。
重启方式不对导致配置未重载
很多人点了右上角关闭按钮或 File → Close Window,以为是“退出 VSCode”,其实只是关窗口,后台进程仍在运行,locale.json 修改不会生效。真正的重启必须彻底终止进程:
- macOS:Activity Monitor 中结束所有
Code Helper和Electron进程,或终端执行pkill -f "Code Helper" - Windows:任务管理器中结束
Code.exe及所有子进程(特别是Code Helper (Renderer)) - Linux:终端执行
pkill -f "code"
之后再从桌面图标或命令行重新启动,才能确保新 locale 加载。
最常被忽略的一点:语言包安装后,VSCode 不会自动提示“需要重启”,也不会弹窗确认生效——它静默失败,而用户误以为“已经好了”。手动杀进程 + 再启动,是离线场景下最可靠的验证动作。











