最近写了一个lua智能提示的插件LuaSmartTips。这个插件一直都是自己一个人在用,昨天突然想把插件提交到Package Control,如果其他的人有这样的需求就可以直接安装。

Package Control网站上已经给出了很详细的提交步骤,不过是英文版的,英语好的可以直接读Submitting a Package

下面主要介绍一下针对于代码托管在Github上面的插件提交。

1.审查现有的插件

访问Search Page寻找类似的插件。作者建议如果有可以改善的插件的话,尽可能的和插件的原作者进行沟通,尽量不要去新增一个。

2.选择一个名字

名字中不要带单词sublime,不要使用太接近的名字,不要使用符号。

3.代码托管

代码托管有很多种方式,这里推荐使用Github,注意目录结构,确保Github根目录就是你插件的根目录。

4.版本控制

在Github你的插件项目中,建立一个Tag,tag的名字是你的版本号,规则遵从http://semver.org/

5.检查你的插件

删掉所有的.pyc文件,插件加载时会自动生成这些文件。

删掉package-metadata.json,这是插件安装后自动生成的。

检查文件命名

如果有使用第三方库,在.sublime-package这个文件中说明。

6.测试你的插件

提交到Package Control之前,我们要先测试一下,保证提交的内容符合作者的想法。

fork Package Control Channel,并clone到你的机器上。使用Sublime Text打开这个文件夹。

repository/是插件的配置信息,按照首字母分为不同的文件保存,把你的插件信息放在对应的位置

{
"name": "Alignment",
"details": "https://github.com/wbond/sublime_alignment",
"releases": [
{
"sublime_text": "*",
"tags": true
}
]
}

7.增加平台信息

如果插件只支持os x和linux就这样写

{
"name": "Alignment",
"details": "https://github.com/wbond/sublime_alignment",
"releases": [
{
"sublime_text": "*",
"platforms": ["osx", "linux"],
"tags": true
}
]
}

如果插件只支持windows就这样写

{
"name": "Alignment",
"details": "https://github.com/wbond/sublime_alignment",
"releases": [
{
"sublime_text": "*",
"platforms": ["windows"],
"tags": true
}
]
}

8.执行测试

用Package Control安装 ChannelRepositoryTools插件。

然后执行ChannelRepositoryTools: Test Default Channel command。windows 下ctrl + shift + p 可以找到ChannelRepositoryTools: Test Default Channel command。

这里可能会有一些错误信息,可能是你的插件位置放的不对,也可能是语法有错误。修改你的代码直到没有报错,这样插件就测试完成了。

9.Pull Request

然后就是最后一步了,把你修改后的Package Control Channel文件Pull到作者那里,等待作者审核。

提交Sublime Text 插件到Package Control的更多相关文章

  1. Sublime text 3 中Package Control 的安装与使用方法和解决Sublime Text 3不能正确显示中文的问题

    Sublime text 3 中Package Control 的安装与使用方法,英文好可以在这个网址看看, 下面简单的说明一下 : https://packagecontrol.io/install ...

  2. Sublime Text 3安装Package Control快速建立html5和xhtml文档

    Sublime Text 3安装Package Control快速建立html5和xhtml文档 先关闭Sublime text 3:第1步:下载sublime_package_control-mas ...

  3. Sublime Text 2 安装Package Control和插件的两种方法

    缘起 前几天系统刚刚还原了,重装完Sublime Text2再安装插件的时候可能是由于公司的网络环境的问题,各种报错,将解决方法记录下来.系统环境:Win7 x64 + Sublime Text2. ...

  4. Sublime Text 3 无法使用package control安装插件解决办法

    Crossing's Blog NOT Genius but Try Best 首页 分类 关于 归档 标签 问题貌似出现在liveStyle版本更新之后,因为打算安装javascript next和 ...

  5. sublime text 3和sublime text 2的 package control 插件 代码

    SECURITY NOTICE: The Python code used by this method does not use SSL because Sublime Text on Linux ...

  6. Sublime Text 3安装Package Control并安装Processing插件

    由于PDE编辑界面对中文的支撑太差,于是想换到ST3来编辑代码,结果导致了噩梦的开始. 首先,找不到“Package Control”!!! 这还怎么玩~ 于是打开http://packagecont ...

  7. sublime text 3安装 package control 插件的方法

    自动安装的方法 - 快捷键ctrl+` 或者View->Show Console,输入如下代码 import  urllib.request,os;pf='Package Control.sub ...

  8. Sublime Text 3 安装 Package Control

    1.打开sublime text 3 2.Ctrl+`打开控制台或者View->Show Console菜单打开命令行,输入下面这段代码后按Enter键 import urllib.reques ...

  9. Sublime text 3 中Package Control 的安装与使用方法

    Package Control插件本身是一个为了方便管理插件的插件,在Sublime text 3中,Package Control 的安装方法一开始出来的方法是要先安装Git, 再输入代码来安装,原 ...

随机推荐

  1. Windows与Linux文件系统互访的几种方法

    首先,我们知道基于文件的几种服务:ftp,sftp,这两种服务都是文件传输服务,偏重于网络传输,并不是实时互访.通常,我们需要在远程和本地 同时操作同一个目录,如:在Windows下使用各种强大的ID ...

  2. 学习笔记: JavaScript/JQuery 的cookie操作

    转自:http://blog.csdn.net/barryhappy/archive/2011/04/27/6367994.aspx cookie是网页存储到用户硬盘上的一小段信息.最常见的作用是判断 ...

  3. 使用Intent创建Tab页面

    前面已经介绍了如何使用TabActivity来创建Activity布局,前面添加Tab页面使用了TabHost.TabSpec如下方法. setContent(int viewId):直接将指定Vie ...

  4. Backbone源码解读(一)事件模块

    Backbone源码浅读: 前言: Backbone是早起的js前端MV*框架之一,是一个依赖于underscore和jquery的轻量级框架,虽然underscore中基于字符串拼接的模板引擎相比如 ...

  5. MyBatis动态SQL与模糊查询

    sqlxml <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mapper PUBLIC & ...

  6. page cache 与free

    我们经常用free查看服务器的内存使用情况,而free中的输出却有些让人困惑,如下: 先看看各个数字的意义以及如何计算得到: free命令输出的第二行(Mem):这行分别显示了物理内存的总量(tota ...

  7. TypeScript教程3

    1.快速回顾一下这JavaScript中的命名函数和匿名函数: 纯文本查看 复制代码 1 2 3 4 5 //Named functionfunction add(x, y) {     return ...

  8. InfluxDB安装及配置

    这是我之前整理的InfluxDB安装及配置的笔记,这里记录下,也方便我以后查阅. 环境: CentOS6.5_x64 InfluxDB版本:1.1.0 一.安装 1.二进制安装 这里以centos6. ...

  9. Codeforces 712B

    B. Memory and Trident time limit per test:2 seconds memory limit per test:256 megabytes input:standa ...

  10. matlab和C语言的break及continue测试

    break和continue语句 有两个附加语句可以控制while和for循环:break和continue语句.break语句可以中止循环的执行和跳到end后面的第一句执行,而continue只中止 ...