较简单明了的一篇制作sublime Text插件的教程

转载自http://www.welefen.com/how-to-develop-sublime-text-plugin.html

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...来打开一个初始化的插件编辑文件,它将有如下的内容:

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的控制台,执行如下的命令:

view.run_command('example')
如果你在当前文件最前面看到插入了Hello, Word!,那表明插件执行成功了。

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

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

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

[
    {
        "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下,可以通过下面的配置进行:
    [
    {
        "id": "view",
        "children": [
            {
                "caption": "Keymap Manager",
                "id": "keymap-manager",
                "command": "keymapmanager"
            }
        ]
    }
    ]
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值