这个 Keyboard Maestro 简化的流程是:
根据当前网页标题创建文件夹,将下载的网页文件移动到创建好的文件夹内。
本文主要介绍了如何在 Keyboard Maestro 中监控文件夹变化、如何使用 token、如何自动化 Macro 开启/关闭。
看起来,这个 Keyboard Maestro 流程节省的时间可能不多
但节省了巨多脑细胞,想想 ChatGPT 4 图像识别的价格
还将肩颈从紧张的鼠标点选、键盘敲击动作中释放出来
简直不要太美好
根据当前网页标题创建文件夹
流程1:获取当前网页标题
方案:查找了一下,发现 Keyboard Maestro 并没有直接获取 Chrome 浏览器网页标题的动作
Google 了一下:“Keyboard Maestro get Chrome title”,发现需要使用 token 的方式进行获取,使用的 token 是 %ChromeTitle%
原理是:
它通过 AppleScript 与浏览器通信来实现这一点,因此只能使用支持兼容 AppleScript 的浏览器,目前仅限于支持 Safari 或 Chrome AppleScripts 的浏览器,其中包括 Safari、Chrome、Brave、Vivaldi、Edge 及其开发版本。
具体查看官方文档:token:WebBrowserTokens [Keyboard Maestro Wiki]
这样就把浏览器标题内容保存到变量 name
中
流程2:处理文件名
分别处理不需要的文字和特殊字符
流程3:创建文件夹
在文件夹名字中加上了日期 token,%ICUDateTime%MMddHHmmss%
,生成类似 02031019 这样的日期,不包括年份。
完整的日期 token 介绍,参考这里:token:ICUDateTime [Keyboard Maestro Wiki]
将下载的网页文件移动到创建好的文件夹内
新建一个 Macro 来处理移动文件流程
我日常使用 SingleFile 来保存网页,默认的保存地址是桌面。
这个 Macro 用来将保存的网页移动到刚才创建的文件夹中。
注意这是一个全局 Macro
流程1:设置文件夹触发器
当桌面文件夹添加了一个新文件时
adds an item
表示当添加一个文件时触发
ignore partial or changing files
表示忽略部分或正在更改的文件,例如,如果正在下载或复制文件到文件夹中,触发器将等待,直到下载/复制完成,并且可以忽略部分文件(具有已知扩展名的文件)为“进行中”文件)。
完整的介绍,参考这里:trigger:Folder [Keyboard Maestro Wiki]
Minja 的这篇文章介绍了如何使用 Keyboard Maestro 代替 Hazle 实现文件自动化:《1-4 文件自动化小论》
流程2:移动文件
从触发器中获取文件名,用来在后续移动文件时指定文件名
在 Folder 触发器官方文档中,trigger:Folder [Keyboard Maestro Wiki]
告诉我们 %TriggerValue% 文本标记包含添加或删除的文件的路径
使用 Get File Attribute
动作获取文件名,并保存到变量 filename
中
关于 Get File Attribute
完整介绍,参考这里:action:Get File Attribute [Keyboard Maestro Wiki]
%Variable%filepath%
是根据网页标题创建的文件夹。在 Keyboard Maestro 中变量一处创建可以在其他任意位置使用。
%Variable%filename% 是保存的网页文件名。
通过 %Variable%filepath%
和 %Variable%filename%
即可拼接出目的路径。
优化
现在整个流程制作完毕,只要按下快捷键,Keyboard Maestro 就会执行以下流程
- 获取网页标题
- 创建文件夹
- 将 SingleFile 保存的网页移动到文件夹中
但现在有个小问题,通过其他途径保存到桌面的文件也会被移动
所以需要将移动文件的 Macro 改为只有在保存网页时执行,其他时候关闭。
在按下快捷键时,打开 Macro
移动完文件后,关闭 Macro
小结
以上就是我今早临时写的 Keyboard Maestro 流程分享。
神奇的连接起来 Chrome 浏览器、macOS 文件系统、SingleFile 插件、信息管理技术(文件名包含日期)。
写到这里的时候,忽然想起来,Keyboard Maestro 还可以做得更多:
在保存网页前用 Keyboard Maestro 精简一下网页
具体可以参考这两篇文章:
《在 Safari 浏览器中一键清理知乎网页广告(附自动化)》
《保存网页时一键裁切不必要的部分》