我正在尝试使用(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 通过热键触发它。