package control未真正生效,需通过ctrl+shift+p执行list packages(返回空列表即成功)和install package(触发fetching提示)双重验证;st4必须用官网installation.py脚本,失败则手动安装至installed packages/目录并重启。

Sublime Text 装不上插件,90% 的情况不是你手速慢、网络差或不会搜,而是 Package Control 根本没真正跑起来——菜单里有选项、命令面板能搜到名字,不代表它能联网、能拉取列表、能执行安装。
确认 Package Control 是否真生效,只看两个动作
别信“已安装”提示,也别点 Preferences → Package Control 菜单项——那只是残留 UI。真正有效的验证方式只有两个:
-
Ctrl+Shift+P输入Package Control: List Packages,能返回一个(哪怕为空的)列表才算通 -
Ctrl+Shift+P输入Package Control: Install Package,能触发左下角出现Fetching list of available packages...才算链路打通 - 如果输入后命令面板直接关闭、控制台静默、或只显示
reloading plugin就停住,说明Package Control处于“假安装”状态
ST4 用户必须用官网 installation.py 脚本,旧脚本会静默失效
2026 年绝大多数人用的是 Sublime Text 4,但网上大量教程仍沿用 ST3 的哈希校验脚本。ST4 用旧脚本安装后,Ctrl+Shift+P 里能看到 Install Package,但点击无反应、不报错、也不加载——这是最典型的静默失败。
- 必须使用官网最新脚本:
import urllib.request,os,hashlib; exec(urllib.request.urlopen('https://packagecontrol.io/installation.py').read().decode('utf-8')) - 执行后等满 5 秒再判断:左下角弹出
Package Control: Successfully installed Package Control,且控制台末尾是空行 - 若卡在
reloading plugin或超时,立刻切手动方式——不要反复粘贴重试
插件装完不生效?先盯死三个位置
插件不是丢进目录就自动工作。常见“明明装了却没反应”,问题往往卡在这三处:
- 语法作用域不对:比如
Vue Syntax Highlight只在.vue文件或作用域为text.html.vue时生效;纯.html文件不会触发,可按Ctrl+Shift+P输入Set Syntax: Vue强制切换测试 - 路径放错:解压后的插件文件夹(如
Emmet/)必须整体拖进Packages/目录;而.sublime-package文件(如Emmet.sublime-package)必须扔进Installed Packages/,不能混放 - 被忽略列表拦截:
Preferences → Settings用户配置中检查"ignored_packages"数组,确认没把刚装的插件名(如"Emmet"、"GitGutter")写进去
国内网络下 Install Package 卡住,科学上网是唯一可靠解法
Package Control 默认直连 https://packagecontrol.io,不支持代理设置、不接受镜像源、也无法降级协议。任何“改 hosts”“配 http_proxy”“换源地址”的尝试,在 ST4 上基本无效。
- 卡在
Fetching...超过 30 秒,基本可判定为网络层阻断(DNS 污染或 TLS 握手失败) - 临时验证:在控制台执行
urllib.request.urlopen('https://packagecontrol.io/').getcode(),返回200才算通 - 无法科学上网时,只能手动下载插件 ZIP 包,解压后整文件夹放入
Packages/(注意大小写,ConvertToUTF8写成converttoutf8就找不到)
真正麻烦的从来不是“怎么点”,而是“为什么点了没反应”——很多步骤看似机械,但每个环节都存在唯一性依赖:版本对不上、路径放错一级、网络卡在 TLS 层、甚至右下角语法标识没切对,都会让整个流程断在无声处。











