Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 创建同时支持ST2和ST3的升华文本插件_Python_Git_Sublimetext2_Sublimetext_Sublimetext3 - Fatal编程技术网

Python 创建同时支持ST2和ST3的升华文本插件

Python 创建同时支持ST2和ST3的升华文本插件,python,git,sublimetext2,sublimetext,sublimetext3,Python,Git,Sublimetext2,Sublimetext,Sublimetext3,我为升华文本2制作了几个插件,但是当升华文本3出现时,它有了一个新的Python引擎,我的插件停止工作。通过逐一调试所有问题,我成功地修复了它们,但现在我有了两个版本。最初的安装是从PackageManager顺利完成的,但新的安装只能从我从git签出的代码分支安装 我应该如何正确管理sublime文本插件以支持多个版本 有没有关于如何有效执行此操作的博客帖子?您可以为不同版本的Sublime文本管理两个不同的代码分支。如果您查看第200行和以下内容,您将看到以下示例: //如果您的包仅与的特定

我为升华文本2制作了几个插件,但是当升华文本3出现时,它有了一个新的Python引擎,我的插件停止工作。通过逐一调试所有问题,我成功地修复了它们,但现在我有了两个版本。最初的安装是从PackageManager顺利完成的,但新的安装只能从我从git签出的代码分支安装

我应该如何正确管理sublime文本插件以支持多个版本


有没有关于如何有效执行此操作的博客帖子?

您可以为不同版本的Sublime文本管理两个不同的代码分支。如果您查看第200行和以下内容,您将看到以下示例:

//如果您的包仅与的特定版本兼容
//升华文本,这将导致包被隐藏
//具有不兼容版本的用户。
{
“详细信息”:https://github.com/wbond/sublime_alignment",
“发布”:[
{
//此分支(默认值:“主”)用于Sublime Text 2。
//请记住:升华_文本键是必需的!
“升华文字”:“=3000”,
“详细信息”:https://github.com/wbond/sublime_alignment/tree/st3"
}
]
},
这样,如果您对不同版本的ST、甚至不同版本的ST3有不同的代码基础,如果您依赖于某个只在特定版本中实现的API更改,最终用户将无缝地获得您想要的插件版本

这可能是不可能的,这取决于您如何使用API,但从长远来看,在ST2和ST3之间协调代码可能是最容易的。如果需要使用某些高级功能,则始终可以使用以下类型的构造:

如果sublime.version()>=3000:
做高级的东西
其他:
做些什么
拆分代码并优雅地失败,在某些情况下,在ST2下运行的某些插件可能不具备使用ST3时所具有的功能