本文連接:http://www.welefen.com/how-to-develop-sublime-text-plugin.htmlhtml
SublimeText是一個超讚的編輯器,具體有跨平臺(window/linux/mac)和高性能等諸多特色,使用python開發,安裝包10M都不到。若是你對SublimeText還不夠了解,請閱讀Sublime Text 2 入門及技巧,Sublime Text2:超讚的現代編輯器等文章。本文簡單介紹如何使用python進行Sublime Text插件的開發。python
其實官方已經有了一篇文章來介紹如何開發Sublime Text插件,而且文本是使用Prefixr這個插件進行舉例, 須要看的請移步到這裏How to Create a Sublime Text 2 Pluginlinux
一、經過Tools -> New Plugin...來打開一個初始化的插件編輯文件,它將有以下的內容:git
import sublime, sublime_pluginclass ExampleCommand(sublime_plugin.TextCommand): def run(self, edit): self.view.insert(edit, 0, "Hello, World!")
二、經過Preferences -> Browse Packages...打開Packages文件夾,在該文件夾下創建個子文件夾,名字爲你想開發的插件名字,如:KeymapManager。回到插件開發的初始化編輯器頁面,經過ctrl+s (Windows/Linux) orcmd+s (OS X)保存這個文件,並放到你創建的子文件夾下,文件名如:KeymapManager.pygithub
三、經過ctrl+`快捷鍵打開SublimeText的控制檯,執行以下的命令:json
view.run_command('example')
若是你在當前文件最前面看到插入了Hello, Word!,那代表插件執行成功了。sublime-text
四、ExampleCommand名字改成你想要的插件名字,如: KeymapmanagerCommand,而後就能夠開發該插件對應的功能了。api
五、經過官方的API文檔查找你須要的接口,文檔見:http://www.sublimetext.com/docs/2/api_reference.html瀏覽器
六、插件開發完成後,下面就須要給插件綁定快捷鍵了,在你的插件目錄下創建Default (Windows).sublime-keymap, Default (Linux).sublime-keymap and Default (OSX).sublime-keymap文件,他們分別是給不一樣的平臺使用的。內容大體以下:編輯器
[ { "keys": [ "ctrl+alt+k" ], "command": "keymapmanager" } ]
這個文件徹底是個JSON格式,ctrl+alt+k就表示這個插件的快捷鍵了,固然這個快捷鍵最好不要跟其餘插件的快捷鍵衝突了。
七、若是你想把你的插件植入到頂部菜單或者右鍵菜單裏,你能夠經過創建下面的文件方式進行:
Main.sublime-menu 頂部菜單
Side Bar.sublime-menu 右鍵操做左側Side Bar菜單
Context.sublime-menu
controls 右鍵操做文件菜單 文件內容也是個JSON個是,如:我想把插件植入到頂部菜單View下,能夠經過下面的配置進行:
[ { "id": "view", "children": [ { "caption": "Keymap Manager", "id": "keymap-manager", "command": "keymapmanager" } ]} ]
八、這樣下來一個插件差很少就開發完了,你能夠將插件文件夾打包發給須要安裝的同窗。固然這種方式太麻煩了,如今有各Package Control的插件,專門來管理插件安裝的,相信你已經安裝了。能夠經過下面的步驟進行:
你須要有個github賬號,並fork https://github.com/wbond/package_control_channel
經過git clone命令下載你fork完的地址,如: git@github.com:welefen/package_control_channel.git
修改repositories.json這個文件,把你的插件名稱和對應的github項目地址添加進去
ci並push到你的package ctrol裏,而後經過pull request推到官方的github裏,若是他們審批經過了,那麼你的插件就會放到package control裏,別人就能夠經過install直接安裝了
九、最後推薦幾個國人寫的幾個比較好的插件
GBK Encoding Support,月影大大的做品,能夠經過package control執行安裝。讓Sublime Text執行GBK編碼
sublime-view-in-browser,ququ的做品,用於瀏覽器預覽當前文件,喜歡Editplus預覽功能的強烈推薦,從這裏下載
KeymapManager, 哈哈,這個是我寫的,用來管理全部插件的快捷鍵的。若是不能記住全部插件快捷鍵的話,能夠經過這個插件快速搜索出來,對應的github地址
最後爲了方便Sublime Text的交流,和月影、ququ、a4等幾位大大一塊兒創建了個QQ羣:193076432,歡迎你們加入。