ExtractMySnippets无法通过Package Control安装,因其未提交至官方源且无公开维护仓库;需手动将含extract_mysnippets.py的文件夹复制到Packages目录并重启Sublime Text。

ExtractMySnippets 不是官方插件,也未在 Package Control 仓库中上架,直接通过 Package Control: Install Package 搜索不到 —— 你得手动安装。
为什么找不到 ExtractMySnippets?
这个插件没有提交到 Package Control 官方源,GitHub 上也没有公开、持续维护的主仓库。部分用户曾用它从 C++/Python 文件中按函数名或注释标记(如 // snippet: name)批量提取代码块,但它的分发方式是零散的:有人贴过 Gist,有人放在私人 Gitcode 仓库,还有人仅在论坛发过 ZIP 包。
常见错误现象包括:
- 在命令面板输入
Install Package后搜ExtractMySnippets,列表为空 - 搜
snippet extract或code extract,出来的是SnippetTools、SublimeCodeIntel等无关插件 - 网上教程给的下载链接已失效(比如指向已删的 Gist 或 404 的 Gitcode 页面)
怎么手动装上并让它跑起来?
如果你手头有该插件的源码(通常是一个含 extract_mysnippets.py 和 Default.sublime-commands 的文件夹),按以下步骤操作:
- 打开 Sublime Text →
Preferences→Browse Packages…,进入Packages目录 - 把插件文件夹(不要套子目录,直接是顶层含
.py文件的文件夹)复制进去,建议重命名为ExtractMySnippets - 重启 Sublime Text(必须重启,否则插件不会加载)
- 按
Ctrl+Shift+P(Windows/Linux)或Cmd+Shift+P(macOS),输入Extract My Snippets,看是否出现命令
如果命令没出现,检查插件文件夹里是否有 extract_mysnippets.py,且首行不是 Python 2 语法(如 print "xxx"),Sublime Text 3/4 默认用 Python 3 运行插件。
替代方案:用原生功能+正则快速提取片段
与其卡在找不着的插件上,不如用 Sublime 自带能力达成类似效果。例如,你想从一堆函数定义中提取所有以 def test_ 开头的函数块:
- 按
Ctrl+F打开查找面板,启用正则(点击.*按钮) - 输入:
^def test_.*?^(?=def |\Z)(需开启.匹配换行,即勾选右下角.\n) - 按
Alt+Enter全选所有匹配块,再Ctrl+X剪切到新标签页
注意:这种写法依赖函数间有空行或明确前缀,不能处理嵌套缩进或装饰器跨行等复杂情况 —— 但对多数测试函数、配置段落已够用。
容易被忽略的关键点
插件名称大小写敏感:ExtractMySnippets 和 extractmysnippets 是两个不同文件夹;Sublime 不会自动合并;Packages 目录下已有同名文件夹时,后放入的不会覆盖,而是静默失败。另外,插件若含 .sublime-settings 但未提供默认配置,运行时可能报 KeyError 而不提示 —— 此时打开控制台(View → Show Console)才能看到真实错误。


















