package control在st4下必须手动将官方.sublime-package文件拖入installed packages/目录,而非依赖控制台脚本;操作前需确认sublime.version()为4xxx、清空旧残留、下载文件大小180–220 kb,拖入后不改名不解压,重启并验证ctrl+shift+p可执行list packages才算成功。

Package Control必须用.sublime-package文件直投Installed Packages
ST4环境下,Package Control不是靠控制台脚本装上的——旧版installation.py在ST4上会静默失败,哪怕控制台显示“installed”也毫无作用。唯一可靠方式是手动把Package Control.sublime-package文件放进Installed Packages/目录。
操作前先确认版本:sublime.version()返回值必须是4xxx;然后彻底关闭Sublime Text,清空Installed Packages/里所有含Package Control字样的文件(包括残留的文件夹和.sublime-package)。从国内镜像下载完整包(如https://packagecontrol.cn/Package%20Control.sublime-package),检查文件大小是否在180–220 KB之间——小于100 KB说明下载损坏,必须重试。
拖入后不改名、不解压、不嵌套子目录,重启后按Ctrl+Shift+P输入Package Control: List Packages能执行并返回结果才算真正加载成功。
GitHub插件ZIP解压后必须重命名再放Packages根目录
从GitHub点Download ZIP得到的压缩包,解压后默认带-master或-main后缀(如Emmet-master/),这层是GitHub自动生成的包装壳,Sublime完全不识别里面的.py文件。
正确做法是:进到该文件夹内,找到含__init__.py或主模块(如emmet.py)的子目录,把它整个剪出来,重命名为官方规范名:
-
Emmet-master/→Emmet/ -
ConvertToUTF8-main/→ConvertToUTF8/ -
Origami-dev/→Origami/
名字必须大小写严格一致,不能有空格、下划线、点号或版本后缀;整个文件夹直接拖进Packages/根目录(不是Installed Packages/,也不是Packages/User/等子目录)。
插件不生效?先查ignored_packages和语法作用域
文件放对了、重启也做了,但命令面板搜不到、快捷键无效——大概率被Sublime主动跳过,而不是没装上。
打开Preferences → Settings,看右侧用户配置中是否有"ignored_packages"字段;如果刚装的插件名(比如"Emmet")正好在里面,它就被彻底禁用,且不会报错、不会提示。
另外,很多插件只在特定语法下触发:
-
Vue Syntax Highlight只响应.vue文件或text.html.vue作用域 -
GitGutter默认只在已提交到Git仓库的文件中显示标记 - 开纯
.html文件时右下角显示HTML,Vue插件就完全沉默
临时验证可按Ctrl+Shift+P输入Set Syntax:手动切换语法,或注释掉ignored_packages整行再重启。
路径和命名大小写敏感性最容易被忽略
Windows系统文件管理器不区分大小写,但ST4内部按Unix规则比对路径和文件夹名——Emmet/和emmet/是两个不同插件,后者会被直接跳过。
不确定路径?别猜,菜单选Preferences → Browse Packages…打开的就是Packages/真实路径;它的上一级目录里的Installed Packages/才是另一个位置。控制台运行print(sublime.packages_path())和print(sublime.installed_packages_path())也能即时验证。
还有个隐形坑:ST4启动后常驻后台进程,只关窗口不等于真正退出——Windows要结束所有subl.exe,macOS要右键Dock图标选Quit并检查活动监视器,Linux得用pkill -f "subl",否则旧代码可能残留导致新插件加载失败。











