configure display language 是唯一有效入口,因 vs code 1.70+ 已弃用 settings.json 中的 "locale" 字段,仅通过该命令生成/更新 locale.json 才能生效,手动编辑易出错且容错率极低。

装了中文语言包但界面仍是英文,不是插件没装对,就是 locale.json 没写对或没生效——90% 的失败案例集中在没执行 Configure Display Language、路径/内容格式错误、或进程没彻底退出这三类问题。
为什么 Configure Display Language 是唯一有效入口
VS Code 1.70+ 已彻底弃用 settings.json 中的 "locale": "zh-cn" 字段,它会被静默忽略。真正控制语言的是独立的 locale.json 文件,而该文件**只能由 Configure Display Language 命令生成或更新**,手动创建或编辑极易出错。
- 命令面板输入时必须严格为
Configure Display Language(不能是Change Language或Set Locale) - 下拉列表中只认
zh-cn(小写、短横线;zh_CN、zh-hans、Chinese全无效) - 弹出提示后必须点 Restart,点
Reload Window不会重载语言上下文 - 若命令搜不到,说明插件根本没装成功——回到扩展面板确认作者是 Microsoft,ID 是
ms-ceintl.vscode-language-pack-zh-hans
locale.json 路径和内容必须严丝合缝
VS Code 只读取用户级路径下的 locale.json,且容错率极低:多一个空格、少一个引号、编码带 BOM,都会导致回退英文。
- Windows 路径:
%APPDATA%\Code\User\locale.json - macOS 路径:
$HOME/Library/Application Support/Code/User/locale.json - Linux 路径:
$HOME/.config/Code/User/locale.json - 文件内容只能是这一行:
{"locale":"zh-cn"}(无换行、无注释、UTF-8 无 BOM) - 别往
settings.json里写 locale 字段——写了也白写
重启必须“杀干净再重来”
VS Code 后台常驻进程(如 Code.exe、Electron)会缓存旧语言状态,仅关窗口再双击图标,大概率仍显示英文。
- Windows:打开任务管理器 → 结束所有
Code.exe进程 - macOS:打开活动监视器 → 搜索并强制退出所有
Electron进程 - Linux:终端执行
pkill -f code或killall code - 重启后验证是否生效,只看三处:
文件/编辑/视图菜单栏、Ctrl+,设置页左侧导航、命令面板(Ctrl+Shift+P)上方提示文字
部分区域仍是英文是正常现象
右键菜单(如 Copy Path)、终端标签(Terminal 1)、状态栏 Ln 12, Col 5 等内容由 Electron 或操作系统底层提供,**不受 VS Code 语言包控制**,这不是配置失败,而是设计限制。
- 插件自身未适配中文?检查其独立语言配置项,例如
gitlens.language需手动设为zh-cn - 中文显示乱码?大概率是字体不支持,打开设置搜
fontFamily,填入系统中文字体,如 Windows 填"Microsoft YaHei", "Consolas", monospace - 终端、调试控制台、Git 输出保持英文属正常,不是汉化失败
最容易被忽略的点是:语言切换和插件启用完全解耦。哪怕你禁用全部插件,只要没运行 Configure Display Language 并彻底重启,中文就不会出现——这不是 Bug,是 VS Code 的明确设计逻辑。











