sublime插件开发

SublimeText是一个超赞的编辑器,具体有跨平台(window/linux/mac)和高性能等诸多特点,使用python开发,安装包10M都不到。如果你对SublimeText还不够了解,请阅读Sublime Text 2 入门及技巧Sublime Text2:超赞的现代编辑器等文章。本文简单介绍如何使用python进行Sublime Text插件的开发。

其实官方已经有了一篇文章来介绍如何开发Sublime Text插件,并且文本是使用Prefixr这个插件进行举例, 需要看的请移步到这里How to Create a Sublime Text 2 Plugin

插件制作步骤

1、通过Tools -> New Plugin…来打开一个初始化的插件编辑文件,它将有如下的内容:

1
2
3
4
import sublime, sublime_plugin
class ExampleCommand(sublime_plugin.TextCommand):
  def run( self , edit):
  self .view.insert(edit, 0 , "Hello, World!" )

2、通过Preferences -> Browse Packages…打开Packages文件夹,在该文件夹下建立个子文件夹,名字为你想开发的插件名字,如:KeymapManager。回到插件开发的初始化编辑器页面,通过ctrl+s (Windows/Linux) orcmd+s (OS X)保存这个文件,并放到你建立的子文件夹下,文件名如:KeymapManager.py

3、通过ctrl+`快捷键打开SublimeText的控制台,执行如下的命令:

1
view.run_command( 'example' )

如果你在当前文件最前面看到插入了Hello, Word!,那表明插件执行成功了。

4、ExampleCommand名字改为你想要的插件名字,如: KeymapmanagerCommand,然后就可以开发该插件对应的功能了。

5、通过官方的API文档查找你需要的接口,文档见:http://www.sublimetext.com/docs/2/api_reference.html

6、插件开发完成后,下面就需要给插件绑定快捷键了,在你的插件目录下建立Default (Windows).sublime-keymapDefault (Linux).sublime-keymap and Default (OSX).sublime-keymap文件,他们分别是给不同的平台使用的。内容大致如下:

1
2
3
4
5
6
[
  {
  "keys" : [ "ctrl+alt+k" ],
  "command" : "keymapmanager"
  }
]

这个文件完全是个JSON格式,ctrl+alt+k就表示这个插件的快捷键了,当然这个快捷键最好不要跟其他插件的快捷键冲突了。

7、如果你想把你的插件植入到顶部菜单或者右键菜单里,你可以通过建立下面的文件方式进行:

  • Main.sublime-menu 顶部菜单
  • Side Bar.sublime-menu  右键操作左侧Side Bar菜单
  • Context.sublime-menu controls 右键操作文件菜单

文件内容也是个JSON个是,如:我想把插件植入到顶部菜单View下,可以通过下面的配置进行:

1
2
3
4
5
6
7
8
9
10
11
12
13
[
  {
  "id" : "view" ,
  "children" :
  [
  {
  "caption" : "Keymap Manager" ,
  "id" : "keymap-manager" ,
  "command" : "keymapmanager"
  }
  ]
  }
]

8、这样下来一个插件差不多就开发完了,你可以将插件文件夹打包发给需要安装的同学。当然这种方式太麻烦了,现在有各Package Control的插件,专门来管理插件安装的,相信你已经安装了。可以通过下面的步骤进行:

  1. 你需要有个github帐号,并fork https://github.com/wbond/package_control_channel
  2. 通过git clone命令下载你fork完的地址,如: git@github.com:welefen/package_control_channel.git
  3. 修改repositories.json这个文件,把你的插件名称和对应的github项目地址添加进去
  4. ci并push到你的package ctrol里,然后通过pull request推到官方的github里,如果他们审批通过了,那么你的插件就会放到package control里,别人就可以通过install直接安装了

9、最后推荐几个国人写的几个比较好的插件

  • GBK Encoding Support,月影大大的作品,可以通过package control执行安装。让Sublime Text执行GBK编码
  • sublime-view-in-browser,ququ的作品,用于浏览器预览当前文件,喜欢Editplus预览功能的强烈推荐,从这里下载
  • KeymapManager, 哈哈,这个是我写的,用来管理所有插件的快捷键的。如果不能记住所有插件快捷键的话,可以通过这个插件快速搜索出来,对应的github地址

最后为了方便Sublime Text的交流,和月影、ququ、a4等几位大大一起建立了个QQ群:193076432,欢迎大家加入。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是一份Sublime插件开发教程,供参考: 1. Sublime Text插件结构 Sublime Text插件包含以下文件: - 插件代码文件 - 插件信息文件 - 插件资源文件 插件代码文件是插件的核心代码,通常使用Python编写,并提供一些API供Sublime Text调用。插件信息文件包含插件的元数据,如插件名称、版本号、作者等。插件资源文件包含插件所需的资源文件,如图标、菜单项等。 2. 创建Sublime插件 要创建一个Sublime插件,需要了解Sublime Text的API和插件结构。Sublime Text提供了一个Python模块,用于开发插件。该模块包含了很多有用的API,可以帮助开发者创建功能强大的插件。 在开始创建插件之前,需要确保已经安装了Sublime Text。可以从Sublime Text的官方网站下载安装程序。 3. 创建插件信息文件 Sublime插件信息文件使用JSON格式编写。以下是一个示例插件信息文件: ```json { "name": "MyPlugin", "version": "1.0.0", "author": "John Doe", "description": "My awesome plugin", "dependencies": [], "url": "https://example.com", "license": "MIT", "platforms": ["windows", "osx", "linux"] } ``` 4. 创建插件代码文件 Sublime插件代码文件通常使用Python编写,可以使用Sublime Text提供的API。以下是一个示例插件代码文件: ```python import sublime import sublime_plugin class MyCommand(sublime_plugin.TextCommand): def run(self, edit): self.view.insert(edit, 0, "Hello, World!") ``` 5. 创建插件资源文件 Sublime插件资源文件是插件所需的资源文件,如图标、菜单项等。以下是一个示例插件资源文件: ```xml <bindings> <binding key="ctrl+shift+h" command="my_command" /> </bindings> ``` 6. 打包插件 创建好插件信息文件、插件代码文件和插件资源文件后,就可以将它们打包成一个插件。可以使用Sublime Text的打包工具进行打包。打包后的插件可以通过Sublime Text的插件管理器进行安装。 7. 安装插件 要安装一个Sublime插件,可以使用Sublime Text的插件管理器。打开Sublime Text,选择菜单“Preferences”→“Package Control”→“Install Package”,然后输入插件名称进行搜索即可。 总之,Sublime插件开发需要熟悉Sublime Text的API和插件结构,以及Python编程。掌握这些知识后,就可以开发出功能强大的Sublime插件
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值