К содержанию
fohbook/ grandMA3

Переменные

Значение, которое команда подставит в себя при выполнении. Превращает макрос в инструмент с параметром.

Значение, которое макрос запоминает и подставляет в команду. Пользовательские и глобальные, и чем они отличаются.

Тот же текст, другими словами:

Как объяснил бы коллега за пультом: коротко и по делу.

Версия ПО вашего пульта:
Быстрый выбор:

Переменная хранит значение, которое команда подставит в себя при выполнении. Это то, что превращает макрос из жёсткой последовательности в инструмент с параметром.

Вид Область действия
Пользовательская Свой набор у каждого пользователя
Глобальная Общая для всей станции и сессии

Пользовательскими пользуются в обычной работе: двое за одним шоу не перезапишут друг другу значения. Глобальная нужна там, где переменную читает другой пользователь или другая станция.

Как задать и как прочитать

командная строка
> SetUserVariable "Song" 3
> SetGlobalVariable "Venue" "Arena"
> GetUserVariable "Song"
> DeleteUserVariable "Song"
 

Подстановка в команду делается через имя переменной. Отсюда макросы вида «перейти на кью из переменной»: один макрос вместо двадцати.

Зачем это на площадке

Макрос с вопросом: строка спрашивает у оператора номер, кладёт его в переменную, следующая строка использует. Один макрос «перейти на песню N» вместо кнопки на каждую песню.

Счётчик: переменная, увеличивающаяся на единицу при каждом нажатии, — основа для «следующий номер программы».

Настройка под площадку: значение, от которого зависит поведение макросов — количество приборов на ферме, номер стартового универса.

Связь с плагином: плагин на Lua читает и пишет те же переменные, поэтому макрос и плагин обмениваются через них данными.

Ограничения

Переменная хранит значение, а логику не хранит. Условия и циклы — это плагин. Макрос с переменными покрывает случай «одно и то же действие с разным числом», и дальше него не идёт.

Осторожно

Переменная живёт до перезагрузки или до явного удаления. Значение, оставшееся от прошлой репетиции, макрос подставит молча. Рискованный макрос должен задавать переменную сам, а не полагаться на сохранившуюся.

Порядок отладки

  1. Задать переменную руками из командной строки.
  2. Прочитать её и убедиться, что там то, что вы ждёте.
  3. Выполнить команду с подстановкой руками.
  4. Только потом собрать это в макрос.

Тот же порядок, что и с макросами вообще: сначала работает строка, потом появляется кнопка.

Переменная хранит значение, которое команда подставит в себя при выполнении. Это то, что превращает макрос из жёсткой последовательности в инструмент с параметром.

Два вида

Вид Область действия
Пользовательская Свой набор у каждого пользователя
Глобальная Общая для всей станции и сессии

Пользовательская — то, чем пользуются в обычной работе: два человека за одним шоу не перезапишут друг другу значения. Глобальная нужна там, где переменную читает другой пользователь или другая станция.

Как задать и как прочитать

командная строка
> SetUserVariable "Song" 3
> SetGlobalVariable "Venue" "Arena"
> GetUserVariable "Song"
> DeleteUserVariable "Song"
 

Подстановка в команду делается через имя переменной. Отсюда макросы вида «перейти на кью из переменной» — один макрос вместо двадцати.

Зачем это на площадке

Макрос с вопросом. Строка макроса спрашивает у оператора номер, кладёт его в переменную, следующая строка его использует. Один макрос «перейти на песню N» вместо кнопки на каждую песню.

Счётчик. Переменная, увеличивающаяся на единицу при каждом нажатии, — основа для «следующий номер программы».

Настройка под площадку. Значение, от которого зависит поведение макросов: количество приборов на ферме, номер стартового универса.

Связь с плагином. Плагин на Lua читает и пишет те же переменные, поэтому макрос и плагин обмениваются через них данными.

Ограничения

Переменная хранит значение, а не логику. Условия и циклы — это плагин. Макрос с переменными покрывает случай «одно и то же действие с разным числом», и дальше него не идёт.

Осторожно

Переменная живёт до перезагрузки или до явного удаления. Значение, оставшееся от прошлой репетиции, макрос подставит молча. Если макрос рискованный, задавайте переменную в нём же, а не полагайтесь на сохранившуюся.

Порядок отладки

  1. Задать переменную руками из командной строки.
  2. Прочитать её и убедиться, что там то, что вы ждёте.
  3. Выполнить команду с подстановкой руками.
  4. Только потом собрать это в макрос.

Тот же порядок, что и с макросами вообще: сначала работает строка, потом появляется кнопка.

рядом по смыслу