sublime开发插件

我在网上下了个模板插件:

下载地址:https://github.com/kairyou/SublimeTmpl

我研究了一下他的代码,并自己尝试改了一下,建立自己的模板。

为什么要建立模板?

因为有些是框架的代码,每个文件都会有,所以这样的代码就直接写在模板中,每次新建文件自动加载,省的每次都要复制。

从github下载下来之后,解压,放在sublime/Packages/SublimeTmpl 后面的目录必须是这个, 把解压的文件放到这个目录下。

在 sublime 的菜单, File标签 就会出来 new file(sublime Tmpl) 就可以建立作者写的模板了

模板写在templates 目录下,, 我写的一个lua (名字:lua.tmpl 参数和名字是对应的)的模板代码:${1:} 这个是建立完文件 按tab键 可以快速修改的地方

–[[ Anchor : zkyDate: ${1:2015/1/30}Target: ${2:目标}]]local EVENT_NET_PACKAGE= 1000 –lua解析协议的入口function closeMe() thisForm:setHide(true)endfunction onLoad()${3:thisForm:addListener("NetWork")}${4:thisForm:addListener("MySelf")}initEngish()initSet()endfunction initEngish()endfunction initSet()endfunction onShow()endfunction onEvent(id, is)if id==EVENT_NET_PACKAGE thenparseNetPackage(is)endendfunction parseNetPackage(is)is:setOffset(0)local msgID=is:readInt()MYLOG("parseNetPackage–msgID–>"..string.format("0X%x", msgID))if msgID == ${5:MSG_ID} then –$6$0endend关于怎么把你想要的菜单添加到sublime中,在你开发的插件的文件中,定义如下文件名,就是可以在 sublime相应的菜单上添加新的菜单

Main.sublime-menu 该文件定义的是sublime的顶部菜单

Side Bar.sublime-menu 鼠标右键出来的 side Bar 菜单

Context.sublime-menu 左侧的文件 右键操作文件夹弹出的菜单

看下 Main.sublime-menu 下的代码: 意思是在file的标签 加入一个 New File (SublimeTmpl) 的菜单,

菜单的子节点 为 lehoo-Lua,

命令传输的接受文件,为 sublime_tmpl ,因为sublime是用 python开发的, 插件也是用python开发的,所以这个命令就会指向 sublime_tmpl.py 这个执行文件。

args 为传递过去的参数。 可加多个子标签。

[{"id": "file","children":[{"caption": "New File (SublimeTmpl)","children":[{"caption": "lehoo-Lua","command": "sublime_tmpl","args": {"type": "lua"}},                    {                        "caption": "HTML",                        "command": "sublime_tmpl",                        "args": {                            "type": "html"                        }                    }]}]},

如果我们添加新的语言模板,需要修改SublimeTmpl.sublime-settings 这个文件,才能是保存的文件是相应后缀名, 并且 语法是高亮的。

{"xml-960*640": {"syntax": "Packages/XML/XML.tmLanguage"},"lua": {"syntax": "Packages/Lua/Lua.tmLanguage"// ,"extension": "html" # default_extension},"html": {"syntax": "Packages/HTML/HTML.tmLanguage"// ,"extension": "html" # default_extension},"disable_keymap_actions": false, // "all"; "html,css""date_format" : "%Y-%m-%d %H:%M:%S","attr": {"author": "Your Name","email": "you@example.org","link": ""}}

上面是我添加的一个lua 语言的关联, xml-960*640 为传过来的参数,模板的名字也是这个名字

下面的 attr 的东西是作者写的,就是可以加入日期及作者相关的, 具体请看上面的链接文章

Lua.tmLanguage 在相应的目录都是有这个文件的, 关联的时候,看看确认下

添加一下余下的那两种菜单试试,新建上面 相应的文件名字 如:Side Bar.sublime-menu 放到这个目录下,写入(另一个一样的,现在点击相应的菜单也会出现 New File (sublimeTmpl) 这个菜单了,并且操作有效[{"caption": "New File (SublimeTmpl)","children":[{"caption": "Lua","command": "sublime_tmpl","args": {"type": "lua"}},{"caption": "HTML","command": "sublime_tmpl","args": {"type": "html"}}]}]我们新加入的模板,没有快捷键命令,说一下,怎么加入快捷键,这里我们需要改两个文件

Default.sublime-keymap 中添加:lua那段 我们设置的快捷键 是 ctrl + alt + l

[{"keys": ["ctrl+alt+l"], "command": "sublime_tmpl","args": {"type": "lua"}, "context": [{"key": "sublime_tmpl.lua"}]},{"keys": ["ctrl+alt+h"], "command": "sublime_tmpl","args": {"type": "html"}, "context": [{"key": "sublime_tmpl.html"}]}]我知道有一种爱情,叫做与你白头,有一种幸福,叫做和你相伴。

sublime开发插件

相关文章:

你感兴趣的文章:

标签云: