如何让 Microsoft 键盘特殊键在 OS X 上运行 osascript 命令?

如何让 Microsoft 键盘特殊键在 OS X 上运行 osascript 命令?

我正在尝试使用(1)特殊键打开新的终端窗口。

我将其绑定到文件/Users/taw/bin/new_term,其中包含:

#!/bin/sh
exec osascript -e 'tell application "Terminal" to do script "cd ."'

这个方法可以解决问题,除了它还会打开一个终端窗口(尽管 Terminal.app 配置为在进程完成时始终关闭窗口):

Last login: Thu Mar 11 19:41:29 on ttys000
/Users/taw/bin/new_term ; exit;
~$ /Users/taw/bin/new_term ; exit;
tab 1
logout

[Process completed]

我怎样才能让一切正常工作?(可能使用与我迄今为止尝试的方法不同的方法)

答案1

由于 OS X 上的 Microsoft IntelliType Pro 软件使用该open命令来运行您要求的任何操作,因此让它执行任意 AppleScript 代码可能会很困难。

我发现,虽然 shell 脚本等不起作用,但如果您创建一个具有单个操作的 Automator(不是 AppleScript)应用程序,Run AppleScript则可以指向 IntelliType 来运行您的 Automator 应用程序。请确保您创建的是应用程序,而不是工作流。

我想要一个收藏夹键来控制 iTunes,因此我在 Action 中使用了以下命令Run AppleScript,效果很好。

on run {input, parameters}

    tell application "iTunes" to next track

    return input
end run

答案2

让你的特殊键执行/Applications/Utilities/Terminal.app/Contents/MacOS/Terminal

(出于好奇,您是如何将按键与命令绑定的?)

编辑:

我尽量让微软远离 Mac OS,因为他们似乎并不真正理解 Mac 的运作方式。Mac 被广泛用于open各种用途就是明证。

因此,如果我是你,我会删除 Microsoft 键盘驱动程序,而改用 Spark:

http://www.brighthub.com/computing/mac-platform/reviews/30244.aspx

如果你真的想使用 AppleScript 来完成你正在做的事情,也许这会有所帮助:

http://lambie.org/2007/11/03/tabs-in-terminal-using-applescript-on-leopard/

您还可以从后一个链接中获取一些 AppleScript,并使用 Spark 通过热键触发它。

答案3

使用其中一个选项来启动程序或执行脚本,而无需打开我描述的终端在这个答案中


要打开一个新的终端窗口,或者只是使用默认窗口的终端,您可以尝试调整此解决方案

相关内容