VSCode界面语言仍为英文,是因为locale配置未生效或中文语言包未安装;需先安装Microsoft官方中文语言包,再创建严格JSON格式的locale.json文件(内容为{"locale":"zh-cn"}),置于用户配置目录并彻底重启VSCode。

VSCode菜单栏全是英文,不是坏了,是 locale 配置没生效或压根没写对——命令行改 locale.json 是可行的,但必须路径对、格式严、重启彻底,否则白改。
为什么命令行改语言配置容易失败
很多人用命令行编辑 settings.json,加一行 "locale": "zh-cn",结果重启后还是英文。这不是 VSCode 抽风,而是从 1.70 版本起,locale 已被移出 settings.json,它现在只认独立的 locale.json 文件,且必须放在用户级配置目录下:
- Windows:
%APPDATA%\Code\User\locale.json - macOS:
~/Library/Application Support/Code/User/locale.json - Linux:
~/.config/Code/User/locale.json
手动生成这个文件时,常见错误包括:路径写错、文件名拼成 locale.js 或 local.json、内容格式不合法(比如用了双引号嵌套错误、多逗号、没闭合大括号)。
手动创建 locale.json 的正确写法
别依赖编辑器自动补全,直接用终端新建并写入标准 JSON:
echo '{"locale":"zh-cn"}' > ~/.config/Code/User/locale.json
注意三点:
- 值必须是小写
zh-cn,不是zh_CN、zh-hans、Chinese或空格前后有字符 - 整个内容必须是合法 JSON:外层大括号、键名带双引号、字符串值也带双引号、无尾逗号
- 如果目录不存在(比如首次使用),先
mkdir -p ~/.config/Code/User
改完别只 code . 重开窗口——VSCode 启动时会读取该文件,但若后台进程还在,新配置不会加载。要杀掉所有 Code 进程再启动:
- macOS/Linux:
pkill -f "Code Helper\|Electron" - Windows:
taskkill /f /im Code.exe
命令行改完仍显示英文?先查语言包有没有装
locale.json 只是“开关”,语言包才是“字典”。没有安装中文语言包,VSCode 就算读到 zh-cn 也会静默回退到英文,不报错也不提示。
检查是否已安装官方包:
- 打开扩展面板(
Ctrl+Shift+X),搜Chinese (Simplified) Language Pack - 确认发布者是
Microsoft,ID 是ms-ceintl.vscode-language-pack-zh-hans - 如果没装,必须先装——命令行无法跳过这步;装完再执行上面的
locale.json操作
装完不重启也不行:VSCode 不会在运行中热加载语言资源,必须完全退出再启动,才能触发界面重渲染。
reload window 按钮为什么经常失效
点击右下角弹出的 Reload Window 提示,看起来像重启,其实只是重载当前窗口上下文,并不重建 UI 线程,很多语言资源(尤其是菜单栏、标题栏、命令面板顶部)根本不会刷新。
真正起效的操作只有两个:
- 手动关闭所有 VSCode 窗口 + 杀后台进程 + 重新双击图标启动
- 或者用命令行:
code --no-sandbox --disable-gpu(排除渲染干扰)再启动
尤其在远程开发(SSH/WSL)或企业策略锁定了配置目录时,Reload Window 基本等于无效操作。
最麻烦的点往往不在改配置,而在于你不知道 VSCode 其实有两个“语言开关”:一个是扩展(必须装)、一个是 locale(必须放对位置+写对格式+彻底重启)。漏掉任一环,界面就卡在英文不动——而且它还不告诉你哪一环断了。


















