必须执行configure display language命令并选zh-cn后重启vs code,locale.json由该命令自动生成,路径为windows:%appdata%\code\user\locale.json、macos:~/library/application support/code/user/locale.json、linux:~/.config/code/user/locale.json,内容严格为{"locale":"zh-cn"}。

locale.json 文件路径和创建时机
VS Code 不会在首次安装后自动生成 locale.json,它只在你执行 Configure Display Language 命令或手动创建时才出现。路径因系统而异:
- Windows:
%APPDATA%\Code\User\locale.json - macOS:
$HOME/Library/Application Support/Code/User/locale.json - Linux:
$HOME/.config/Code/User/locale.json
如果文件不存在,直接新建即可;若已存在但内容混乱(比如含注释、多余字段、全角引号),建议清空重写——VS Code 遇到非法 JSON 会静默忽略整个文件,回退英文。
locale.json 内容必须严格符合格式
这个文件只认一行纯 JSON,且对大小写、符号、编码零容忍。常见失效原因就是多了一个空格、用了全角冒号、保存成 UTF-8 with BOM,或者写了 {"locale": "zh_CN"} 这类变体。
- ✅ 正确写法:
{"locale":"zh-cn"}(双引号、小写、短横线、无空格、无逗号、UTF-8 无 BOM) - ❌ 无效写法:
{"locale": "zh_CN"}、{"locale": "zh-hans"}、{"locale": "Chinese"}、{locale: "zh-cn"}(缺引号)、{"locale":"zh-cn",}(末尾逗号)
用 VS Code 自己打开并编辑该文件,它默认保存为 UTF-8 无 BOM;用记事本或第三方编辑器保存时务必检查编码选项。
改完 locale.json 后必须彻底重启 VS Code
“重新加载窗口”(Reload Window)不触发语言重载逻辑,它只刷新 UI 状态,不会读取新的 locale.json。真正生效需要完全退出进程:
- Windows:任务管理器中确认没有残留的
Code.exe或Code Helper.exe - macOS:活动监视器里结束所有
Code和Code Helper进程 - Linux:运行
pkill -f "code"清理后台
重启后,立刻验证顶部菜单栏是否显示「文件」「编辑」「视图」——这是最可靠的生效信号。设置里搜 locale 查值是否为 zh-cn,也能交叉确认。
为什么终端、Git 日志、调试控制台还是英文
这不是配置失败,而是设计如此。VS Code 的 locale.json 只控制主界面(菜单栏、命令面板、设置页、活动栏 hover 文字等),不接管终端、调试控制台、Git 输出、部分插件弹窗的语言环境。
- 终端语言取决于系统
LANG或 shell 配置 - Git 日志语言由 Git 自身的
LC_MESSAGES决定 - 调试控制台使用 Node.js 或目标运行时的本地化逻辑
盯住菜单栏、命令面板、设置导航这三处就够了。其他地方显示英文,只要这三处是中文,就说明 locale.json 已正确生效。











