双击或拖拽.vsix文件无效,因vscode 1.70+禁用该机制,仅复制文件却不注册扩展id、不加载语言资源;必须通过命令面板执行“extensions: install from vsix”,设locale为"zh-cn"并彻底重启。

直接双击或拖拽.vsix文件为什么无效
VSCode 自 1.70 版起已禁用该方式,双击或拖入只会把文件复制到 ~/.vscode/extensions/(Linux/macOS)或 %USERPROFILE%\.vscode\extensions\(Windows),但不注册扩展 ID、不加载语言资源、不写入启用状态。现象是右下角仍显示 en,设置页/命令面板全英文,且无任何错误提示。
必须用 Extensions: Install from VSIX 命令安装
这是唯一被官方支持且能真正激活语言包的路径:
- 在 VSCode 中按
Ctrl+Shift+P(Windows/Linux)或Cmd+Shift+P(macOS) - 输入并选择
Extensions: Install from VSIX,回车 - 在弹出的文件选择框中定位并选中下载好的
MS-CEINTL.vscode-language-pack-zh-hans-*.vsix - 点击
Install,等待提示“Successfully installed”
装完后务必打开扩展面板搜索 ms-ceintl.vscode-language-pack-zh-hans,确认状态为“已启用”。若未启用,说明没走对流程。
locale.json 必须填 zh-cn,且路径/格式严格
VSCode 主程序硬编码识别 zh-cn 作为简体中文显示语言标识;填 zh-hans 在 1.95+ 版本中仅加载部分 UI 字符串,设置页、调试面板等关键区域仍为英文。
- 配置文件路径必须是用户级:
Linux:~/.config/Code/User/locale.json
Windows:%APPDATA%\Code\User\locale.json
macOS:$HOME/Library/Application Support/Code/User/locale.json - 内容只能是严格的一行 JSON:
{"locale":"zh-cn"} - 必须小写、连字符、双引号、UTF-8 无 BOM 编码;
zh_CN、ZH-CN、chinese或带空格的"zh-cn "全部无效
安装后仍不生效?重点检查这三件事
不是配置错了,而是环境残留干扰了语言协商机制:
- 后台进程未彻底退出:Windows 杀掉所有
Code.exe;macOS/Linux 执行pkill -f "Code Helper"和pkill -f "Electron" - 语言包版本与 VSCode 不匹配:用
unzip -p xxx.vsix extension/package.json | grep engines查"vscode": "^1.95.0",再运行code --version对比主版本号(如1.95.2→ 取1.95) - 系统 locale 冲突:Windows 检查是否勾选了「Beta: Use Unicode UTF-8…」;macOS/Linux 运行
echo $LANG,若为en_US.UTF-8需手动干预,否则跳过语言包加载
最易被忽略的是后台进程残留和系统 locale 设置——它们会让 VSCode 根本不读取 locale.json,哪怕内容完全正确。











