最常见原因是未执行Configure Display Language命令;需通过Ctrl+Shift+P输入全名,从列表选zh-cn(小写短横),再点击Restart彻底重启。

Configure Display Language 命令没执行或选错值
装完 Chinese (Simplified) Language Pack for Visual Studio Code 插件后菜单仍是英文,最常见原因是根本没运行 Configure Display Language 命令——插件只放翻译文件,不自动激活语言。VS Code 不会读“已安装”状态来切换 UI,它只认 locale.json 里写的值。
实操要点:
- 按
Ctrl+Shift+P(Windows/Linux)或Cmd+Shift+P(macOS)呼出命令面板 - 必须输入完整命令名:
Configure Display Language(别输成Change Language或Set Locale) - 从下拉列表中**明确选
zh-cn**(注意是小写、带短横、不是zh-CN、zh或Chinese) - 弹出提示后点
Restart,不是Reload Window;要彻底退出所有Code.exe/Code Helper进程再重开
locale.json 文件被覆盖或路径错误
Configure Display Language 命令本该自动生成并写入 locale.json,但若你手动改过、复制粘贴过、或工作区/远程配置覆盖了它,就会失效。VS Code 1.70+ 完全忽略 settings.json 中的 "locale" 字段,只读用户级 locale.json。
检查方式:
- 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"}(无空格、无逗号、无 BOM、双引号为英文标点) - 如果文件不存在 → 说明命令从未成功执行;如果存在但值不是
"zh-cn"→ 很可能被工作区.vscode/settings.json或远程实例覆盖
右键菜单、终端标题栏等仍是英文是正常现象
菜单栏、设置页、侧边栏能变中文,是因为它们走 VS Code 的 UI 翻译链路;但右键菜单、终端标签页文字(如「Terminal」)、调试控制台标题、WebView 内容这些区域,压根不读 locale.json。
原因很实在:
- 右键菜单由 Electron 底层 Chromium 渲染,调用的是操作系统原生 API,VS Code 无权注入翻译
- 集成终端标题栏、新建标签页文字属于 Electron 子进程 UI,和主窗口 locale 隔离
- 调试控制台显示的是 Node.js / Python 解释器自身的错误信息,语言取决于系统
LANG或LC_ALL环境变量 - 插件界面(如 GitLens、ESLint)是否汉化,取决于插件自身是否调用
vscode.env.languageAPI,不是 VS Code 能强制统一的
v1.89+ 版本需匹配语言包版本且清理缓存
VS Code v1.89+ 启用 Ozone 渲染后,会跳过旧逻辑解析 locale,导致即使 locale.json 正确、插件也装了,仍显示英文。这不是配置错了,而是资源加载被绕过。
必须同步满足:
- 语言包版本 ≥
1.89.2026052801(在扩展面板看插件详情页的版本号) - 旧版语言包会被静默忽略,卸载后重装;若重装失败,手动删掉
%USERPROFILE%\.vscode\extensions\ms-ceintl.vscode-language-pack-zh-hans-*全部文件夹 - 删缓存:
%APPDATA%\Code\Cache(Windows)或~/.config/Code/Cache(Linux/macOS) - 启动时加参数验证:
code --log=trace --disable-gpu,日志里搜resolved locale,确认输出为zh-CN
settings.json,却不知道这个字段早在 1.70 就被彻底废弃了。


















