删掉 locale.json 是最通用、最稳的改回英文方式,所有系统都适用且不依赖 vs code 版本;因其避免 json 格式敏感问题,删除后 vs code 启动自动回退英文,零容错风险。

直接删掉 locale.json 是最通用、最稳的改回英文方式,所有系统都适用,且不依赖 VS Code 版本。
为什么删文件比改内容更可靠
VS Code 对 locale.json 的 JSON 格式极其敏感:一个尾部空格、一个中文引号、一个大写字母,都会导致文件被静默忽略,界面语言照旧不变。而删除该文件后,VS Code 启动时会 fallback 到默认英文——这是硬编码行为,不走解析逻辑,零容错风险。
-
{"locale":"en"}看似简单,但手误写成{"locale":"en" }(末尾空格)或{"locale":"EN"}就完全失效 - UTF-8 BOM、换行缩进、注释、多余逗号,全都不允许
- 新版(1.80+)已移除
Configure Display Language命令,无法靠 UI 引导校验格式
各系统下 locale.json 的准确路径
路径必须严格匹配,写错位置等于白改。注意不是 settings.json,也不是 .vscode/locale.json(那是工作区级,优先级更高但易被忽略):
- Windows:
%APPDATA%\Code\User\locale.json - macOS:
~/Library/Application Support/Code/User/locale.json - Linux:
~/.config/Code/User/locale.json - Remote-SSH / WSL:需登录远程环境,分别处理对应路径下的
locale.json,本地改无效
删之前必须关干净所有进程
残留进程会锁住旧语言缓存,删完重启仍显示中文。重点检查这些“隐形”实例:
- Windows:任务管理器中是否有
Code.exe或Code Helper进程 - macOS:活动监视器里是否还有
Electron进程(VS Code 底层是 Electron) - Remote-SSH:断开连接后,远程机器上运行
ps aux | grep code,杀掉残留code-server进程 - 托盘图标:右键退出,别只关窗口
删完不生效?优先查工作区和启动参数覆盖
VS Code 语言优先级是:启动参数 > 工作区 .vscode/locale.json > 用户级 locale.json。删了用户级文件,不代表万事大吉:
- 当前项目根目录下存在
.vscode/locale.json,内容为{"locale":"zh-cn"}→ 直接删掉它 - 终端 alias 启动,例如
alias code='code --locale=zh-cn'→ 检查~/.zshrc或~/.bashrc - 快捷方式“目标”字段带
--locale=zh-cn→ 右键属性修改启动命令
真正容易被忽略的是:Remote-SSH 场景下,你本地删了,但远程服务器上的 locale.json 还在,UI 就永远是中文——得连过去再删一次。











