中文界面验证失败时,应首先检查命令面板(ctrl+shift+p)是否汉化,因其最敏感响应locale.json变更;若仍为英文,说明语言配置未加载成功,需确认locale.json存在且格式正确、进程已彻底退出、无更高优先级locale设置覆盖,并排除插件干扰。

中文界面验证失败时,先看命令面板是否已汉化
命令面板(Ctrl+Shift+P)是验证语言切换是否生效的最敏感指标——它最先响应 locale.json 变更,且不依赖任何插件。如果这里还是英文,说明语言配置根本没加载成功。
常见现象:Configure Display Language 执行后点了 Restart,但命令面板仍显示 “Preferences: Open Settings” 而不是 “首选项:打开设置”。
- 检查
locale.json是否真实存在且内容为{"locale":"zh-cn"}(注意小写、连字符、无空格、UTF-8 无 BOM) - 确认 VS Code 进程已全部退出:Windows 查任务管理器中所有
Code.exe,macOS 查活动监视器中Electron,Linux 用pkill -f code - 不要只关窗口——托盘图标右键“退出”或终端执行
code --no-sandbox --disable-gpu --log trace观察启动日志里是否有--locale=zh-cn
菜单栏和设置页仍是英文?大概率 locale.json 被覆盖
VS Code 的语言配置优先级是:远程环境 > 工作区 .vscode/settings.json > 用户级 locale.json。只要其中任意一层写了 "locale": "en",就会强制覆盖中文。
典型场景:你刚在某个项目里配过英文调试环境,.vscode/settings.json 里留了 "locale": "en";或者用了 Remote-SSH,远程机器上没装语言包也没执行 Configure Display Language。
- 临时关闭工作区:
File > Close Folder,再执行Configure Display Language看是否变中文 - 检查工作区根目录下是否存在
.vscode/settings.json,搜索locale字段并删掉整行 - 连接远程开发前,先确保本地已生效;连接后,在远程窗口里再运行一次
Configure Display Language
Git 面板、调试控制台等局部仍英文,不是语言包问题
这些组件由各自插件或底层模块独立渲染,不走 VS Code 主 UI 的 locale 流程。比如 GitLens 的状态栏文字、Prettier 的输出日志、调试控制台的堆栈信息,它们是否汉化取决于对应插件自身是否适配 locale,而非 VS Code 设置。
别急着重装语言包——先做最小验证:
- 切换回默认主题(
Preferences: Color Theme→Default Dark+),排除第三方主题干扰 - 禁用所有非必要插件,只留
Chinese (Simplified) Language Pack,重启后看主菜单、设置页、命令面板是否全中文 - 某些插件有独立语言设置项,例如
gitlens.language或prettier.locale,需单独设为zh-cn
手动改 locale.json 比命令面板更可靠?只在特定场景下成立
Configure Display Language 命令失效时(比如 UI 卡死、命令面板打不开、列表里没 zh-cn),直接编辑 locale.json 是有效兜底手段,但它不是“更优解”,而是“绕过故障路径”。
关键前提是:你得知道文件在哪、权限是否正常、格式是否严格合规。
- 路径必须准确:
%APPDATA%\Code\User\locale.json(Windows)、$HOME/Library/Application Support/Code/User/locale.json(macOS)、$HOME/.config/Code/User/locale.json(Linux) - 不能用记事本或 TextEdit 直接编辑——它们可能加 BOM 或用错编码;务必用 VS Code 自己打开该文件写入
- 写完保存后,必须彻底杀进程再启动;
Reload Window不会重新读取locale.json
真正容易被忽略的,是 VS Code 启动时对 locale.json 的加载时机——它只在全新进程初始化阶段读一次,之后任何修改都无效,除非你关干净再重来。











