必须通过 configure display language 命令设为 zh-cn 并重载窗口,因 vs code 1.70+ 已弃用 settings.json 的 "locale" 配置,仅读取用户级 locale.json 文件,且 remote-ssh/wsl 需单独配置。

装完官方中文语言包不等于界面变中文——必须通过 Configure Display Language 命令显式设为 zh-cn 并重载窗口,否则菜单可能中文化,但设置页、命令面板、错误提示仍是英文。
为什么装了语言包还是英文?
VS Code 从 1.70 版本起已弃用 settings.json 中的 "locale": "zh-cn" 配置项。它只读取独立的 locale.json 文件,且该文件默认不存在,必须由命令触发生成或手动创建在正确路径下。
- 直接在
settings.json里加"locale"字段完全无效,VS Code 启动时静默忽略 - 扩展面板里点“Install”只是把翻译资源下载到本地,没执行激活动作
- 右下角状态栏显示
en就说明语言上下文根本没生效,不是“差一点”,而是配置没命中
正确设置流程(推荐命令面板法)
这是最可靠、兼容性最好、且能自动校验路径和编码的方式:
- 按
Ctrl+Shift+P(Windows/Linux)或Cmd+Shift+P(macOS)打开命令面板 - 输入并选择
Configure Display Language命令 - 在弹出列表中选
zh-cn(注意:必须是小写、连字符;zh_CN、zh-CN、Zh-cn全部无效) - VS Code 会自动在用户数据目录下创建
locale.json,内容为{"locale":"zh-cn"} - 点击弹窗里的
Reload Window(不是关掉重开,也不是Ctrl+R)
手动编辑 locale.json 的注意事项
当命令面板卡死、插件冲突或需批量部署时才用此法,但极易出错:
- 路径必须准确:
– Windows:%APPDATA%\Code\User\locale.json
– macOS:$HOME/Library/Application Support/Code/User/locale.json
– Linux:$HOME/.config/Code/User/locale.json - 文件必须用 UTF-8 无 BOM 编码保存(用 VS Code 自己新建并保存,别用记事本)
- 内容只能是纯 JSON:
{"locale":"zh-cn"},不能多逗号、不能缺引号、不能有注释 - 不要放在工作区目录(如
.vscode/locale.json),那只会对当前文件夹生效,且优先级低于用户级
Remote-SSH / WSL 环境要单独配
本地设了中文,远程连接后还是英文?因为 Remote-SSH 和 WSL 启动的是独立的 VS Code Server 实例,它读取的是远程机器上的 locale.json,和本地完全无关。
- 在 WSL 终端中运行:
code --list-extensions确认 Server 已启动 - 进入路径:
~/.vscode-server/data/Machine/(后面可能带哈希后缀) - 在该目录下新建或编辑
locale.json,内容仅一行:{"locale":"zh-cn"} - 在远程窗口中执行
Developer: Reload Window,不是 reload 本地窗口
真正容易被忽略的是:VS Code 的语言配置是分层生效的(用户 > 工作区 > 远程),而 locale.json 一旦存在,就完全屏蔽旧版 settings.json 中的 locale 字段。多人共用一台机器、或频繁切换 WSL/SSH 时,很容易误改错层级的配置文件。











