locale.json是唯一生效配置,必须满足四条件:仅含{"locale":"zh-cn"}单字段、路径严格匹配系统规范、UTF-8无BOM编码、文件名小写且路径无中文或空格。

locale.json 文件必须严格满足这四个条件
VSCode 只认 locale.json 里一个字段:"locale",且值必须是小写带短横线的字符串。任何偏差都会导致静默回退英文界面,不报错、不提示。
-
"locale": "zh-cn"✅ 合法(简体中文) -
"locale": "en"✅ 合法(英文) -
"locale": "zh_CN"❌ 无效(下划线、大写) -
"locale": "zh-hans"❌ 无效(VS Code 不识别该标准) -
{"locale":"zh-cn", "foo":"bar"}❌ 无效(只允许单字段,多一个逗号或键都失败)
文件路径和编码比内容更容易出错
哪怕内容完全正确,放错位置或保存成带 BOM 的 UTF-8,VS Code 也会直接忽略整个文件。
- Windows 路径必须是:
%APPDATA%\Code\User\locale.json(不是%USERPROFILE%\AppData\Roaming\Code\User\的其他变体) - macOS 路径必须是:
~/Library/Application Support/Code/User/locale.json(不是~/Library/Preferences/Code或~/.vscode) - Linux 路径必须是:
~/.config/Code/User/locale.json(不是~/.vscode或项目级.vscode/) - 编码必须是 UTF-8 无 BOM:用 VS Code 自己新建并保存该文件,能天然规避 BOM;别用记事本、Sublime 或某些编辑器另存为
settings.json 里写 "locale" 字段完全无效
VS Code 1.70+ 版本已废弃 "locale" 字段在 settings.json 中的支持。它不会报错,也不会读取,纯属被忽略。
- 不要在
settings.json里加"locale": "zh-cn" - 不要试图用
files.associations或editor.language等字段“曲线救国” -
locale.json是唯一生效入口,没有替代方案
Remote-SSH / WSL 下 locale.json 需单独配置
你在本地配好了 locale.json,连上远程机器后仍是英文?不是配置错了,而是 Remote-SSH 和 WSL 启动的是另一个独立的 VS Code Server 实例,它读取的是远程机器上的配置。
- Remote-SSH 连接后,运行命令:
Developer: Open User Data Folder→ 进入User/目录,新建或编辑locale.json - WSL 中,先执行
code --list-extensions确认 Server 已启动,再进路径:~/.vscode-server/data/Machine/[哈希目录]/User/locale.json - 远程端的语言包也得单独安装,不能指望本地插件同步过去
zh-cn)才是唯一可信验证依据——别只盯着菜单栏是否中文。


















