Mousetroke GitHub
简体中文 ▾
指南目录

动作#

选中手势,在“执行”中选择动作,共八类。多数任务用简单动作即可;需要条件判断或连续完成多步时,再用 Lua。

发送按键#

输入按键序列,或点击“录制”,按下快捷键后点“完成”。例如 Windows 复制是 ^c,Mac 复制是 #c。“语法说明”可打开语法指南。

“先激活鼠标下的窗口再发送”会先激活手势目标,否则按键由当前接收键盘输入的程序接收。目标也受“偏好设置 → 手势作用于”影响。编辑器没有普通文本模式开关;文本优先模式通过 Lua 使用。

窗口操作#

选择一项,作用于手势目标:

操作行为
最小化最小化窗口。
最大化 / 还原切换最大化与还原大小。
关闭请求窗口关闭。
置顶 / 取消置顶Windows 切换置顶;Mac 尚不支持,编辑器中不可选。

Mac 窗口操作依赖辅助功能。“最大化 / 还原”点击程序的缩放按钮,窗口大小遵循该程序行为,不请求原生全屏,已最小化窗口会跳过。不同程序开放的窗口操作可能不同。

打开程序#

Windows 的“程序”填写可执行文件,可点“浏览…”选择。Mac 可填写 com.apple.Safari 这样的 bundle id、.app 路径或可执行文件路径。“参数”可选。Mac 参数按引号规则拆分,命令行程序请用完整路径。

“已经在运行时”可选“切换到它”或“再打开一个”。Windows 还有“以管理员身份运行”。Mac 不支持提权或按窗口筛选的启动选项。当前动作编辑器没有窗口类名、标题或正则表达式字段。

打开网址#

填写“网址”,按需填写“浏览器”;留空使用默认浏览器。Windows 可指定浏览器可执行文件,Mac 可指定浏览器 bundle id 或应用路径。“插入”按钮可插入选中文字、剪贴板、程序名、进程号或窗口标题变量。

选中文字后搜索网页,可将网址设为:

https://www.google.com/search?q=%MS_SELECTED_TEXT%

在程序中选中文字,再画手势。选中文字会经过 URL 编码。如果选区本身以 http://、https:// 或 www. 开头,会直接打开该地址,其中 www. 会自动补 https://。

运行命令#

在文本框填写命令,“插入”可加入变量。Windows 使用隐藏的 cmd.exe /C,Mac 使用 /bin/zsh -c。这是 Shell 语法,参数需要正确加引号。变量替换不会做 Shell 转义,不要把不可信的选中文字直接拼入命令。

例如 Windows 打开任务管理器:

taskmgr.exe

Mac 可以改用“打开程序”,填写 com.apple.ActivityMonitor。

媒体与系统#

编辑器提供“播放 / 暂停”、“下一曲”、“上一曲”、“音量 +”、“音量 −”、“静音”、“亮度 +”和“亮度 −”。

Windows 亮度每次增减 10 个百分点,使用 DDC/CI,失败时回退 WMI。Mac 亮度动作发送面向内置屏幕的系统亮度键,不支持外接显示器 DDC/CI。Mac 可以使用这些系统动作,但 Lua 亮度函数尚不支持。详见屏幕边角。

弹出菜单#

点击“+ 添加菜单项”,输入“菜单项名称”,再为每项选择动作。使用“上移”、“下移”和“删除菜单项”整理顺序。菜单显示在手势位置。编辑器不提供列数字段,菜单项内也不再提供菜单类型。Mac 支持单列,多列配置会被提示为不支持。

Lua 脚本#

粘贴定义了 ms_action 的完整脚本。“Lua 帮助”打开 Lua 入门。文本框中按 Tab 会插入两个空格。更多内容见 API 参考和实用示例。

变量#

下列占位符用于“打开网址”的“网址”、“运行命令”,以及“打开程序”的“程序”和“参数”。发送按键字符串、Lua 源码、菜单名称和“浏览器”字段不会展开这些变量。

变量内容
%MS_SELECTED_TEXT%动作需要时采集的选中文字,无法取得时为空。
%MS_CLIPBOARD_TEXT%按需读取的当前剪贴板文字。
%MS_PID%目标进程号。
%MS_EXE%目标程序身份:Windows 路径;Mac bundle id 或可执行文件路径。
%MS_APP_NAME%程序身份的文件名部分,Mac 上可能就是 bundle id。
%MS_WID%十进制文本形式的平台窗口标识。
%MS_WIN_NAME%目标窗口标题,Mac 按需通过辅助功能读取。
%MS_MOUSE_X%、%MS_MOUSE_Y%手势开始时的屏幕坐标。
%MS_MOUSE_Y_FLIP%虚拟屏幕底部坐标减去手势开始时的 Y 坐标。
%MS_TARGET_MODE%根据目标设置取 UnderCursor 或 Focused。

没有目标时部分变量可能不存在,未定义的占位符原样保留。网址模板只有选中文字会自动 URL 编码,其他变量直接插入。Lua 请使用入口参数和 ms 函数,不使用占位符替换。

从一个常用手势开始

免费下载 Mousetroke,设置你的第一个手势。Windows 与 Mac 测试版均可使用。