sublime插件开发教程(附源码)
2023-09-27 14:27:08 时间
虽然可能大神门在编辑器方面都比较偏向于vim之类的自由度更高的工具,但是从我个人来讲sublime这样的插件安装更方便的工具还是比较得心应手的。之前用sublime写英语作文,但是没有一个比较好用的timer,Package_Control里面的track_timer不能实时显示时间,所以博主就自己动手,写了这个插件,可以实时timer,记录时间。效果如下图
虽然可能大神门在编辑器方面都比较偏向于vim之类的自由度更高的工具,但是从我个人来讲sublime这样的插件安装更方便的工具还是比较得心应手的。之前用sublime写英语作文,但是没有一个比较好用的timer,Package_Control里面的track_timer不能实时显示时间,所以博主就自己动手,写了这个插件,可以实时timer,记录时间。效果如下图,
使用起来很方便,只要把下载好的sublime-timer文件夹放在下图这个路径下即可。
可以用快捷键方便的对timer进行操作: "control+alt+t": start timer
"control+alt+p": pause or stop timer
"control+alt+z": make zero
3.制作过程 (1)环境 开发sublime插件用到的是python语言,因为要用到sublime内置的sublime和sublime_plugin库,所以debug和调试都应该在sublime里面。 下面的链接是sublime的库得参数信息:http://www.sublimetext.com/docs/2/api_reference.html (2)自带example 如果不习惯看开发文档,可以参考下以下example的开发(下面参考自http://www.welefen.com/how-to-develop-sublime-text-plugin.html)。
class timer(threading.Thread): #The timer class is derived from the class threading.Thread def __init__(self, num, interval): threading.Thread.__init__(self) self.thread_num = num self.interval = interval self.thread_stop = False def run(self): #Overwrite run() method, put what you want the thread do here global i while not self.thread_stop: sublime.set_timeout(write_time,1) i+=1 time.sleep(self.interval) def pause(self): self.thread_stop = True def zero(self): global i i=0
def time_manage(time_number): time_str=time:+str(time_number/60)+min +str(time_number%60)+s return time_str 三个command class,分别对应着上面提到的三个快捷键,这个对应关系可以在另外的keymap文件中定义,大家可以把整个项目clone下来就看到了。 (4)发布 如果你做好了一个个性插件想让更多的朋友使用的话可以试试以下两种途径。 1.可以给https://github.com/SublimeText发email 2.可以给https://github.com/wbond/package_control_channelpull issue(有一个文档,流程比较麻烦) 项目地址:https://github.com/jimenbian/sublime-timer(fork完别忘了给个star) 好了,看到这里大家应该已经对插件制作有些了解了,动起手来吧!
微信小程序的基础教程 微信小程序的基础教程是什么?微信小程序的基础教程的步骤是什么: 1.了解自己企业的微信小程序制作的需求 2.确认需求和预算,找合适的第三方微信小程序制作平台 3.确定微信小程序页面的设计方案 4.结合微信小程序的设计方案和功能需求完成制作 5.微信小程序测试 6.微信小程序账号的申请 7.将微信小程序账号绑定在做好的微信小程序上 8.发布上线微信小程序正式版 9.及时观察微信小程序数据和日常维护
【微信小程序开发小白零基础入门】微信小程序框架演示【建议收藏】 微信小程序框架演示文章目录微信小程序框架演示一、容器属性1.flex-direction的用法2.flex-wrap的用法4.align-items的用法5.align-content的用法二、项目属性1.order的用法2.flex-shrink的用法3.flex-grow的用法4.flex-basis的用法5.flex-self的用法三、推荐小程序(欢迎各位大佬指导)一、容器属性1.flex-direction的用法flex-direction.wxml view "feed-item-img" target="_blank" href="https://developer.aliyun.com/article/883019">
微信小程序开发实践入门教程 在去年2017年1月9日,张小龙在2017微信公开课Pro上发布的小程序正式上线 。时至今日,小程序已经有整整一年时间了 。在2017年12月28日,微信更新的 6.6.1 版本开放了小游戏,「跳一跳」小游戏在那一晚彻底火了。由于微信的流量庞大,所以很多开发者看好小程序,我也不例外 。
这段时间在做的东西,是北邮人论坛APP的注册页。这个注册页是内嵌的网页,因为打算安卓和IOS平台同时使用。因此实际上就是在做移动端的web开发了。
傲海 著有《机器学习实践应用》,阿里云机器学习PAI产品经理,个人微信公众号 ldquo;凡人机器学习 rdquo;。
虽然可能大神门在编辑器方面都比较偏向于vim之类的自由度更高的工具,但是从我个人来讲sublime这样的插件安装更方便的工具还是比较得心应手的。之前用sublime写英语作文,但是没有一个比较好用的timer,Package_Control里面的track_timer不能实时显示时间,所以博主就自己动手,写了这个插件,可以实时timer,记录时间。效果如下图,
使用起来很方便,只要把下载好的sublime-timer文件夹放在下图这个路径下即可。
可以用快捷键方便的对timer进行操作: "control+alt+t": start timer
"control+alt+p": pause or stop timer
"control+alt+z": make zero
3.制作过程 (1)环境 开发sublime插件用到的是python语言,因为要用到sublime内置的sublime和sublime_plugin库,所以debug和调试都应该在sublime里面。 下面的链接是sublime的库得参数信息:http://www.sublimetext.com/docs/2/api_reference.html (2)自带example 如果不习惯看开发文档,可以参考下以下example的开发(下面参考自http://www.welefen.com/how-to-develop-sublime-text-plugin.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!")
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
class timer(threading.Thread): #The timer class is derived from the class threading.Thread def __init__(self, num, interval): threading.Thread.__init__(self) self.thread_num = num self.interval = interval self.thread_stop = False def run(self): #Overwrite run() method, put what you want the thread do here global i while not self.thread_stop: sublime.set_timeout(write_time,1) i+=1 time.sleep(self.interval) def pause(self): self.thread_stop = True def zero(self): global i i=0
def time_manage(time_number): time_str=time:+str(time_number/60)+min +str(time_number%60)+s return time_str 三个command class,分别对应着上面提到的三个快捷键,这个对应关系可以在另外的keymap文件中定义,大家可以把整个项目clone下来就看到了。 (4)发布 如果你做好了一个个性插件想让更多的朋友使用的话可以试试以下两种途径。 1.可以给https://github.com/SublimeText发email 2.可以给https://github.com/wbond/package_control_channelpull issue(有一个文档,流程比较麻烦) 项目地址:https://github.com/jimenbian/sublime-timer(fork完别忘了给个star) 好了,看到这里大家应该已经对插件制作有些了解了,动起手来吧!
/********************************
* 本文来自博客 “李博Garvin“
* 转载请标明出处:http://blog.csdn.net/buptgshengod
******************************************/
微信小程序的基础教程 微信小程序的基础教程是什么?微信小程序的基础教程的步骤是什么: 1.了解自己企业的微信小程序制作的需求 2.确认需求和预算,找合适的第三方微信小程序制作平台 3.确定微信小程序页面的设计方案 4.结合微信小程序的设计方案和功能需求完成制作 5.微信小程序测试 6.微信小程序账号的申请 7.将微信小程序账号绑定在做好的微信小程序上 8.发布上线微信小程序正式版 9.及时观察微信小程序数据和日常维护
【微信小程序开发小白零基础入门】微信小程序框架演示【建议收藏】 微信小程序框架演示文章目录微信小程序框架演示一、容器属性1.flex-direction的用法2.flex-wrap的用法4.align-items的用法5.align-content的用法二、项目属性1.order的用法2.flex-shrink的用法3.flex-grow的用法4.flex-basis的用法5.flex-self的用法三、推荐小程序(欢迎各位大佬指导)一、容器属性1.flex-direction的用法flex-direction.wxml view "feed-item-img" target="_blank" href="https://developer.aliyun.com/article/883019">
微信小程序开发实践入门教程 在去年2017年1月9日,张小龙在2017微信公开课Pro上发布的小程序正式上线 。时至今日,小程序已经有整整一年时间了 。在2017年12月28日,微信更新的 6.6.1 版本开放了小游戏,「跳一跳」小游戏在那一晚彻底火了。由于微信的流量庞大,所以很多开发者看好小程序,我也不例外 。
这段时间在做的东西,是北邮人论坛APP的注册页。这个注册页是内嵌的网页,因为打算安卓和IOS平台同时使用。因此实际上就是在做移动端的web开发了。
傲海 著有《机器学习实践应用》,阿里云机器学习PAI产品经理,个人微信公众号 ldquo;凡人机器学习 rdquo;。
相关文章
- 微信小程序 - 音乐列表点击播放 / 暂停音频,流畅切换音频(支持暂停音乐后,保留音乐 “进度“ 继续播放)最好用最详细的源码示例教程,适用于wechat列表点击后播放 mp3 wav 文件的需求
- uni-app - 电子签字板组件(签名专用写字画板,支持调整写字板 “横纵“ 方向,可调整线条粗细颜色等,Canvas 绘制非常丝滑流畅)完美兼容 H5 APP 小程序,最好用的画板签字教程插件源码
- uni-app - 全端兼容 Steps 步骤条组件(支持绑定点击事件、颠倒文字位置、自定义样式)解决 uview 组件库的 Steps 步骤条无法绑定点击事件且不兼容微信小程序,详细教程组件插件源码
- uni-app - 树形结构选择器组件(支持单选 / 多选 / 可选择父级 / 弹框形式)树形控件 tree 无限级节点树,树插件完整源码,最好用的组件教程
- JUnit源码分析(四)——从Decorator模式说起
- 使用扩展有效对齐 SwiftUI 内容,创建自定义 SwiftUI 方法以快速对齐项目并使您的代码看起来简洁明了(教程含源码)
- SwiftUI AR教程之如何使用 SwiftUI 按钮在 RealityKit 中切换前后摄像头(教程含源码)
- SwiftUI 绘图类精品项目大全之使用 SwiftUI 开发所见即所得的绘图应用程序 (教程含源码)
- SwiftUI 界面大全之IOT物联网复杂管理界面(教程含源码)
- SwiftUI Text文本添加闪烁组件特效(教程含源码)
- SwiftUI iOS 开源组件之 02 方框步骤指示(教程含源码)
- SwiftUI Form 实现靠左忘记密码提示(教程含源码)
- Flutter macOS开发教程之 界面布局与UI组件源码(教程含源码)
- SwiftUI CV视觉App之基于VisionKit扫描卡识别内容 (教程含源码)
- macOS Swift精品项目之查找图像的主色App 使用CIE LAB颜色空间和k-means聚类算法(教程含源码)
- macOS SwiftUI 封装组件之 可选择可输入组合文本框NSComboBox(教程含源码)
- macOS SwiftUI 封装组件之液位指示器NSLevelIndicator(教程含源码)
- macOS SwiftUI 弹框组件之Popover附着式提示框 (教程含源码)
- macOS SwiftUI动画教程之淡入淡出组件(教程含源码)
- Flet教程之 18 Divider 分隔符组件 基础入门(教程含源码)
- SwiftUI 特色组件之 极简动画提示tool tip(教程含源码)
- SwiftUI 图表教程之 02 原生制作水平Bar Chart 北京全年日均最低气温(教程含源码)
- 云桌面源码
- QT源码之Qt信号槽机制与事件机制的联系