Использовать название айтема в качестве заметок, тогда они будут отображаться.Можно как-нибудь короткие item notes выводить прямо текстом на айтеме?
Не понял сути вопроса, ведь он и так - так работает.@Archchie, можно Вас попросить немного изменить Ваш скрипт, который Вы писали по моей просьбе?
Appends to name of selected track _ARCHIVE.lua
Добавить туда такую логику: если в конце имени трека уже есть ARCHIVE - ничего не дописывать, если нет - дописывать
скрипт сейчас просто дописывает к названию трека ARCHIVE. Если в названии трeка уже есть ARHIVE, то он еще раз прибавит к названию это же слово.Не понял сути вопроса, ведь он и так - так работает.
Не правдаскрипт сейчас просто дописывает к названию трека ARCHIVE. Если в названии трeка уже есть ARHIVE, то он еще раз прибавит к названию это же слово.
Да я прекрасно понял, что ты имел в виду, Но вот дело в том, что скрипт как раз и работает как ты хочешь, второй раз ничего он не дописывает!Я имел в виду, может ли скрипт анализировать последние символы трека, и если в конце трека уже есть слово ARCHIVE - то чтобы скрипт ничего не делал.
Скинь свой скрипт сюда
можно чтобы и со скобками, потому как если ставлю скобки - то опять по несколько раз добавляет (ARC) ?Сейчас поправил, теперь можно писать с пробелами
У меня и со скобками добавляет только один раз,можно чтобы и со скобками, потому как если ставлю скобки - то опять по несколько раз добавляет (ARC) ?
Хороший пример того, что совершенно НЕ НУЖНО делать!Можно попросить сделать скрипт. Нужно, чтобы при выделенном треке и запуске экшена заменялся эффект в первом слоте. Работать должно так:
1. Выделил трек.
2. Нажал экшн (запуск скрипта)
3. Появилось окно FX-Browser
4. Выбрал там новый VST или VSTi
5. Выбранный VST заменил текущий, который в данный момент в первом слоте.
Хорошо бы, чтобы slot - был частью настроек скрипта, чтобы можно было копированием скрипта наделать себе несколько таких скриптов для слотов 2-6
Подскажите пожалуйста, как сделать такую штуку в Пиано-ролл.
Есть ноты, находящиеся на одной высоте (например, ЛЯ). Мне нужно скопировать всю их линейку на другую ноту (которая находится например на две с половиной октавы ниже). Тащить через такое расстояние, удерживая CTLR (для копирования) и SHIFT (чтобы не сбить позицию) - проблемно. Может можно соорудить некий кастом или скрипт?
1. Выделил все ноты одной высоты (правый клик мыши по клавиатуре в пиано-роле)
2. Скопировал или вырезал из в буфер (CTRL+C / CTRL+X)
3. Нажал на необходимую ноту на пиано, куда необходимо скопировать.
4. Применил экшн. И из буфера ноты скопировались на эту ноту.
не очень удобный вариант, нужно вводить ноту. К тому же, данный вариант совершенно не пригоден для копированияCtrl+F2 (note properties)
агапитч - это выше, ниже сами ноты? Типа, было до, стало до диез?
так я тоже умею но не очень удобно, т.к. правая рука всегда на мыши, а левая - в области CTRL/ALT/SHIFT. Стараюсь максимальное кол-во операций в миди-эдиторе делать колесом с модификаторами (сдвиги нот, коррекцию велосити и т.д.). Вот еще бы с питчем разобраться как это настроить....@Supa75, Я стрелочками двигаю - мне так удобнее и привык.
не могу разобраться, как настроить питч колесом мыши выделенных нот в миди-эдиторе. Для сдвига нот влево-вправо - нашел как настроить на колесо, а вот с питчем - беда
for key in pairs(reaper) do _G[key]=reaper[key] end
-------------------------------------------------------------------------
function MoveNotesVertically(take, dir)
local dir_int = 1
if dir then dir_int = -1 end
local tableEvents = {}
local t = 0
local gotAllOK, MIDIstring = MIDI_GetAllEvts(take, "")
local MIDIlen = MIDIstring:len()
local stringPos = 1
local offset, flags, msg
while stringPos < MIDIlen-12 do
offset, flags, msg, stringPos = string.unpack("i4Bs4", MIDIstring, stringPos)
out_val = msg:byte(2)
if msg:len() > 1 and ( msg:byte(1)>>4 == 0x9 or msg:byte(1)>>4 == 0x8 ) and flags&1==1 then out_val = math.max(0,math.min(msg:byte(2) - dir_int,127)) end
t = t + 1
tableEvents[t] = string.pack("i4Bi4BBB", offset, flags, 3, msg:byte(1), out_val, msg:byte(3) )
end
MIDI_SetAllEvts(take, table.concat(tableEvents) .. MIDIstring:sub(-12))
MIDI_Sort(take)
end
-------------------------------------------------------------------------
function main(dir)
if val == 0 then return end
local midieditor = MIDIEditor_GetActive()
if not midieditor then return end
local take = MIDIEditor_GetTake( midieditor )
if not take then return end
Undo_BeginBlock()
MoveNotesVertically(take, val>0)
Undo_EndBlock('Move notes vertically', 1)
end
is_new_value,filename,sectionID,cmdID,mode,resolution,val = reaper.get_action_context()
main(val)
А не проще вот эту галку активировать См. скрин 1 что бы появилась на айтеме кнопочка См. скрин 2Нужно исключать айтем, который под курсором мыши из группы айтемов.