vs code提示对话框仍为英文,是因为其只读取locale.json配置和官方语言包资源,必须确保该文件内容为{"locale":"zh-cn"}且无格式错误,同时彻底终止所有vs code进程后重启,远程开发还需单独配置服务器端locale.json。

VSCode 的提示对话框为什么还是英文?
因为 VSCode 的「提示对话框」(比如保存前弹窗、Git 提交确认、扩展禁用警告)属于核心 UI 组件,它们只读 locale.json 配置 + 官方语言包资源,不走插件或主题逻辑。装了中文包但这些弹窗仍是英文,说明 locale.json 没生效,或者语言包没装对。
必须用 zh-cn,不能写 zh-hans 或 zh_CN
VSCode 1.70+ 版本严格校验 locale 值,只有 zh-cn 被完整支持——zh-hans 在部分旧版本可 fallback,但 2026 年主流版本(包括 Remote-SSH/WSL Server)已明确只识别 zh-cn。
-
zh_CN、Chinese、zh:全部被忽略,locale.json会静默失效 -
zh-hans:某些 Linux 发行版(如 Ubuntu 24.04)可能临时可用,但不稳定,不推荐 - 必须小写、短横线、双引号包裹:
{"locale":"zh-cn"}—— 多一个空格或换行都会导致解析失败
Remote-SSH / WSL 的弹窗仍是英文?要单独配 locale.json
本地设好了,远程连接后 Git 提交弹窗、文件保存确认仍为英文,是因为 Remote-SSH 和 WSL 启动的是独立的 VS Code Server 进程,它完全不读你本地的配置,只读远程机器上的 ~/.vscode-server/data/Machine/<hash>/locale.json</hash>。
- 先确认远程 Server 已运行:
code --status或看右下角状态栏是否显示「SSH: hostname」 - 登录远程机器,进入路径:
~/.vscode-server/data/Machine/(后面是随机哈希子目录,找最新修改时间的那个) - 在此目录下新建
locale.json,内容仅一行:{"locale":"zh-cn"} - 保存后,在远程窗口中执行命令:
Developer: Reload Window(不是本地窗口!)
改完 locale.json 还有弹窗是英文?检查后台进程是否残留
VSCode 的弹窗语言在进程启动时一次性加载,热重载(Developer: Reload Window)不会刷新语言上下文。如果任务管理器里还有 Code.exe(Windows)、Electron(macOS)或 code(Linux)进程,新窗口会继承旧环境,弹窗永远是英文。
- Windows:任务管理器 → 结束所有
Code.exe及Code Helper进程 - macOS:活动监视器 → 搜索
Electron→ 全部退出 - Linux:终端执行
pkill -f "code"再启动 - 验证是否真重启:打开命令面板 → 输入
About→ 查看「Display Language」字段是否为zh-cn
locale.json 放错了位置——它必须在用户级目录,不能放工作区或系统级路径。











