Предлагает ли Ruby механизм реагирования на события Apple в OS X?

Я работаю над настольным приложением для OS X с использованием Ruby-Tk, и я хотел бы предоставить интерфейс Apple Events для этого приложения. Это означает, что приложение будет определять словарь команд AppleScript, на которые оно будет реагировать (в соответствии с событиями Apple, отправляемыми в приложение), и пользователи / другие приложения могут создавать сценарии для приложения Ruby-Tk с командами AppleScript. Другие языки сценариев поддерживают такую ​​функциональность - Python через библиотеку py-aemreceive по адресу http://appscript.svn.sourceforge.net/viewvc/appscript/py-aemreceive/ и Tcl через библиотеку tclAE по адресу http://tclae.sourceforge.net/ . Я искал аналогичную функциональность в Ruby и ничего не нашел.

Одним из возможных механизмов является мост rubyobjc, который обеспечивает низкоуровневый интерфейс между Ruby и Objective-C, но этот драгоценный камень, похоже, мало используется и сильно отсутствует в примерах и документации, поэтому я не уверен, что это будет плодотворным путем.

NB: MacRuby может работать, но он несовместим с Tk, поэтому MacRuby исключается. Кроме того, RubyOSA и rb-appscript - это не то, что я ищу - они позволяют Ruby отправлять события Apple в другие приложения, а не получать их.

7
задан Kevin Walzer 21 September 2011 в 00:17
поделиться