vscode 中文界面生效的唯一路径是正确生成并写入 locale.json 文件。必须通过命令面板执行 configure display language 并选 zh-cn 后重启,手动编辑需确保路径、编码、json 格式严格正确,remote-ssh/wsl 需单独配置对应 locale.json。

VSCode 中文界面不生效,90% 是因为 locale.json 没生成、没写对、或没被读到——它不是可选项,而是唯一生效路径。
为什么 Configure Display Language 命令是首选入口
这个命令不是“切换语言”的快捷方式,而是 VS Code 唯一受信的配置写入机制:它会自动检查中文语言包是否已安装、跳转补装、并精准写入 locale.json 到用户数据目录。手动编辑文件容易路径错、编码错、JSON 格式错,而命令面板能绕过这些细节,只要插件装对、输入准确,就能一次到位。
- 必须用
Ctrl+Shift+P(Windows/Linux)或Cmd+Shift+P(macOS)呼出命令面板,Ctrl+P不行 - 输入时要完整拼写
Configure Display Language,缩写如config lang可能匹配不到 - 下拉列表中出现的
zh-cn是唯一合法值;zh_CN、zh-hans、Chinese (Simplified)都不会触发写入,且无任何错误提示 - 选中后弹出的提示必须点 Restart,点 Reload Window 不会重读
locale.json
locale.json 文件路径与内容必须严格匹配
VS Code 启动时只读取用户级 locale.json,且只在启动瞬间加载一次。路径错、文件不存在、内容多一个空格,都会静默退回到英文。
- Windows 路径:
%APPDATA%\Code\User\locale.json(等价于%USERPROFILE%\AppData\Roaming\Code\User\locale.json) - macOS 路径:
$HOME/Library/Application Support/Code/User/locale.json - Linux 路径:
$HOME/.config/Code/User/locale.json - 文件内容必须且仅有一行:
{"locale":"zh-cn"}(双引号、小写、连字符、无 BOM、无换行、无逗号) - 不要用记事本保存,务必用 VS Code 自己新建并保存为 UTF-8 无 BOM 编码
命令失效时如何手动兜底
当命令面板卡死、输不了字、执行后无反应,或选了 zh-cn 重启仍英文,说明 VS Code 没成功写入配置——此时直接编辑 locale.json 是最稳解法,但前提是进程彻底退出。
- Windows:打开任务管理器,结束所有
Code.exe进程(包括后台服务) - macOS:活动监视器中结束
Code Helper和Electron进程 - Linux:运行
pkill -f "code.*--no-sandbox"或逐个 kill 相关进程 - 确认托盘图标已消失,再打开对应路径的
locale.json,清空内容,粘贴{"locale":"zh-cn"}并保存 - 全新启动 VS Code,不要从旧窗口 “重新打开”
Remote-SSH / WSL 环境需单独配 locale.json
本地设了中文,远程连接后仍是英文?因为 Remote-SSH 和 WSL 启动的是独立的 VS Code Server 实例,它读取的是远程机器上的 locale.json,和本地完全无关。
- 在 WSL 终端中进入:
~/.vscode-server/data/Machine/(后面可能带哈希后缀的子目录) - 在该目录下新建或编辑
locale.json,内容仍为:{"locale":"zh-cn"} - 保存后,在远程窗口中执行
Developer: Reload Window(不是 reload 本地窗口) - 注意:远程环境无需再装中文语言包插件,Server 复用本地插件资源,但
locale.json必须单独存在
真正容易被忽略的是:右下角状态栏显示 en 或设置页仍是英文,往往不是配置写错了,而是旧进程还在后台跑着,或者你改的是 settings.json 而不是 locale.json——后者才是 VS Code 唯一认的语言开关。











