【亲测有效】VS Code 已安装中文语言包却仍是英文的解决办法
VS Code 已安装中文语言包却仍是英文:一次由语言包文件损坏引发的排查记录
文章目录
- VS Code 已安装中文语言包却仍是英文:一次由语言包文件损坏引发的排查记录
- 一、问题现象描述
- 二、排查过程
- 1. 确认显示语言配置
- 2. 确认语言包是否已安装
- 3. 检查日志与翻译缓存
- 4. 定位真正根因:语言包文件损坏
- 三、最终我的解决方法
- 四、经验总结
一、问题现象描述
在 Windows 上使用 Visual Studio Code 时,为了将其设置为中文界面,我做了下列操作(网上有很多相关教程,这里就不展开介绍太多了):
- 安装了官方的简体中文语言包插件(并重启 VS Code 软件):
- 在 VS Code 按
Ctrl + Shift + P打开 Visual Studio Code 的命令面板执行Configure Display Language,选择 “中文(简体)”,然后执行 “重启以应用”:
3. 手动创建或修改locale.json(常见路径:C:\Users\Lenovo\AppData\Roaming\Code\User\locale.json),内容:
{"locale":"zh-cn"}然后完全退出所有 VS Code 窗口后重新打开;
- 删除语言缓存目录(一般是
C:\Users\Lenovo\AppData\Roaming\Code\clp),重新打开 VS Code;
但是经过上述尝试后仍然无法让 VS Code 显示中文界面。
二、排查过程
1. 确认显示语言配置
首先检查 VS Code 的用户语言配置文件:
C:\Users\<用户名>\AppData\Roaming\Code\User\locale.json
确认其内容为:
{"locale":"zh-cn"}这说明显示语言配置没有问题。
2. 确认语言包是否已安装
简体中文语言包安装目录通常位于:
C:\Users\<用户名>\.vscode\extensions\ms-ceintl.vscode-language-pack-zh-hans-<版本号>
检查后确认官方扩展ms-ceintl.vscode-language-pack-zh-hans已经存在,且 VS Code 启动进程也带有--lang=zh-CN参数。
因此,问题不是“未设置中文”或“系统未识别中文”。
3. 检查日志与翻译缓存
VS Code 日志中出现了与中文语言缓存(clp)有关的错误:
ENOENT: no such file or directory, scandir '...\\Code\\clp\\<标识>.zh-cn'最初怀疑是缓存目录丢失,于是清理了:
C:\Users\<用户名>\AppData\Roaming\Code\clp
但重启后仍然是英文。说明缓存错误只是表象,必须继续检查语言包里的源翻译文件。
4. 定位真正根因:语言包文件损坏
检查语言包中的核心翻译文件:
translations\main.i18n.json
正常情况下,它应该是包含大量中文翻译文本的 JSON 文件。但本次检查发现,该文件内容几乎全部是NUL(空字节),并不是有效的 JSON 翻译数据。
也就是说:语言包目录虽然存在,VS Code 也识别到了它,但语言包下载或安装不完整,实际没有可用的中文翻译内容。
三、最终我的解决方法
完全退出所有 VS Code 窗口。
在扩展列表中卸载Chinese (Simplified) Language Pack for Visual Studio Code。
删除语言包残留目录:
C:\Users\<用户名>\.vscode\extensions\ms-ceintl.vscode-language-pack-zh-hans-<版本号>重新打开 VS Code。
在扩展市场重新安装官方发布者
MS-CEINTL的简体中文语言包。执行
Configure Display Language,选择“中文(简体)”,然后重启 VS Code。
完成后,VS Code 即可正常显示中文。
四、经验总结
遇到“语言包已安装、语言也已设置,但界面仍然是英文”的问题时,不要只反复修改locale.json或清缓存。建议按下面顺序排查:
- 确认
locale.json的locale值; - 确认语言包扩展是否真实安装;
- 查看 VS Code 日志中是否有
clp、localization、translation相关错误; - 最后直接检查语言包里的
translations/main.i18n.json是否为有效内容。
语言包“显示已安装”不等于“文件内容完整可用”。当核心翻译文件损坏时,卸载并彻底删除残留目录后重新安装,往往才是有效的解决方案。
作者所遇到问题的真实原因:VS Code 简体中文语言包的main.i18n.json文件损坏,导致翻译内容无法加载。
