SublimeText的插件開發

本文連接: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的插件,專門來管理插件安裝的,相信你已經安裝了。能夠經過下面的步驟進行:

  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直接安裝了

九、最後推薦幾個國人寫的幾個比較好的插件

  • GBK Encoding Support,月影大大的做品,能夠經過package control執行安裝。讓Sublime Text執行GBK編碼

  • sublime-view-in-browser,ququ的做品,用於瀏覽器預覽當前文件,喜歡Editplus預覽功能的強烈推薦,從這裏下載

  • KeymapManager, 哈哈,這個是我寫的,用來管理全部插件的快捷鍵的。若是不能記住全部插件快捷鍵的話,能夠經過這個插件快速搜索出來,對應的github地址

最後爲了方便Sublime Text的交流,和月影、ququ、a4等幾位大大一塊兒創建了個QQ羣:193076432,歡迎你們加入。

相關文章
相關標籤/搜索