Интересные вещи выдает AppleScript. Если, к примеру, мы обращаемся к объекту прочесть его свойство и затем хотим соотнести значение этого свойства с определенным множеством значений, то прийдется написать конструкцию типа
объект (свойство = 1) или (свойство = 0)
вместо достаточно очевидных
объект свойство = (1 or 0)
С данной особенностью я столкнулся при написании скрипта, который сам умеет проставлять значение настройки эквалайзера в зависимости от того, какой жанр у данной песни (песен). Скрипт выглядит так:
Если вы напишете
то AppleScript-машина вас не поймет, хотя написано почти по-русски. И даже если поменять конструкцию с «or» на множество {...}, то снова ничего не получится. Такое вот интересное поведение.
объект (свойство = 1) или (свойство = 0)
вместо достаточно очевидных
объект свойство = (1 or 0)
С данной особенностью я столкнулся при написании скрипта, который сам умеет проставлять значение настройки эквалайзера в зависимости от того, какой жанр у данной песни (песен). Скрипт выглядит так:
-- определение настроек эквалайзера
property EQRock : "Рок"
property EQBlues : "Ритм-энд-блюз"
tell application "iTunes"
set EQ of (tracks whose (genre is "Rock") or (genre is "Alternative")) to EQRock
set EQ of (tracks whose genre is "Blues") to EQBlues
end tell
Если вы напишете
set EQ of (tracks whose genre is ("Rock" or "Alternative")) to EQRock
то AppleScript-машина вас не поймет, хотя написано почти по-русски. И даже если поменять конструкцию с «or» на множество {...}, то снова ничего не получится. Такое вот интересное поведение.