微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Hammerspoon:连续向一个应用程序发送击键,同时正常使用其他应用程序

如何解决Hammerspoon:连续向一个应用程序发送击键,同时正常使用其他应用程序

好的,我有一个带 Hammerspoon 的脚本,可以为我执行按键操作。简单例子:

hs.hotkey.bind({'cmd','alt','ctrl'},"b",function() 
    hs.eventtap.keystroke({},"Left",200000)
    hs.eventtap.keystroke({},"Right",200000)
end)

我知道我可以过滤此脚本以仅在特定应用程序中工作,但我的问题是:是否可以将这些击键发送到一个应用程序,同时在另一个应用程序中正常使用我的物理键盘?就像在“后台”发送击键一样,它们没有在我当前使用的应用程序中注册

解决方法

您可以查询应用程序,将其存储在一个变量中,然后使用该变量将这些击键发送到该应用程序:

local myApp = hs.application.applicationsForBundleID('com.apple.finder')
hs.eventtap.keyStroke({"cmd"},"2",200,myApp)

这会将 CMD + 2 发送到 Finder 应用。

我可能会在击键绑定函数之外设置变量,这样它就不会在每次击键时发生,而是在开始时发生。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。