locale.json 必须是 utf-8 无 bom 的单行纯 json 文件,仅含 {"locale":"zh-cn"} 字段,路径需严格匹配平台规范,且目录权限、编码、进程占用均需满足要求。

locale.json 文件必须是纯 JSON 单行,且只含一个字段
VSCode 只认 locale.json 里严格格式的 {"locale":"zh-cn"},多一个空格、少一个引号、加个逗号或换行,整个文件就被静默忽略。它不支持注释、不兼容多字段、不读取嵌套结构。
常见错误包括:
- 写成
{"locale": "zh-cn",}(尾逗号) - 写成
{locale: "zh-cn"}(键名没双引号) - 写成
{"locale":'zh-cn'}(值用单引号) - 保存为 UTF-8 with BOM(Windows 记事本默认行为)
正确做法:用 VS Code 自己新建该文件,输入 {"locale":"zh-cn"},直接保存——它默认就是 UTF-8 无 BOM。
locale 值只能是小写短横线格式,如 zh-cn
zh-cn 是唯一被 VSCode 接受的简体中文标识;zh_CN、zh-hans、Chinese、zh、zh-CN 全部无效,且不会报错,只会 fallback 到英文界面。
这个值大小写敏感、连字符不可替换为下划线或空格,也不接受任何前缀后缀。命令面板中搜索 zh-CN 或 Chinese 不会匹配到选项,必须手动滚动列表找到 zh-cn。
文件路径必须精准匹配系统平台,不能靠猜测
locale.json 必须放在用户级配置目录下,路径错一个字符(比如 Code 写成 code,或 User 拼成 user),VSCode 就完全不读。
三平台标准路径:
- Windows:
%APPDATA%CodeUserlocale.json - macOS:
$HOME/Library/Application Support/Code/User/locale.json - Linux:
$HOME/.config/Code/User/locale.json
注意:Application Support 中间有空格,.config 是隐藏目录,%APPDATA% 在 Windows 上展开后通常是 C:Users\AppDataRoaming。
文件编码和权限问题比内容错误更隐蔽
即使内容完全正确,若文件编码含 BOM、路径中存在中文字符、或当前用户对目录无写权限,locale.json 仍会失效——VSCode 不提示,也不报错,只是安静地继续英文界面。
验证方式很简单:
- 用 VS Code 打开该文件,看右下角状态栏是否显示
UTF-8(不是UTF-8 with BOM) - 检查文件所在目录是否可写(Linux/macOS 可用
ls -l看属主;Windows 可右键属性 → 安全) - 确保没有其他进程(如 OneDrive、杀软、另一个 VSCode 实例)正在占用该文件
真正容易被忽略的是:文件存在 ≠ 配置生效。它必须同时满足「路径对、内容严、编码净、权限足、进程净」五个条件,缺一不可。











