如何使用 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.

独有的