locale.json 是唯一生效位置,因 VS Code 1.70+ 已废弃 settings.json 中的 "locale" 字段,命令面板配置和插件均依赖该文件;必须置于用户数据目录 User/ 下,严格命名为 locale.json,内容为单行合法 JSON(如{"locale":"zh-cn"}),路径因系统而异且需注意空格、大小写与 BOM。

VSCode 的界面语言不能靠 settings.json 控制,唯一可靠路径是写对 locale.json 文件——它不报错、不提示、不兼容变体,错一处就静默回退英文。
为什么 locale.json 是唯一生效位置
VS Code 1.70+ 已废弃 settings.json 中的 "locale" 字段,写进去也完全被忽略。命令面板里的 Configure Display Language 命令本质就是自动生成或覆写这个文件;插件(如中文语言包)只是提供翻译资源,不写入 locale.json 就等于没“点火”。
-
locale.json必须放在用户数据目录下的User/子目录里,不是工作区.vscode/,也不是settings.json同级目录 - 文件名必须严格为
locale.json(大小写敏感),不能是locale.txt、Locale.json或带备份后缀 - 内容只能是单行合法 JSON:
{"locale":"zh-cn"}—— 少引号、多逗号、空格、BOM 都会导致整个文件被跳过
Windows/macOS/Linux 的正确路径和写法
路径写错是最常见失败原因,尤其容易把 %APPDATA% 误当成当前用户桌面路径,或在 macOS 上漏掉 Application Support 中的空格。
- Windows:
%APPDATA%\Code\User\locale.json(即C:\Users\用户名\AppData\Roaming\Code\User\locale.json) - macOS:
~/Library/Application Support/Code/User/locale.json(注意Application Support是两个单词,中间有空格) - Linux:
~/.config/Code/User/locale.json
建议用 VS Code 自己新建该文件:彻底退出后,直接在文件管理器中导航到对应路径 → 右键新建文本文档 → 重命名为 locale.json → 用 VS Code 打开 → 输入 {"locale":"zh-cn"} → 保存(VS Code 默认 UTF-8 无 BOM,天然避坑)。
常见静默失效场景与验证方式
改完不生效?大概率不是配置逻辑错,而是进程没杀干净、路径不对、或远程环境未单独配置。
- 右下角状态栏仍显示
en:说明旧进程还在运行,Windows 查任务管理器杀光所有Code.exe,macOS 用活动监视器结束Electron和Code Helper - Remote-SSH / WSL 连接后仍是英文:那是远程实例在读自己的
locale.json,需在远程机器上重复操作,路径通常是~/.vscode-server/data/Machine/[哈希]/User/locale.json - 终端、调试控制台、Git 输出仍是英文:正常现象,它们走各自语言环境,和 VS Code 主界面
locale无关
验证是否真生效,只盯三处:顶部菜单栏文字、左侧活动栏 hover 提示、设置页(Ctrl+,)搜索框占位符是否为“搜索设置”——这三处全中,就是配置到位了。


















