加载中...

Keyboard Maestro 使用记录

前言

使用 Keyboard Maestro 做自动化管理是,Actions太多了,总是记不住,这里特意记录一下

应用变量的两种方式

在Keyboard Maestro中,获取变量的语法确实有两种写法:“%Variable%VarName%”和“%VarName%”。它们之间的区别在于变量的作用域和引用方式:

  1. %Variable%VarName%:
    • 这种写法用于引用Keyboard Maestro中的变量。VarName是变量的名称,可以是你在Keyboard Maestro中定义的任何变量。
    • 这种写法明确指示了要获取的是Keyboard Maestro中的一个变量。
  2. %VarName%:
    • 如果你使用的是%VarName%这种写法,Keyboard Maestro会首先尝试查找一个叫做VarName的本地变量(Local Variable),如果没有找到,则尝试查找全局变量(Global Variable)。
    • 这种写法可以更简洁地引用变量,特别是在没有局部变量与全局变量同名时。

常用的 Actions 记录

触发键盘按键 Type a Keystroke

Categories: Interface Control
Actions: Type a Keystroke
功能:输入一个按键,可以是组合键,可以是单个按键。
示例:按下回车键发送消息,触发某个应用的快捷键。

选择某个APP的菜单栏按钮

Categories: Interface Control
Actions: Select or Show a Menu Item
功能:选择某个App的某个菜单栏按钮
示例:按下Esc按键,通过点击菜单栏最小化窗口

将剪贴板内容存储到变量token

Categories: Text
Actions: Set Clipboard to Text
功能:将剪贴板的内容存储到 %VarName% 变量中

弹框提示 带确定取消

Categories: Notifications
Actions: Alert
功能:弹出带确定取消按钮的弹框,确定继续执行,取消停止执行

弹框提示 仅通知

Categories: Notifications
Actions: Notification
功能:弹出一条通知

将某个文件复制到剪贴板

Categories: Clipboard
Actions: Set Clipboard to File Reference
功能:将剪贴板指向某个文件
使用:搭配 Paste 可以直接粘贴某个文件到输入框

脚本暂停几秒再继续执行

Categories: Control Flow
Actions: Pause
功能:暂停时间
使用:如果你希望暂停5秒钟,可以在“Pause” Action中输入 5 秒。

使用 Keyboard Maestro 控制浏览器前提

Keyboard Maestro 通过 JavaScript 操作浏览器时,需要先授权,需要在浏览器设置中「允许 Apple Events 中的 JavaScript」。具体操作如下:

  1. 在 Safari 中,点击菜单栏「开发 」,勾选「Allow JavaScript from Apple Events」,输入用户密码即可。
  2. 在 Chrome 中,点击菜单栏「查看」 -> 「Developer」,然后勾选「允许 Apple Events 中的 JavaScript」。

在脚本中如何获取变量

1. javascript

  1. 【脚本运行在km里】在javaScript 中如何获取KM变量 var variableValue = Application("Keyboard Maestro Engine").getvariable("MyVar"); // MyVar 是变量名
  2. 【脚本运行在浏览器】在浏览器的控制台中获取KM的变量:var selectorVar = kmvar.MySelector

2. shell

直接引用,使用时,给变量前面添加KMVAR_前缀

echo "$KMVAR_SelectedFilePath"
echo "$KMVAR_Pan123PId"

在 shell 中如何获取剪贴板的内容:

pbpaste 配合 管道符 使用。
> pbcopy 复制命令(echo "abc" | pbcopy)
> pbpaste 粘贴命令(pbcopy | xxx)

给脚本添加一个说明

Categories: Keyboard Maestro
Actions: Comment Action
功能:添加一个说明,什么都不会做
使用:如果你想给你的这个脚本添加一个说明,可以用这个Action

拖动一个文件到另一个地方

Actions:Move or Click Mouse
功能:鼠标移动、点击、拖动
使用:比如拖动文件上传
注意:拖动时,拖动不能夸屏幕,比如有多个屏幕时,拖动夸屏幕失效
注意:拖动有Bug,对同一个文件不能多次拖动,第一次生效,后续拖动就不生效了;解决办法,手动随便挪动一个文件即可。

posted @ 2024-06-13 11:13  水车  阅读(105)  评论(0编辑  收藏  举报