如何使用 AppleScript 或 Lua 在 Calculator.app 上的结果后执行 ALT + TAB
How to use AppleScript or Lua to do an ALT + TAB after results on the Calculator.app
我使用 Calculator.app,在按下 ENTER 键后,我希望它自动执行 ALT + TAB 转到我使用的上一个应用程序:Excel 或 Firefox 或 Chrome,......你的名字。
我对 .lua 也有同样的问题,但如果不能用 .lua 解决,我想用 AppleScript 或 Automator 解决。
What's the hot key for TAB in .lua? hammerspoon?
更新:
正如 user3439894 所说,CMD + TAB 工作正常。
但我最终没有释放TAB,因此,我一直显示所有打开的应用程序。因此,我尝试在文档中添加 RETURN。我也试过 ENTER ,但没有一个有效。
hs.eventtap.keyStroke({"cmd"}, "tab")
hs.eventtap.keyStroke({"return"})
-- hs.eventtap.keyStroke({"enter"})
假设您将此与我在 11 月中旬给您的关于 Calculator 的答案之一结合使用,然后修改后的 Lua code 下面的代码让我在按下 enter 时切换到之前的 application key 而在 Calculator.
示例 Lua 代码:
-- Create a hotkey used to trap the enter key and disable it.
-- It will then be enabled/disabled as Calculator is focused/unfocused
-- When enabled and the enter key is pressed it presses = then command C.
applicationCalculatorEnterHotkey = hs.hotkey.bind({}, "return", function()
-- Press the '=' key to finish the calculation.
hs.eventtap.keyStroke({}, "=")
-- Copy the result to the clipboard.
hs.eventtap.keyStroke({"cmd"}, "C")
-- Bring up the App Switcher.
hs.eventtap.keyStroke({"cmd"}, "tab")
-- Act on the selected App in the App Switcher.
-- This works in testing with Calculator, however
-- may not work in other applications.
hs.eventtap.keyStroke({}, "=")
end)
applicationCalculatorEnterHotkey:disable()
备注:
我在原来的 代码 的基础上添加了两个 hs.eventtap.keyStroke
和评论。
在 Console 中执行 hs.eventtap.keyStroke({"cmd"}, "tab")
Hammerspoon 会自动切换到之前的 application 不显示 App Switcher,但是当在 applicationCalculatorEnterHotkey
function 中使用时,它会显示 App Switcher 就好像 ⌘-Tab 被按下了,而 ⌘ key 没有松开。这可能是一个错误,不确定是否 testing/research 已经解决了问题,因为显而易见的解决方案是以编程方式按下 enter key,但是无法从 applicationCalculatorEnterHotkey
function 中完成,因为它已经捕获了 enter 键 在计算器.
在这个特定的用例中,然而这是 hs.eventtap.keyStroke({}, "=")
用来充当 enter key 的地方再次按下并且是 Calculator.
独有的
我使用 Calculator.app,在按下 ENTER 键后,我希望它自动执行 ALT + TAB 转到我使用的上一个应用程序:Excel 或 Firefox 或 Chrome,......你的名字。
我对 .lua 也有同样的问题,但如果不能用 .lua 解决,我想用 AppleScript 或 Automator 解决。
What's the hot key for TAB in .lua? hammerspoon?
更新:
正如 user3439894 所说,CMD + TAB 工作正常。
但我最终没有释放TAB,因此,我一直显示所有打开的应用程序。因此,我尝试在文档中添加 RETURN。我也试过 ENTER ,但没有一个有效。
hs.eventtap.keyStroke({"cmd"}, "tab")
hs.eventtap.keyStroke({"return"})
-- hs.eventtap.keyStroke({"enter"})
假设您将此与我在 11 月中旬给您的关于 Calculator 的答案之一结合使用,然后修改后的 Lua code 下面的代码让我在按下 enter 时切换到之前的 application key 而在 Calculator.
示例 Lua 代码:
-- Create a hotkey used to trap the enter key and disable it.
-- It will then be enabled/disabled as Calculator is focused/unfocused
-- When enabled and the enter key is pressed it presses = then command C.
applicationCalculatorEnterHotkey = hs.hotkey.bind({}, "return", function()
-- Press the '=' key to finish the calculation.
hs.eventtap.keyStroke({}, "=")
-- Copy the result to the clipboard.
hs.eventtap.keyStroke({"cmd"}, "C")
-- Bring up the App Switcher.
hs.eventtap.keyStroke({"cmd"}, "tab")
-- Act on the selected App in the App Switcher.
-- This works in testing with Calculator, however
-- may not work in other applications.
hs.eventtap.keyStroke({}, "=")
end)
applicationCalculatorEnterHotkey:disable()
备注:
我在原来的 代码 的基础上添加了两个 hs.eventtap.keyStroke
和评论。
在 Console 中执行 hs.eventtap.keyStroke({"cmd"}, "tab")
Hammerspoon 会自动切换到之前的 application 不显示 App Switcher,但是当在 applicationCalculatorEnterHotkey
function 中使用时,它会显示 App Switcher 就好像 ⌘-Tab 被按下了,而 ⌘ key 没有松开。这可能是一个错误,不确定是否 testing/research 已经解决了问题,因为显而易见的解决方案是以编程方式按下 enter key,但是无法从 applicationCalculatorEnterHotkey
function 中完成,因为它已经捕获了 enter 键 在计算器.
在这个特定的用例中,然而这是 hs.eventtap.keyStroke({}, "=")
用来充当 enter key 的地方再次按下并且是 Calculator.