vscode界面显示英文的主因是未执行configure display language命令或选错zh-cn值,需通过命令面板调用该命令并重启进程;locale.json必须位于用户级路径且内容为{"locale":"zh-cn"},settings.json中locale字段已弃用。

Configure Display Language 命令没执行或选错值
装了中文包但界面还是英文,90% 是因为跳过了这一步——VS Code 不会自动启用已安装的语言包。Configure Display Language 是唯一能写入生效配置的入口。必须用 Ctrl+Shift+P(Windows/Linux)或 Cmd+Shift+P(macOS)打开命令面板,输入并执行该命令;列表里只认 zh-cn,不是 zh、Chinese 或 zh-hans(后者是插件 ID,不是运行时 locale 值);选完后弹出提示,必须点 Restart,仅关闭再手动打开不算重启——后台 Code Helper 进程不退出,配置就不会加载。
locale.json 文件缺失、格式错误或被覆盖
VS Code 实际只读取 locale.json 里的 {"locale": "zh-cn"},其他地方写的 locale 都无效,包括 settings.json。文件路径必须准确:
Windows: %APPDATA%\Code\User\locale.json
macOS: ~/Library/Application Support/Code/User/locale.json
Linux: ~/.config/Code/User/locale.json
内容必须是合法 JSON:双引号、冒号后有空格、值为小写 "zh-cn"(不是 "zh_CN" 或 "zh-Hans")。如果该文件存在但值是 "en" 或为空,说明被工作区设置、Remote-SSH 环境或 IT 策略插件覆盖;临时关闭文件夹(File > Close Folder)再执行命令可绕过干扰。
插件缓存损坏或残留导致加载失败
即使 locale.json 正确、插件也显示“已安装”,部分菜单仍英文,大概率是缓存没清干净。关掉所有 VS Code 进程后,删掉缓存目录:
Windows: del /s /q "%APPDATA%\Code\Cache"
macOS/Linux: rm -rf ~/.cache/Code
同时检查扩展目录下是否有半安装残留:
Windows: %USERPROFILE%\.vscode\extensions
macOS/Linux: ~/.vscode/extensions
删掉形如 ms-ceintl.vscode-language-pack-zh-hans-* 的整个文件夹(别删父级 extensions 目录);再确认 settings.json 里没有残留的 locale 或 typescript.locale 配置项。
离线安装 vsix 包版本不匹配或 ZIP 结构损坏
从官网下载的 MS-CEINTL.vscode-language-pack-zh-hans-1.90.2.vsix 不能直接装进 1.91.0-insider,报 not compatible with Code 就是这个原因。先用 unzip -l your-plugin.vsix 确认根目录下有 extension/package.json;解压后修改其中的 "engines": {"vscode": "^1.85.0"} 字段,改成你本地 code --version 输出的主版本号(如 1.91.0 → 改成 "^1.91.0");重新打包必须用 zip 命令或 7-Zip,Windows 资源管理器双击解压再重命名会破坏 ZIP 结构,导致安装静默失败。
最常被忽略的是:语言包只是翻译素材,“装上”和“生效”是两件事。VS Code 启动时只看 locale.json 和扩展主机是否成功加载对应资源,任何一层出问题都会让中文消失——而且不会报明显错误,只会安静地回退到英文。











