Sublime 插件自定义学习

简介:

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

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

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


1.创建自定义插件代码

点击Tools菜单下的New plugin..,系统会自动生成一个插件的基本模板,代码如下

import sublime, sublime_plugin

class ExampleCommand(sublime_plugin.TextCommand):
    def run(self, edit):
        self.view.insert(edit, 0, "Hello, World!")

系统默认的插件名字为Example,因为是插入文本,所以插件继承的是sublime_plugin.TextCommand文本命令

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

import sublime, sublime_plugin

class AutoHtmlCommand(sublime_plugin.TextCommand):
    def run(self, edit):
        html = '''<!doctype html>
        <html>
        <head>
            <title>xuwm</title>
            <meta charset='utf-8'>
        </head>
        <body>
        \t
        </body>
        </html>'''
        self.view.insert(edit, 0, html)

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

view.run_command('auto_html')

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

2.设置插件的快捷键

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

  • Default (Linux).sublime-keymap
  • Default (OSX).sublime-keymap
  • Default (Windows).sublime-keymap

一般来说,linuxwindows的文件相同,现在我们向windowsDefault (Windows).sublime-keymap文件中插入以下代码

[ 
    { 
        "keys": ["ctrl+alt+x"], "command": "auto_html"
    } 
]

一般sublime的配置文件格式都是json,注意那个快捷键,要保证没有被系统暂用,你需要在系统快捷键设置里查看一下,点击Preferences > Key Bindings – Default这里会显示所有的已经设置的快捷键.

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

3.编辑菜单中加入插件快捷方式

首先,系统菜单配置文件在Packages\DefaultMain.sublime-menu文件中,找到编辑菜单的配置文件,加下如下配置代码

{
    "caption": "autoHtml", "mnemonic": "a",
    "id": "autoHtml",
    "children":
        [
            { "command": "auto_html" }
        ]
}

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

本文的插件只能算是demo级的,还有很多高级的功能都没有提及,开发插件的基础就是要了解Python基础,下次再发一个高级版的插件上来。


目录
相关文章
|
1月前
|
数据安全/隐私保护
sublime 如何安装ftp插件
sublime 如何安装ftp插件
13 1
sublime 如何安装ftp插件
sublime text verilog-automatic插件使用方法
sublime text verilog-automatic插件使用方法
115 0
sublime text verilog-automatic插件使用方法
Sublime Text自定义代码片段Code Snippets
Sublime Text自定义代码片段Code Snippets
219 0
|
程序员
sublime实用插件
sublime实用插件
106 0
|
Python
Python编程:sublime编辑器python开发必装插件
Python编程:sublime编辑器python开发必装插件
149 0
Sublime Text - 修改插件的默认安装位置
Sublime Text - 修改插件的默认安装位置
241 0
|
JSON JavaScript 开发工具
sublime text 2插件
Sublime有好几种安装插件的方法,但是最好用也是最长用的是ctrl+shift+p。
给Sublime Text2安装GraphQL语法高亮插件
给Sublime Text2安装GraphQL语法高亮插件
109 0
给Sublime Text2安装GraphQL语法高亮插件
|
Web App开发 移动开发 Python
如何根据自己的实际需求开发属于自己的sublime text插件
如何根据自己的实际需求开发属于自己的sublime text插件
100 0
如何根据自己的实际需求开发属于自己的sublime text插件