我正在我的 OSX 开发环境中制作 ST3 插件,但根据非官方文档:
Sublime Text 附带一个精简的标准库。Tkinter、multiprocessing 和 sqlite3 模块是缺失的模块之一。
即使它没有与 ST3 捆绑在一起,有没有办法我仍然可以导入multiprocessing
(文档)?有没有办法可以将它作为插件目录中的“独立”模块导入?
假设您打算将此程序广泛分发,那么期望用户将 Python 3 安装在标准位置以使用您的工作可能是不合理的。但是,根据 Python 的再分发许可证,您可能只需multiprocessing
与插件捆绑即可。如果您的主my_awesome_plugin.py
文件位于插件目录的根目录中,请将完整multiprocessing
目录作为子目录放入,您应该可以import multiprocessing as mp
正常工作。幸运的是,它是纯 Python,因此您不必担心特定于平台的发行版。
编辑
好吧,我的坏。在对...lib/python3.3/
层次结构进行了更多探索之后,事实证明那里有一个编译_multiprocessing.so
库来补充纯 Python 版本。因此,这将比仅仅放入multiprocessing
目录更困难一些。我仍然认为这可能是可行的,因为理论上您可以包含三个不同 ST3 平台的编译库,然后放入一些逻辑来确定用户正在运行的操作系统。但是,我并不了解 Python 内部的最新情况,因为我需要正确回答这个问题,所以我会听从其他人的意见,了解它究竟是如何工作的。