根本原因是未执行configure display language命令生成locale.json;该命令是唯一能正确写入{"locale":"zh-cn"}并启用中文的入口,其他方式(如改settings.json)在vs code 1.70+中已弃用且无效。

VSCode装完中文语言包重启后还是英文,根本原因不是插件没装好,而是locale.json没生成或没写对值——所有其他操作(改settings.json、删缓存、重装插件)都绕不开这一步。
为什么Configure Display Language命令必须执行
中文语言包插件只提供翻译资源,不自动启用;VS Code不会根据插件安装状态反向修改语言配置。只有Configure Display Language命令能触发写入locale.json这个关键文件,其他任何方式(包括手动编辑settings.json)在 VS Code 1.70+ 版本中已被弃用且完全无效。
常见错误现象:
- 装完插件直接关机再开,界面仍是英文
- 在设置里搜“locale”看到选项但点不了(灰显)
- 改了
settings.json加"locale": "zh-cn",保存重启后无反应
实操建议:
- 按
Ctrl+Shift+P(Windows/Linux)或Cmd+Shift+P(macOS)打开命令面板 - 输入
Configure Display Language,回车 - 从下拉列表中**明确选择
zh-cn**(不是zh、zh-CN、Chinese (Simplified)) - 看到提示后务必点
Restart,不是Reload Window
locale.json文件位置与内容校验
VS Code 实际靠locale.json控制语言,路径因系统而异,但内容必须严格为{"locale":"zh-cn"}——多一个空格、少一个引号、用中文标点都会导致静默失败,退回到英文。
检查方法:
- Windows:
%APPDATA%\Code\User\locale.json - macOS:
$HOME/Library/Application Support/Code/User/locale.json - Linux:
$HOME/.config/Code/User/locale.json
确认内容是否为:
{"locale":"zh-cn"}
注意:
- 文件不存在 → 说明
Configure Display Language从未成功执行 - 文件存在但值不是
"zh-cn"→ 被其他操作(如工作区设置、脚本注入)覆盖 - 文件权限为只读(尤其 WSL 或远程开发挂载场景)→ VS Code 写入失败,需
chmod 600 locale.json
多层配置冲突怎么排查
VS Code 的语言配置有四层优先级:命令行参数 > 工作区.vscode/settings.json > 用户settings.json > 系统区域设置。任意一层写错都会覆盖上层。
典型干扰源:
- 工作区根目录下
.vscode/settings.json里写了"locale": "en" - 远程开发(SSH/Dev Container)时,远程端的
locale.json未同步或被重置 - 快捷方式目标路径末尾误带
--locale=en(某些企业镜像会偷偷注入)
排查建议:
- 临时关闭工作区(
File > Close Folder),再执行Configure Display Language看是否生效 - 终端运行
code --status | grep -i locale,确认当前生效的 locale 值 - 连接远程环境前先确认本地已生效;连接后再次运行命令(远程实例有独立
locale.json)
部分菜单/右键项仍是英文?这不是 bug
VS Code 基于 Electron,部分 UI 元素(如右键菜单里的Copy Path、Reveal in Explorer,终端标签页的Terminal文字)由底层 Chromium 或操作系统提供,不受 VS Code 语言包控制。
这类现象无需修复,也不代表配置失败。真正需要关注的是主界面、设置页、命令面板、调试面板等核心区域是否已汉化。
容易被忽略的关键点:
-
locale.json必须由 VS Code 自己写入,手动生成或编辑极易出错 - 重启必须是彻底退出进程(右键托盘图标选
Quit,或killall -9 code),仅Reload Window无效 - macOS/Linux 下若用 alias 启动(如
alias code='code --locale=zh-cn'),新终端要重载 shell 配置才生效











