VSCode中文语言包失效主因是locale.json损坏/错位或settings.json含非法locale字段,须同步清理配置文件、缓存及扩展残留,并确保Remote-SSH/WSL远程端单独配置locale.json。

VSCode中文语言包配置失效,大概率不是语言包坏了,而是locale.json文件损坏、路径错位,或被settings.json里非法的"locale"字段干扰——直接重装语言包没用,必须同步清理三层:配置文件、缓存、扩展残留。
locale.json 文件损坏或位置错误
locale.json是唯一生效的语言配置文件,但 VSCode 1.70+ 后只认用户级路径下的它,工作区目录(.vscode/locale.json)已被完全忽略。常见问题包括:
- 文件内容不是严格的一行:
{"locale":"zh-CN"}(注意:必须是大写CN,双引号,无空格、无注释、无逗号) - 被误放在项目根目录的
.vscode/下,VSCode 启动时直接跳过 - 文件权限异常(Linux/macOS 下不可读),或被其他工具写入了 BOM 头
最稳做法:别手写。按 Ctrl+Shift+P 输入 Configure Display Language,选 zh-CN(不是 zh-cn),命令会自动在正确路径生成合规的 locale.json。
settings.json 里残留的 locale 配置会静默破坏启动
VSCode 1.80+ 对 JSON 合法性校验变严,settings.json 中任何一行含以下内容,都会导致整个文件被跳过,界面回退英文:
-
"locale": "zh-cn"(小写cn→ 必须zh-CN) - 带
//注释的行(JSON 不支持注释) - 末尾多逗号:
"locale": "zh-CN", - 中文引号或单引号:
“zh-CN”或'zh-CN'
验证方式:打开 Preferences: Open Settings (JSON),清空内容只留 {},保存并彻底退出 VSCode 再重启。如果界面变成干净英文,默认配置已恢复,说明原 settings.json 确实被忽略了。
使用ydata-profiling(前身为pandas-profiling)生成全面的数据质量报告,包含相关性分析、缺失值模式和基数检测。导出交互式HTML仪表板和JSON摘要。
缓存和语言包残留必须一起清
旧版语言包残留 + 损坏缓存 = 新装包加载失败、按钮文字缺失、悬停提示空白。三步必须同步执行:
- 删扩展残留:去
%USERPROFILE%\.vscode\extensions(Windows)或~/.vscode/extensions(macOS/Linux),搜ms-ceintl.vscode-language-pack-zh-hans-,删掉整个匹配文件夹 - 清缓存:删
%APPDATA%\Code\Cache(Windows)、~/Library/Caches/com.microsoft.VSCode(macOS)、~/.cache/Code(Linux) - 确认语言包版本 ≥ 1.89.2026052801:v1.89+ 要求此版本号,旧版会被静默忽略;检查扩展页中是否显示“启用”且版本号匹配
删完务必彻底退出 VSCode(任务管理器杀光所有 Code.exe 和 Code Helper 进程),再重启。
Remote-SSH / WSL 下中文不生效?本地配置不继承
连上 Remote-SSH 或 WSL 后界面仍是英文,不是插件没装,而是 VS Code Server 进程只读远程机器上的 locale.json。本地设置对它完全无效。
解决方法:
- 登录远程机器,在路径
~/.vscode-server/data/Machine/(后面是哈希子目录)下,手动创建locale.json,内容为{"locale":"zh-CN"} - 确保远程机器已安装同版本中文语言包(在远程扩展面板里搜装)
- 重启远程连接(不是 reload window,是断开后重新连接)
最容易被忽略的是:Remote-SSH 的 locale.json 路径和本地完全不同,且必须存在于 Machine 子目录下——放错一层就白配。

















