vs code 1.70+ 版本已弃用 settings.json 中的 "locale" 字段,必须通过 configure display language 命令安装语言包并生成正确的 locale.json 文件(路径需准确),且远程环境需单独配置,重启而非重载窗口才能生效。

VS Code 设置默认中文,不能靠改 settings.json,必须用 locale.json + 官方语言包,否则重启后立刻回英文。
为什么改 settings.json 里的 "locale": "zh-cn" 没用
VS Code 1.70+ 版本已完全弃用 settings.json 中的 locale 字段。你加了这行,VS Code 启动时会静默忽略,不报错、不警告、也不生效。它只读取独立的 locale.json 文件,且该文件必须位于用户级配置目录下(不是工作区或远程目录)。
- 常见错误:在
settings.json里写"locale": "zh-cn",保存后重启,界面仍是英文 - 更隐蔽的坑:有人误写成
"LOCALE"、"locale.language"或"locale": "zh_CN",这些全无效 - 真正起效的路径是:
%APPDATA%\Code\User\locale.json(Windows)、~/.config/Code/User/locale.json(Linux)、~/Library/Application Support/Code/User/locale.json(macOS)
Configure Display Language 命令才是唯一可靠入口
这个命令不只是“选个语言”,它会自动完成三件事:检查是否已安装对应语言包 → 若未安装则跳转扩展页 → 安装后自动生成或更新正确的 locale.json,并确保路径和格式都对。
- 快捷键:
Ctrl+Shift+P(Win/Linux)或Cmd+Shift+P(macOS) - 输入时搜
Configure Display Language,别漏空格,也别输成Configure Language - 从列表中选
zh-cn—— 必须小写、连字符,不是zh-CN、zh_hans或Chinese - 弹出提示后点
Restart,不是Reload Window;后者在部分版本中无法刷新语言资源
Remote-SSH / WSL 环境要单独配 locale.json
本地设好了中文,连上远程机器或 WSL 后界面还是英文?因为 Remote-SSH 和 WSL 启动的是独立的 VS Code Server 实例,它读取的是远程系统上的 locale.json,和本地完全无关。
- 在远程终端中运行
code --list-extensions,确认已安装ms-ceintl.vscode-language-pack-zh-hans - 在远程 VS Code 中同样执行
Configure Display Language→ 选zh-cn→Restart - 或者手动在远程机器上创建
~/.config/Code/User/locale.json,内容仅一行:{"locale":"zh-cn"} - 注意:某些 Linux 发行版(如 Ubuntu Snap 版)因沙盒限制可能无法加载语言包,建议换用 .deb 官方包
最容易被忽略的点是:语言包只是“翻译资源仓库”,locale.json 是开关,而 Restart 是触发器——三者缺一不可。哪怕只少一步,比如点了 Reload Window 而非 Restart,或者远程没单独配,界面就会卡在英文状态不动。











