天天看点

Sublime 插件自定义学习

用了sublime很长时间了,感觉这个ide确实不错,简约而不简单

记的之前用webstorm的时候,每当新建html页的时候,系统总会自动的填充一些骨架代码,但是用sublime的时候,新建html文件的时候,系统不会自动填充,所以 我想用sublime插件机制,自动填充骨架代码.

sublime提供了灵活的插件扩展机制,下面提供一个完整的自动填充html骨架代码的小插件,纯当练手:)

点击<code>tools</code>菜单下的<code>new plugin..</code>,系统会自动生成一个插件的基本模板,代码如下

系统默认的插件名字为<code>example</code>,因为是插入文本,所以插件继承的是<code>sublime_plugin.textcommand</code>文本命令

<code>self.view.insert</code>是插入方法,有三个参数,第一个代码当前可用状态的输入框,第三个参数是插入的内容,此处应该换成我们要插入的html骨架代码,我们把命令换成<code>autohtmlcommand</code>,代码如下

另存为autohtml.py,保存在<code>packages</code>中新建一个以插件命名的文件夹里,这里以autohtml命名,完成之后,可以在sublime命令行中输入以下命令

你会发现html骨架代码会出现在当前编辑窗口内,下面我们来为这个插件设置一个快捷键.

通常sublime插件的快捷键需要三个文件

default (linux).sublime-keymap

default (osx).sublime-keymap

default (windows).sublime-keymap

一般来说,<code>linux</code>与<code>windows</code>的文件相同,现在我们向<code>windows</code>的<code>default (windows).sublime-keymap</code>文件中插入以下代码

一般sublime的配置文件格式都是json,注意那个快捷键,要保证没有被系统暂用,你需要在系统快捷键设置里查看一下,点击<code>preferences &gt; key bindings – default</code>这里会显示所有的已经设置的快捷键.

设置完之后,我们随便打开个文件,按下<code>ctrl+alt+x</code>,好玩的东西出现了:),当然,除了可以设置快捷键,我们还可以把命令加到系统菜单中.

首先,系统菜单配置文件在<code>packages\default</code>的<code>main.sublime-menu</code>文件中,找到编辑菜单的配置文件,加下如下配置代码

最后,你会发现在<code>edit</code>菜单里面有一个<code>autohtml</code>项,点击之后,当前窗口就会出现html骨架代码,是不是很有成就感:)

继续阅读