使用 Keyboard Maestro 快速输入 Hexo 短代码

我使用的 hexo 主题是 Fluid,在官方文档的介绍中我们可以使用一些特定的格式实现便签,但是这些便签对应的代码实际使用时需要记忆,并且输入的字符比较多。为了减少错误率(主要是懒),在 macOS 上可以借助 Keyboard Maestro 软件来自定义快捷键自动地帮我们输入想要的便签代码。本文章中的便签就是通过 Keyboard Maestro 实现插入的。

此文章中记录的使用 Keyboard Maestro 快速输入 Hexo 短代码的方法基于 macOS。

先来看一看最终的实现效果,现在我在 Typora 中新建了一篇文章,当我使用快捷键 option+shift+s 时,自动插入了 success 便签代码,使用快捷键 option+shift+w 时自动插入 warning 便签代码,并且光标自动地移动到了中间位置,以方便我们直接写便签内容,这样不易打断我们的写作思路。怎么样,是不是很酷。

什么是 Keyboard Maestro

Automate applications or web sites, text or images, simple or complex, on command or scheduled. You can automate virtually anything.

这是 官网 的介绍,总的来说,Keyboard Maestro 是一款在 macOS 上运行的自动化软件,可以帮助我们完成一些枯燥复杂和重复性的工作。它可以通过一定的条件来触发相应的动作,比如输入一个快捷键帮我们打开一个软件,或粘贴一段文字。Keyboard Maestro 的功能远不止于此,是一个不可多得的软件。我平时在工作中经常会用到它,也入了正版。关于此软件的使用可以参考相关教程,这里不再赘述。

创建 Keyboard Maestro 宏

Fluid 主题中的 Tag 一共有 7 个,分别是:

primary

secondary

success

danger

warning

info

light

所以我们需要创建 7 个宏,在这之前我们先定义一下快捷键规则。为了方便记忆,使用 option+shift 做前缀,后跟 tag 标签的首字母。

你可以选择自己喜欢的快捷键组合,但注意观察是否和其他快捷键冲突。

便签名称 快捷键
primary option+shift+p
secondary option+shift+2
success option+shift+s
danger option+shift+d
warning option+shift+w
info option+shift+i
light option+shift+l

其中 secondary 和 success 首字母冲突,将 secondary 对应的快捷键设置为 option+shift+2,表示次要的。

在创建宏之前需要先创建一个 Hexo 宏分组,分组可以限制组内的宏可以运行在哪些 APP 中,我平时使用 Typora 和 VS Code 编写文章,所以限制只能在 VS Code 和 Typora 中使用,在别的其他任何应用中都不可运行。这样可以避免与其他 APP 快捷键冲突。

然后在 Hexo 宏组内新建一个名称为 fluid-primary 的 macro,设置一个触发快捷键 option+shift+p,并增加如下 Actions,这样一个用于粘贴 fluid primary 便签的 macro 就完成了。

在上图中,我们首先设置了一个 option+shift+p 快捷键用于触发 Fluid 主题的 primary 便签宏,然后增加了三个 Action。

第一个 action 用于在光标处粘贴便签代码,需要注意的是 action 中的文本有三个空行,这是为了兼容 typora。

1
2
3
4
5
{% note primary %}



{% endnote %}

第二个 action 用于删除刚刚残留在剪贴板中的便签代码。为什么?因为第一个 action 实际是先复制代码然后粘贴,所以会在系统剪贴板中覆盖最近一次粘贴的数据,如果你使用了 PasteNow 或其他类似的剪贴板历史记录程序,就可以明显地看到记录了一次数据。所以为了避免剪贴板数据被覆盖,这个 action 不能少。

第三个 action 用于将光标向上移动一次,以便于定位到代码的中间位置。这个 action 可以方便地让我们直接写便签内容,而不需要手动定位。

然后我们可以在 Typora 中使用刚刚新建的快捷键 option+shift+p 测试宏,如果没问题的话,就复制几个副本,并分别改对应的快捷键和第一个 action 中的便签代码即可。

后记

Keyboard Maestro 能做的不只这些简单的功能,还有更多丰富的特性,学习好 Keyboard Maestro 能提升我们的生产力。

文中提到的功能不局限于 Hexo 的 Fluid 主题,适用于其他任何类型的博客和主题,其原理只是复制粘贴字符串,理论上适用于其他任何需要输入的场景。


使用 Keyboard Maestro 快速输入 Hexo 短代码
https://cui.cc/2b04dca9f3a7/
作者
南山崔崔
发布于
2023年8月17日
许可协议