Если вы запускаете скрипт ruby и используете ASTranslate
, он должен преобразовать необработанные команды appscript в Objc-appscript.
Edit01:
Я думаю, это будет выглядеть примерно так. Я не запустил инструмент, чтобы сделать клейкий код, поэтому я догадываюсь, как отображается имя приложения.
#import "AddressBookGlue.h" //Dont know the precise name
AddressBookApplication *abApp=[[AddressBookApplication alloc] initWithName: @"Address Book.app"];
NSString *desiredEmail=@"sam.brown@foo.com"
NSString *returnedName= [[[[[[abApp people] emails] value] contains:desiredEmail] name] get];
По сути, он следует тем же правилам, которые Objectic-c использует при преобразовании из синтаксиса точек: везде, где есть точка в исходном синтаксисе, ожидайте скобку в Objective-C.
Я мог бы добавить, что если вы собираетесь делать много сценариев этого типа, было бы лучше потратить день или два на изучение основ ruby или python. Работать с OSA в точечном синтаксисе намного проще, чем во вложенном. Просто глядя на все эти скобки в документации для Objc-appscript заставляет мои глаза слезиться.