Как я могу использовать AppleScript для обращения к диалоговому окну в Ableton Live?
У меня есть коллекция файлов Ableton Live (расширение ".als"), которые мне нужно перебирать во время воспроизведения шоу. Я хотел бы выделить сочетание клавиш для запуска каждого из них, и намеревался использовать AppleScript для этого.
Проблема заключается в том, что каждый файл изменяется во время процесса воспроизведения связанной песни, поэтому при нажатии сочетания клавиш для запуска.als, связанного со следующей песней в моем наборе, Ableton открывает "Сохранить изменения перед закрытием".?" диалоговое окно (в этот момент я хочу выбрать "Не сохранять").
Простое нажатие клавиш + D в этот момент поможет, но я бы очень хотел автоматизировать это нажатие клавиш. Я не могу понять, как получить яблочный скрипт для этого. Я - новичок на appleScript, и, щелкнув опцию "Открыть словарь" в AS, я вижу, что Ableton официально не является приложением с поддержкой сценариев.
Есть мысли по этому поводу? Вот пример AppleScript, который я пробовал. Это запускает процесс открытия следующих.als в моем сет-листе, но не нажимает кнопку "Не сохранять".
tell application "Finder"
activate
open document file "Song 1.als" of folder "Desktop" of folder "User" of folder "Users" of startup disk
end tell
tell application "System Events"
keystroke "d" using command down
end tell
2 ответа
Интересно!
Наконец-то наткнулся на советы, благодаря которым все заработало:
- Добавьте Редактор сценариев и Ableton Live в API специальных возможностей: Системные настройки> Безопасность и конфиденциальность> Конфиденциальность...
- Игнорировать ответы приложения, чтобы продолжить сценарий во время диалога.
LiveLoader.scpt:
-- open file
ignoring application responses -- don't wait for user input
tell application "Ableton Live 9 Suite" to open "Users:username:Desktop:LiveSet Project:LiveSet.als"
end ignoring
-- use delay if needed
-- delay 0.5
-- skip saving file
tell application "System Events"
set frontmost of process "Live" to true
key code 123 -- left
key code 123 -- left
keystroke return -- enter
end tell
Замечания:
Учитывайте возможные последствия для безопасности.
Возможно, просто отключите приложения в Списке конфиденциальности после использования. (Может быть в сценарии;)
Теперь можно также отправить щелчки мыши, для большей креативности.:)
Я знаю, что это старый. но в интересах помощи другим, которые могут оказаться здесь... вот что я сделал.
используйте вызов программы Qlab. бесплатная версия будет в порядке. сделать яблочный скрипт кий. перейдите на вкладку "триггер". выберите миди-триггер. нажмите миди-клавишу, которую вы также хотите назначить. эта реплика теперь будет запускаться, когда получит эту миди-ноту - даже при работе в фоновом режиме. перейдите на вкладку "скрипт". скопируйте и вставьте скрипт ниже.
Вы можете сделать соответствующие корректировки для каждой песни. По сути, каждый ключ закроет все текущие файлы ableton без сохранения - в соответствии с запросом. а затем запустить конкретный живой набор. какой из них ты назначил. в этом случае, песня "Менее, чем ничего"
код...
tell application "System Events"
set frontmost of process "Live" to true
keystroke "q" using command down
tell application "System Events" to keystroke (ASCII character 28) --left arrow
tell application "System Events" to keystroke (ASCII character 28) --left arrow
keystroke return
end tell
delay 2.0
do shell script "open '/Users/CamMac/Desktop/Less Than Nothing 2 .als' "