【发布时间】:2017-01-09 21:59:41
【问题描述】:
我浏览了 Sublime Text 3 中一些包的源代码,我在目录中看到了一个文件,该文件的扩展名为“so”,没有别的。我想知道,这是用 C++ 等本地语言创建的真正编译文件吗?是否可以在没有 python 代码的本地语言中为 Sublime Text 3 创建插件?
【问题讨论】:
标签: plugins sublimetext3 sublimetext
我浏览了 Sublime Text 3 中一些包的源代码,我在目录中看到了一个文件,该文件的扩展名为“so”,没有别的。我想知道,这是用 C++ 等本地语言创建的真正编译文件吗?是否可以在没有 python 代码的本地语言中为 Sublime Text 3 创建插件?
【问题讨论】:
标签: plugins sublimetext3 sublimetext
Python 允许您在原生 C 和 C++ 中实现模块,但您用来与 sublime 插件交互的 API 仅支持 Python。
这意味着虽然您可以想象用其中一种语言而不是 Python 来编写大部分插件,但您仍然需要编写将本机代码和 Sublime 粘合在一起的 Python 部分。
这样做还需要您为所有 Sublime 平台(Linux、Windows 和 MacOS)编译本机代码,并且可能还需要一个 32 位和 64 位版本以涵盖所有用户可能性。
因此,除非您需要公开一些在简单、可移植的 Python 代码中无法实现的功能,否则这可能不是一个好主意。即使是Python documentation on extending with C/C++ 也建议您不要在不必要的情况下这样做。
【讨论】: