离线安装VSCode中文包必须手动下载ms-ceintl.vscode-language-pack-zh-hans.vsix,通过Extensions: Install from VSIX安装,再执行Configure Display Language选zh-cn并重启;双击或拖拽无效,手动编辑locale.json{"locale":"zh-cn"}为兜底方案。

离线环境下语言包必须手动下载 .vsix 文件
VSCode 离线时无法访问扩展市场,Ctrl+Shift+X 搜索不到任何语言包。唯一可行路径是:提前从官方渠道下载对应 .vsix 文件,再用命令行或命令面板安装。
关键点:
- 所有官方语言包发布者均为
MS-CEINTL,ID 格式统一为ms-ceintl.vscode-language-pack-xx(如ms-ceintl.vscode-language-pack-zh-hans、ms-ceintl.vscode-language-pack-ja) - 必须核对下载文件名是否含该前缀,且后缀符合 BCP 47 规范(
zh-hans、ja、fr等,区分大小写和连字符) - 不要下载第三方打包的“多语言合集”,VSCode 不识别其 ID,装了也注册不进系统
- 不同 VSCode 版本可能要求匹配的
.vsix版本号,建议从微软 GitHub 官方仓库下载对应 release 的包
安装后必须用 Configure Display Language 手动指定 locale
装完多个语言包,界面仍只显示一种语言——这不是 bug,而是设计如此。VSCode 的 locale 是单值配置,它只读取当前生效的那个包的资源。
操作要点:
- 按
Ctrl+Shift+P输入Configure Display Language(注意大小写和空格),不能缩写 - 列表中出现的选项,必须和已安装包 ID 的后缀**严格一致**:
ms-ceintl.vscode-language-pack-ja→ 必须选ja;ms-ceintl.vscode-language-pack-fr→ 必须选fr - 选中后弹出提示“Restart”,必须点 Restart,点 Reload Window 无效
- 如果命令搜不到,先检查扩展面板里对应包是否显示“已启用”;若未启用,说明安装失败或路径异常
远程开发环境需单独安装语言包
本地装的语言包对 SSH / WSL / Dev Container 远程窗口完全无效。每个远程目标都是独立运行实例,必须重复安装流程。
实操步骤:
- 连接远程后,在命令面板运行
Extensions: Install from VSIX,选中你已上传到远程机器的vscode-language-pack-fr-*.vsix等文件 - 再运行
Configure Display Language,选fr(或其他目标语言),然后点 Restart - 若远程是无图形界面的纯 CLI 服务器(如 Linux 服务器),需手动创建并写入
~/.config/Code/User/locale.json,内容仅一行:{"locale":"fr"} - 保存后务必彻底退出远程 VSCode 客户端(非 reload),否则新配置不加载
手动编辑 locale.json 是最稳兜底方案
当命令面板卡死、UI 崩溃、或需要批量部署时,直接写配置文件是最可控的方式。VSCode 启动时优先读取该文件,且不校验语言包是否存在。
路径与格式必须精准:
- Windows:
%APPDATA%\Code\User\locale.json - macOS:
~/Library/Application Support/Code/User/locale.json - Linux:
~/.config/Code/User/locale.json - 内容必须是单行标准 JSON:
{"locale":"zh-cn"}(双引号不可省略,无注释,无多余空格) - 保存后,Windows 需在任务管理器中确认所有
Code.exe进程已退出;macOS 需在活动监视器中结束Code和Code Helper进程
最容易被忽略的是:不同语言包的 loc(本地化资源)是相互隔离的,切换时不会继承上一个语言的字体、快捷键或设置项渲染逻辑——比如日语包下某些图标位置偏移、简体中文包里部分菜单项宽度溢出,都得单独观察调整。











