rb-appscript free download for Mac


27 December 2007

Control scriptable Mac OS X apps using Ruby scripts.


Ruby appscript (rb-appscript) is a high-level, user-friendly Apple event bridge that allows you to control scriptable Mac OS X applications using ordinary Ruby scripts. Appscript makes Ruby a serious alternative to Apple's own AppleScript language for automating your Mac.

Simple all-in-one binary installers are provided for Apple-installed Ruby 1.8 on Mac OS 10.4.x, and source files are included for installing appscript on other OS/Ruby versions. Example scripts, documentation and tutorial are also included.

What's new in rb-appscript

Version 0.5:
  • OSAX module no longer errors on import in 10.5 if a ScriptingAdditions folder (e.g. ~/Library/ScriptingAdditions) doesn't exist
  • added Appscript::Application#is_running? method
  • added hfs_path, #hfs_path methods to MacTypes::Alias, MacTypes::FileURL; existing path, #path methods now use CFURL functions to convert between POSIX paths and URLs
  • aem/appscript now raises Connect::CantLaunchApplicationError instead of AE::MacOSError if unable to launch an application. Users should update existing code as necessary.
  • fixed extconf.rb so that universal binaries build correctly
  • built-in help system now uses ASDictionary 0.9.0+ instead of AppscriptHelpAgent. (AppscriptHelpAgent is no longer used as-of rb-appscript 0.5.0 and may be removed if previously installed.)
  • #help method now writes messages to stderr instead of stdout
  • Appscript::Reference#respond_to? now has identical signature to Object#respond_to? (optional second argument was previously missing)
  • fixed bug in AE.convert_long_date_time_to_unix_seconds (used to unpack AEDescs of typeLongDateTime) where it would crash if passed a FixNum instead of a BigNum
  • now allow methods that have been added to Object class at runtime (e.g. importing the 'pp' module adds #pretty_print and #pretty_inspect) to be invoked on Appscript::Reference and Appscript::Application instances, assuming that the reference object doesn't already have a property/element/command by the same name. In other words, instances of these classes now behave more or less the same as instances of ordinary subclasses that use bound methods rather than #method_missing to handle incoming messages. Previously, calling (e.g.) #pretty_inspect on an appscript reference would result in a 'property/element/command not found' error.
  • improved behaviour of Appscript::Application#AS_new_reference when argument is nil (now returns a new reference to the root application object)
  • OSAX::Application initialiser now optionally accepts static terminology 'glue' module as its second argument. This is partly to provide scripts that need to run in 64-bit processes with a workaround for accessing the OSAX module, which can't yet automatically obtain osax terminology under 64-bit (see TODO file).
  • added process_exists_for_path?, process_exists_for_pid?, process_exists_for_url?, process_exists_for_desc? class methods to AEM::Application
  • deprecated AEM::Application.is_running? (will be removed in 1.0.0); any existing code that uses this method should be updated to use AEM::Application.process_exists_for_path? instead
  • fixed minor formatting flaw in generic references' #to_s method
  • AEM::Application is now a subclass of AEMReference::Base, allowing aem Codecs instances to pack it
  • added AB_export_vcard.rb sample script

Join over 500,000 subscribers.

Subscribe for our newsletter with best Mac offers from MacUpdate.

0 rb-appscript Reviews

Rate this app: