手动安装旧版本插件需三步:先用git克隆指定tag到packages目录(如git clone --branch v4.2.0 --depth 1 https://github.com/colinta/sublime-origami.git origami),再在package control设置中添加"auto_upgrade_ignore": ["origami"]防止覆盖,最后彻底退出sublime进程并重启以确保加载新版代码。

手动安装并运行旧版本插件包,关键不是“怎么装”,而是“怎么绕过 Package Control 的自动覆盖 + 确保 Sublime 加载的是你指定的那版代码”。ST4 下 Package Control 默认只认最新 release,历史版本得自己拉、自己管、自己锁。
怎么确认插件支持历史版本?
不是所有插件都能回退。先验证它有没有 Git tag 或 release 记录:
- 用
Package Control: List Packages查出插件名(比如Origami) - 去 packagecontrol.io 页面点 Source 链接跳转 GitHub
- 进仓库后看
Releases或Tags标签页 —— 如果只有v5.0.1、v4.2.0这类标记,说明可回退;如果全是main分支提交,基本只能靠 commit hash
Git 克隆指定 tag 到 Packages 目录
这是最稳的方式,比下载 ZIP 更可控,且能精准锁定 commit:
- 关掉 Sublime Text(后台进程常驻会导致旧模块残留)
- 执行
Preferences → Browse Packages…打开真实路径,终端 cd 进去 - 运行命令(以安装
v4.2.0版Origami为例):git clone --branch v4.2.0 --depth 1 https://github.com/colinta/Sublime-Origami.git Origami
- 注意:文件夹名必须和插件名一致(
Origami,不是Sublime-Origami),大小写敏感 - 完成后重启 Sublime,控制台会显示
reloading plugin Origami.xxx,确认加载的是新路径
防止 Package Control 自动升级覆盖
不加防护,下次启动或后台检查时,Package Control 可能悄悄把你手动装的旧版替换成最新版:
- 打开
Preferences → Package Settings → Package Control → Settings - 在用户设置里加一行:
"auto_upgrade_ignore": ["Origami"]
- 保存后重启 —— 这个配置会让 Package Control 跳过对该插件的任何升级动作
- 如果插件名含空格或特殊字符(如
Emacs Pro Essentials),用官网注册名,通常是EmacsProMode或EmacsProEssentials,查packagecontrol.io页面 URL 或插件仓库package-metadata.json
手动替换 ZIP 包要注意的坑
如果只有 ZIP 没法用 Git,解压后极易出错:
- GitHub 下载的
Origami-main.zip解压后多一层Sublime-Origami-main/,这层必须删掉,把里面的Origami/文件夹(含__init__.py)直接提到 Packages 顶层 - 文件夹名不能带
-master、-main、.zip后缀,也不能是全小写(如origami)——Sublime 加载器会跳过 - 检查
Origami/目录下至少有一个.py文件定义了sublime_plugin.TextCommand或类似类,否则控制台报reloading plugin Origami failed - 别指望覆盖同名文件夹生效:必须先删旧文件夹,再放新文件夹,重启前确保旧目录彻底不存在
最易被忽略的一点:Sublime 不会主动 reload 已加载模块,哪怕你删了旧文件夹、放了新文件夹,只要进程没彻底退出,它就还在跑老代码。关窗口 ≠ 关进程,务必用任务管理器或 ps aux | grep sublime 确认无残留进程。











