在编写Mac脚本时,Applescript有替代品吗?它的API看起来很棒,但从我到目前为止所读到的语言本身来看,似乎更多地针对非程序员.
对此的见解将非常有帮助.
(目前,我正在考虑为Mac编写一个平铺窗口管理器.是的,我知道有些存在,但这将是开源的.是的,我知道Xmonad,但它只有X11窗口.)
谢谢!
has*_*has 14
在编写Mac脚本时,Applescript有替代品吗?
取决于你想做什么.如果您想将Apple事件发送到其他应用程序,是的; 从OSA感知应用程序(邮件规则,文件夹操作等)运行脚本,而不是真的.
最好的技术选择是appscript(我的宝贝),它可以在10.4+上用于Python,Ruby和Objective-C.(还有一个MacRuby版本,但我还没有公开发布.)功能方面的appscript比AppleScript略好,它的应用程序兼容性几乎一样好.第三方项目,因此您需要自己安装(但只要您拥有Xcode就足够了)并获得MIT许可,以便您可以根据需要重新分发它(例如,包含在您的应用程序包中).相当不错的工具和文档支持,包括Matt Neuburg 的在线书籍,Python和Ruby版本的邮件列表支持以及对其他人的直接电子邮件支持.
"官方"替代品是Apple的Scripting Bridge.这个API看起来非常像Cocoa,但这真的只是很多烟雾和镜子,最终使它的能力低于AppleScript,并且更容易出现应用程序兼容性问题(当它出错时很难排除故障).工具,文档和社区支持也不是很好(appscript更好; AppleScript更好).SB的主要优点是它包含在10.5+中,因此无需额外安装即可使用.由于其技术缺点,我不推荐它用于重型自动化工作,但对于涉及强制应用程序的适度自动化任务,它可能就足够了.
其他桥梁确实存在(例如Perl的Mac :: Glue,RubyOSA),但它们不具备能力,受欢迎和/或积极支持.
所有这一切,如果你想要做任何严肃的应用程序脚本,你仍然需要学习AppleScript,因为你可以找到大量的文献,示例脚本和社区专业知识.所有这些都是您需要的,因为绝大多数可编写脚本的应用程序都是未充分记录的.
| 归档时间: |
|
| 查看次数: |
3618 次 |
| 最近记录: |