/smartrun

快速启动-Windows下的效率工具

smartrun(快速启动)

介绍

Windows下的一款工具,主要是为了提高自己工作效率的。当然,网上也能搜索下载到此类的工具,但是一般不够纯净,也比较笨重,索性自己动手写了一个。

本工具不是everything,如果非要对比的话,其实我想使用类似Wox的工具,但是这个工具有点重,所以没有去使用。Wox是个开源的WPF项目,代码有点多,看不来……

考虑到时间有限,采用了C#开发的,开发起来比较简单,但是运行效率就没有上个版本快了,但是增加了一些功能。如果全部都用C++开发,恐怕自己没那个时间。

因为自己觉得好用,所以想分享给大家,如果对你的工作有帮助那最好不过,如果没用就请跳过。

工具目前有以下功能,后面逐个详细介绍:

  • 快捷键/文件/工具的分组管理
  • 脚本执行:目前支持Python脚本直接点击运行、Lua脚本的右键运行。
  • 提醒:支持一次性,每天,每周,每月,每年。
  • 快捷短语:目前只支持ip、mac自动获取并复制到剪贴板,其他短语打算让“问一问”功能实现。
  • 问一问:智能匹配,例如可以把常用的客服短语、代码片段等录入,自动获取后复制到剪贴板。

使用方法

  • ALT + A 呼出热键(切换窗口的显示和隐藏)。
  • 首次运行的时候,会有一个悬浮窗,可以右键设置为不显示。本来没有这个窗口,因为我老是按快捷键,结果按出来一个劳损,算了,还是多用鼠标点点吧。

如果快捷键跟其他软件有冲突,可以把其他软件的快捷键删除掉,目前本工具不支持自定义热键。

软件会创建开机自启动,如果第一次使用,请以管理员身份运行,使其创建成功,否则无法开机自启动。

如果是管理员身份运行后,可能无法拖放文件,这个很正常,退出后再以普通身份运行即可拖放文件。

快捷键/文件/工具的分组管理

1、快捷键管理

这个功能是最先设计的,也是工作的痛点之一。主要是将文件、工具、快捷方式等分门别类。

  • 先创建大分组,可以创建多个大分组。
  • 然后把文件、软件、工具、快捷键拖放进来即可。拖放文件夹目录也是可以的,这样在软件里点击时会自动打开该文件目录,特别是常用的一些文件夹,可以分类整理好。
  • 可以在大分组里创建多个子分组,右键创建子分组,然后右键把项目发送到子分组即可。
  • 支持大分组及小分组之间的移动,特别是当自己分组不是很合理时可以随意调整。
  • 也可以直接编辑shotcuts.xml文件,XML格式,记事本打开看下就很清楚了。

2、创建网址导航

因为现在主流浏览器基本上都支持书签及书签同步功能,所以我觉得本功能有点鸡肋,但是还是说说吧,愿意用的就用。

  • 右键 - 选择创建网址导航,打开对话框。
  • URL:输入网址,例如经常查阅日历则可以输入:https://www.baidu.com/s?wd=%E6%97%A5%E5%8E%86,
  • 标题:填写日历
  • 图标:随便找个图片,拖放进去。
  • 点击按钮“添加”,添加成功后原图标文件可以删除,软件会自动备份该图片。

脚本执行

目前支持Python脚本直接点击运行、Lua脚本的右键运行。

可以把自己常用的Python脚本文件、Lua脚本文件拖放进工具进行分类管理,使用时工具自动根据文件后缀来判断:

  • .py后缀:调用python来执行,并设置工作目录为脚本的所在目录。可支持直接点击执行、右键菜单运行。
  • .lua后缀:调用自带的runLua.exe来执行,并设置工作目录为脚本的所在目录。因为Lua为不常用脚本,所以默认点击时是打开对应的编辑器,运行时请使用右键菜单运行。

提醒

本来不打算开发这个功能的,因为同类型的软件很多,一直以来使用闪电邮的提醒功能,虽然体验并不是很好,但是勉强能用。后来邮箱大师粉墨登场,大有替换闪电邮的气势,用下来发现提醒功能很蹩脚,每次创建一个提醒很是浪费时间,而且有很多BUG,反馈无果,算了,还是自己动手实现吧。

一切都是为了节省时间,所以实现的提醒很是简单,但是对我来说已经足够,创建也足够简便,提醒也足够了,而且不会遗漏。

快捷短语

  • ip、mac,在工具底部的编辑框中输入后会显示当前机器的IP地址和MAC地址,选中按下回车键,自动复制到剪贴板。
  • time 输入后会显示时间毫秒数 秒数:1539498012345 1539498012

这个是支持扩展的,例如默认的talks.txt文件中的内容:

star=https://github.com/bigsinger/star
path:open+copy=$documents|$temp|$system|$recent|$desktop|$history
path=System.AppDomain.CurrentDomain.BaseDirectory

这样在工具底部的编辑框中输入star时会自动提示出网址,选中后会自动打开;输入p时会提示多个选项,随便选中一个会自动打开对应的目录并把目录路径复制到剪贴板。 如果要编辑该文件,在编辑后在工具的设置里点击按钮“重新加载快捷短语”使之生效。

这种快捷操作有两个可以替代:

  • 拼音输入法的自定义短语做的还不错,如搜狗输入法、QQ拼音输入法支持录入自定义短语并同步多端使用。
  • 可以并入“问一问”功能

问一问

设计初衷:利用某个机器(个人电脑或者树莓派)搭建一个小型服务器,配置好问答库,然后本工具提问到服务器,服务器匹配到最佳答案后回传给客户端软件,软件自动复制内容到剪贴板,可直接使用。

目前测试是本机搭建的,服务器端用了Python的pickle库。如果开启了服务器,则演示效果如下:

设想使用场景

  • 客服团队:把常见问题收集汇总好后,就可以实现自助问答了。
  • 技术团队:把复用代码片段配置到服务端,可以查询复用,提高开发速度。

1、命令行不记得

例如,我记不得签名的命令行是什么,我配置到服务器,然后想查询签名命令的时候,“问一问”即可。如图,服务端收到咨询的关键字“签名”,然后给客户端工具发送了签名的命令行,然后自动复制到剪贴板。

2、常见客服问答

当然也可以作为智能客服和常见问题的回答。例如经常有客户会咨询的问题,我配置到服务器,那么下次客户再咨询诸如“vmp加固后,为什么还能反编译看到类?”的问题时,只需要复制客户问题,然后粘贴发送出去,会立即收到服务器匹配的答案并复制到剪贴板,可以直接粘贴发送给客户。

3、常用代码片段

这一块比较适合没有什么资源的个人或者小团体使用,因为不需要服务器资源,搭建起来分分钟。例如经常使用的可复用的代码片段,可以录入进去下次直接“问一问”然后复制使用。

其他方案的弊端

  • 微信公众号:开发配置起来比较繁琐,成本较高,不适合局域网搭建。
  • 云笔记:现阶段大家都是各自备份到自己的私有笔记,不能保持同步。即使是使用云协作,匹配查询效果也不理想。而且多是付费。
  • 考虑到某些数据的敏感,不适宜把数据放到云端。

本方案的优点

  • 适合局域网搭建,开一台电脑即可。
  • 适合同步,例如一个小团队,经常使用的内容可以录入到数据库中去。
  • 敏感数据不会外泄。

遗留问题

因为时间有限,很多情况并没有考虑,也没有经过严格测试,仅仅是为了方便自己工作而作,所以如果有异常情况或好的建议还请反馈,请在issues里提,我会酌情修复完善。