VSCode 的 UI 语言由 locale.json 文件硬性控制,而非设置或插件;该文件必须位于用户数据目录且格式严格,删除它可回退至英文,编辑时仅支持 {"locale":"en"} 格式,其他任何变体均无效。

VSCode 的提示语(包括报错、命令面板、菜单、状态栏等所有 UI 文字)不是靠“翻译插件”或“设置开关”控制的,而是由 locale.json 文件硬性指定。只要这个文件存在且值为 "zh-cn",哪怕你卸载所有中文扩展,提示语也还是中文;反之,删掉它或设为 "en",立刻全英文——不依赖语言包,不需重装,不走 Settings Sync。
为什么改了 settings.json 或点 Reload 没用?
VSCode 从 1.70 版本起已完全忽略 settings.json 中的 "locale" 字段。你加了 "locale": "en" 这行,VSCode 启动时既不读取也不报错,纯属无效配置。真正起作用的只有独立的 locale.json 文件,且必须位于用户数据目录下:
- Windows:
%APPDATA%\Code\User\locale.json - macOS:
~/Library/Application Support/Code/User/locale.json - Linux:
~/.config/Code/User/locale.json
工作区目录(.vscode/settings.json)或远程机器上的同名文件,同样会被忽略——除非你在 Remote-SSH 里连的是另一台装了中文 locale 的机器。
删还是改?JSON 格式必须零容错
推荐直接删除 locale.json,比编辑更安全。VSCode 启动时找不到该文件,就按默认逻辑 fallback 到英文。如果非要编辑,请只写这一行:
{"locale":"en"}
常见失败原因全是格式问题:
-
{"locale": "en" }—— 尾部空格导致静默忽略 -
{"locale":"EN"}—— 大写不被识别 -
{"locale":"en-US"}—— VSCode 只认"en",不支持子区域码 -
{'locale':'en'}—— 单引号非法 - 文件里有注释、多余逗号、中文引号——全都不行
重启前必须关干净 + 关 Settings Sync
很多操作“看似生效却回弹”,根本原因是没彻底退出或同步覆盖:
- Windows:右键任务栏图标 → “退出”,别只关窗口;检查任务管理器里是否还有
Code Helper进程 - macOS:Dock 图标右键 → “退出”,确认活动监视器中无残留进程
- Settings Sync 必须提前关闭:左下角齿轮 →
Settings Sync: Turn Off and Reset Local State,不能只点 “Sign Out” - Remote-SSH 场景:本地改了没用,得登录到远程主机,同样删掉远程端的
locale.json
Configure Display Language 命令已彻底消失
VSCode 1.80+(2026 年主流版本已是 1.90+)已移除 Configure Display Language 命令。你在 Ctrl+Shift+P 里搜它,只会看到 command not found 或跳转到空白设置页。这不是你漏装插件或缓存没清,是功能本身被删了。别再查旧教程、别反复重试——直接处理 locale.json 是唯一可靠路径。
最易被忽略的一点:系统级环境变量(如 Linux/macOS 的 LANG=zh_CN.UTF-8)在 Remote-SSH 或 WSL 启动时会透传,可能让远端服务强制渲染中文 UI,此时本地改 locale.json 完全无效。得去远端机器上操作。


















