【发布时间】:2010-05-05 09:38:13
【问题描述】:
我已经在 Mac 上使用 shell 脚本做了很多工作,但我讨厌 AppleScript,我希望能够以其他方式访问 Mac 应用程序的 API。有没有人知道任何其他方式来获得 AppleScript 的强大功能,而不会因为其可怕的语法和微薄的文档(以及它的缓慢,如果可能的话)而痛苦?
【问题讨论】:
标签: macos applescript
我已经在 Mac 上使用 shell 脚本做了很多工作,但我讨厌 AppleScript,我希望能够以其他方式访问 Mac 应用程序的 API。有没有人知道任何其他方式来获得 AppleScript 的强大功能,而不会因为其可怕的语法和微薄的文档(以及它的缓慢,如果可能的话)而痛苦?
【问题讨论】:
标签: macos applescript
appscript 可能是您最好的选择 - Python 或 Ruby 的变体应该很适合 shell 脚本。
在处理单个应用程序的词汇表时仍然会遇到一些试验和错误,您实际上无法做太多事情,但至少您将拥有一种功能更强大的语言(或两种)来围绕它.
【讨论】:
MacRuby 呢?它不完全是 shell 脚本,但它并没有被移除(而且,可以说,更好)。
也不确定 Applescript API(未检查),但使用HotCocoa,您基本上可以访问 Cocoa。
我已经捏过这段代码 sn-p from here 但你可以看到它非常易读(这只是显示一个hello world窗口的代码,当然不是典型的脚本操作):
require 'hotcocoa'
include HotCocoa
application do |app|
win = window :size => [100,50]
b = button :title => 'Hello'
b.on_action { puts 'World!' }
win << b
end
警告 - MacRuby 的版本为 v0.6,但在我有限的使用中通常是稳定的。不完全符合您的要求,但无论如何可能值得一看。
【讨论】: