ReaScripts (скрипты для Reaper) - обсуждение

  • Автор темы Автор темы drzhnn
  • Дата начала Дата начала
@Trasher, Теперь понятно, интересует метапрограммирование.
Ну… Зависит от среды, в которой запускается. Легче всего реализовать как плагин для редактора кода. Как это сделано, допустим, для KSP.

Там плагин офигеть какой здоровый и развёрнутый. Но в целом, в вашем случае, можно обойтись буквально ~30 строчками кода:
  1. Получаем из буфера редактора текст (В SublimeText это какая-то из вариаций API view.lines())
  2. Сравниваем через regex нужный вам паттерн
  3. Если надо заменить макрос на несколько строк, то пушим в вывод наши строки
  4. если regex не находит соответствие ‒ пушим оригинальную строку
  5. Пушим строки обратно в буфер редактора. Или в новый файл, как вам удобно.
К сожалению, не могу предоставить релевантный пример. Но, в общем и целом, без всякой подготовки в SublimeText можно написать свои макросы за вечер.

P.S. Тут надо понимать, что прямо совсем кошерно всё равно не получится, потому что в том же JSFX препроцессора нет. Но в целом, никто не мешает в билд добавить свой препроцессор, если и так там что-то экспандится.
 
  • Like
Реакции: Trasher
@PianoIst,все правильно мета программирование. Препроцессор появился в jsfx с 6.82(по-моему) Вот как раз для него и надо. Сам скрипт на семейках/cmake.(выбрал из-за открытости кода и кросс платформы, но минусом подтянул избыточность/многословность синтаксиса семеек и безобразное поведение при работе со строковыми типами из-за ";" ). Просто принт сишный(вроде просто на первый взгляд, для разбора) возникают проблемы из-за переменного количества аргументов и разнообразия вариантов оформления аргумента параметра строки форматирования. Да.... все-таки, придётся регулярки использовать(как они меня бесят) . Спасибо за наводку.
 
  • Like
Реакции: PianoIst
Не. Просто там это было в первые и интересно. :)
[DOUBLEPOST=1481381492][/DOUBLEPOST]
Та я просил Женю перенести в скрипты, а он......
Попрошу модераторов перенести часть постов в профильную тему.
Люди, а как найти перенесенные скрипты?
 
Привет. Подскажите плиз, какой командой происходит апдейт отображенных треков при SetMediaTrackInfo_Value с параметром "B_SHOWINTCP" ? ни UpdateArrange, ни UpdateItemLanes не помогают
 
Привет. Подскажите плиз, какой командой происходит апдейт отображенных треков при SetMediaTrackInfo_Value с параметром "B_SHOWINTCP" ? ни UpdateArrange, ни UpdateItemLanes не помогают
Вероятно
reaper.TrackList_AdjustWindows(true)
после команды SetMediaTrackInfo_Value
 
  • Like
Реакции: fruitcore
Давно ищу аналог. В лоджике есть функция: "Detect tempo of selected region" Работает весьма точно. Появляется всплывающее окно и показывает темп выделенного айтема.

Есть ли подобное в рипере? Не могу найти аналог. Перебрал скрипты mpl, но они создают маркеры и меняют time ruler. Это всё не то.. Может я что-то не так настраиваю?
 
Последнее редактирование:
Давно ищу аналог. В лоджике есть функция: "Detect tempo of selected region" Работает весьма точно. Появляется всплывающее окно и показывает темп выделенного айтема.

Есть ли подобное в рипере? Не могу найти аналог. Перебрал скрипты mpl, но они создают маркеры и меняют time ruler. Это всё не то.. Может я что-то не так настраиваю?
Привет, вроде этот детектит, не? MKSlicer 3.22 - lua script for quick slicing, quantizing and more
 
  • Like
Реакции: Lachinio
У @Kokarev Maxim как раз обзор на него :D

не пойму, "MK Slicer - это скрипт для быстрой нарезки, квантования по сетке, ре-грува и ре-квантования, триггеринга и сэмплирования аудио." это для квантизации в первую очередь, функции определения темпа там не нахожу.

В лоджике это выглядит вот так:

Screenshot 2024-11-02 at 18.25.28.jpg


Screenshot 2024-11-02 at 18.25.42.jpg


И я сразу вижу темп айтема, без изменения сетки проекта\айтема


Update..
Screenshot 2024-11-02 at 18.34.55.jpg

Увидел! Я не тот плагин грузил. Но определяет почему-то не точно.. аа так это его плагин! Макс можешь подсказать по настройке? Сейчас работает не точно.
 
Последнее редактирование:

@Extaform

MK Slicer cool
Инструмент классный, но у него всё таки основное предназначение иное, именно для определения темпа нужно выбирать фрагмент, подбирать трешхолд, сенситивит и не факт что сразу определит правильно. В запаре такой вариант не всегда удобный.. Лоджик позволяет без заморочек сходу определить верный темп.

Кто нибудь знает ещё инструменты именно для определения темпа?
 
Разрешите задать Вам такой вопрос: Если открыть окно пиан рола не в доке, а отдельно, как запустить запись из этого окна? Что бы запись было видно, когда играешь на инструменте. Когда пишешь гармонию аккордов буквами в окне треков, то как сделать, что бы они были и в отдельном окне пиан рола? Как совместить minutes:seconds c measires: beats вместе, что бы видеть сразу в окне треков? Спасибо.
 

@Extaform

MK Slicer cool
Инструмент классный, но у него всё таки основное предназначение иное, именно для определения темпа нужно выбирать фрагмент, подбирать трешхолд, сенситивит и не факт что сразу определит правильно. В запаре такой вариант не всегда удобный.. Лоджик позволяет без заморочек сходу определить верный темп.

Кто нибудь знает ещё инструменты именно для определения темпа?
Не у всех есть лоджик, слайсер пока не подводил. Или вы по пикам вайвформ не видите где и что?)
 
Последнее редактирование:
@Vallt,
– Увы, я знаю только способ с назначением команды record на midi кнопку на piano/других midi девайсах. Далее на треке нужно выбрать режим overdub чтобы запись происходила в текущий выбранный айтем. И тогда можно запускать запись из под любого окрытого окна.
Screenshot 2024-12-03 at 17.44.27.jpg


– Midi item имеет 4 режима. Открывать их паралельно к сожалению нельзя на сколько мне известно.
– Для транспорта есть две ячейки отображения: основной и secondary. В одном укажите seconds в другом beats. В Action List вбейте transport unit. Увидите предложенный перечень
Аналогино нужно сделать для time ruler unit, т.к. в рипере они разделены (Transport и Time ruler могут показывать не зависимо друг от друга шкалы)

@Extaform,
А где я настаивал чтобы все в обязательном порядке лоджик ставили? Я написал что сравниваю данный плагин с лоджиком, т.к. сам до рипера работал в лоджике. Вот и сравниваю с тем, с чем работал ранее.

Вижу что полученный результат с темпом настоящим не бьётся. Может не туда жму?
 

Сейчас просматривают