package control 安装失败主因是系统语言引发的 urllib 请求拦截、channel url 解析乱码、ignored_packages 配置冲突及 locale 设置错误;需校准时间、关闭安全软件、验证 channel 可访问性、清理 ignored_packages 并显式设置正确 locale 后彻底重启。

Package Control 安装失败:系统语言导致 urllib 请求被拦截
Sublime Text 在非英文系统(尤其是中文 Windows)下,部分杀毒软件或输入法会静默劫持 urllib.request 的 HTTPS 请求,表现为控制台报 URLError、ssl.CertificateError 或直接卡在空白响应。这不是网络不通,而是系统语言环境触发了安全策略误判。
- 先校准系统时间:误差超过 5 分钟会导致 SSL 握手失败,控制台出现
CertificateError就先同步网络时间 - 临时关闭火绒、360、腾讯电脑管家等本地安全软件——它们常把
subl.exe的 Python 模块网络调用标记为“可疑行为” - 若使用 QQ 输入法或搜狗输入法,检查其快捷键是否占用了
Ctrl + `(控制台唤出键),冲突会导致控制台无法打开,进而无法执行安装脚本 - 不依赖浏览器代理设置,Sublime 的
urllib不读系统代理,手动配置无效;改用带ProxyHandler的离线安装脚本更可靠
插件列表为空:channel 地址因 locale 解析失败
There are no packages available for installation 这个提示不是插件源没了,而是 Package Control 请求 channels 时,返回的 JSON 被系统 locale 解码成乱码或空对象。常见于中文系统下未指定 UTF-8 编码路径,或 channel URL 本身含中文重定向跳转。
- 打开
Preferences → Package Settings → Package Control → Settings – User - 确认
"channels"是纯英文 URL 数组,例如:["https://gitee.com/azl397985856/package_control_channel/raw/master/channel_v3.json"] - 把该 URL 粘到 Chrome/Firefox 中直接访问,能正常显示 JSON 内容才算有效;打不开就换源,别用博客里抄的旧地址(如 php.cn 的 v2 channel 已全部 404)
- 避免在 URL 中出现中文路径、空格或特殊符号;某些企业内网 DNS 会把带下划线的域名(如
package_control)解析失败,可改用短域名镜像
插件装上了但命令面板找不到:ignored_packages 被 locale 影响自动填充
部分汉化版 Sublime 或第三方打包版会在首次启动时,根据系统语言自动写入 "ignored_packages": ["Default", "Vintage"] 之类配置,而用户设置文件(Preferences.sublime-settings — User)里没显式声明,导致新装插件名被隐式加入屏蔽列表。
- 打开
Preferences → Settings,只看右侧用户配置区域,搜索ignored_packages - 如果存在且包含刚安装的插件名(如
"ChineseLocalization"、"Emmet"),直接删掉该项或整行注释(加//前缀) - 没有该字段?不代表安全——某些定制版会把默认忽略列表硬编码进启动流程,此时必须彻底退出 Sublime(Windows 任务管理器杀光所有
subl.exe,macOS 执行killall -9 subl),再重启 - 重启后立刻按
Ctrl + Shift + P输入插件命令名(如Localization: Choose Language),验证是否可触发
中文界面插件失效:locale 设置与系统语言不一致引发 fallback
装了 ChineseLocalization 却仍是英文菜单,大概率是 "locale": "zh_CN" 被写进了错误位置,或系统语言设置与 Sublime 的 locale 解析逻辑错位。ST4 不再自动读取 Windows 区域设置,必须显式声明。
- 确保
"locale": "zh_CN"写在Preferences → Settings右侧用户配置中,且位于最外层大括号内,前后无语法错误(尤其注意末尾逗号) - 不要写成
"locale": "zh"或"locale": "Chinese"——ST4 严格匹配 ISO 639-1 + 639-2 格式,仅zh_CN、zh_TW、en_US等有效 - 保存后必须完全退出 Sublime(不只是关窗口),否则
sublime_plugin加载器不会重新读取 locale 配置 - 仍无效?检查是否同时启用了其他语言类插件(如旧版
IMESupport或Localization),它们可能覆盖了ChineseLocalization的翻译钩子
ignored_packages 条目,或一行漏掉的逗号,就能让整个插件生态停摆。每次改完配置,务必 kill 进程再启,别信“重载设置”这种表面操作。











