我正在使用Ruby-Tk为OS X开发桌面应用程序,并希望为该应用程序提供Apple Events接口。这意味着应用程序将定义一个苹果脚本命令字典,用来响应发送到应用程序的Apple Events,用户/其他应用程序可以使用苹果脚本命令来脚本化Ruby-Tk应用程序。其他脚本语言支持此类功能--Python通过py-aemreceive库http://appscript.svn.sourceforge.net/viewvc/appscript/py-aemreceive/和Tcl通过tclAE库http://tclae.sourceforge.net/。我一直在寻找Ruby中的类似功能,但没有结果。
可能的机制之一是rubyobjc桥接器,它提供了Ruby和Objective-C之间的低级接口,但这种宝石似乎很少使用,并且缺乏示例和文档,因此我不确定是否应该追求这条途径。
注:MacRuby可能有效,但与Tk不兼容,因此排除了MacRuby。另外,RubyOSA和rb-appscript不符合我的要求--它们允许Ruby向其他应用程序发送Apple Events,而不是接收它们。
可能的机制之一是rubyobjc桥接器,它提供了Ruby和Objective-C之间的低级接口,但这种宝石似乎很少使用,并且缺乏示例和文档,因此我不确定是否应该追求这条途径。
注:MacRuby可能有效,但与Tk不兼容,因此排除了MacRuby。另外,RubyOSA和rb-appscript不符合我的要求--它们允许Ruby向其他应用程序发送Apple Events,而不是接收它们。