Попробуй обновить пики экшеном: Peaks: Rebuild all peaksЗдравствуйте Друзья! После переустановки ОС и загрузки своей конфигурации, почему то не отображается рисунок волны аудио айтемов в малом масштабе. Не могу в настройках найти - есть ли такая регулировка. Может кто знает. Хелп плиз
При освоении сложной программы, а любой скриптовый язык не просто освоить, да ещё и заточенный под конкретное API, нужны либо хорошие примеры/туториалы, либо учитель.Осваивать для того что бы попробовать что это такое или осваивать в процессе работы?
пару человек я знаю, но сильно занятые, один в америке живёт.Я о русскоязычной тусовке. Я не смог найти ни кого, кто помог бы мне в освоении....
Вадим, уже не вижу смысла в этом. Тем более, что я уверен на 100% - ни чего нового я там не найду, после скриптов Рипера и его постоянно развивающегося API.пару человек я знаю, но сильно занятые, один в америке живёт.
Большое спасибо! Я разобрался. Оказывается бы некорректный путь к папке REPEAKS@cguitleo, возможно старый reapeaks файл сбился. Советую найти все reapeaks файлы и удалить.
local showpeaks = reaper.SNM_GetIntConfigVar("showpeaks", -1)
local display_peaks = showpeaks&1 == 1
if display_peaks then
reaper.SNM_SetIntConfigVar("showpeaks", showpeaks-1)
else
reaper.SNM_SetIntConfigVar("showpeaks", showpeaks+1)
end
reaper.UpdateArrange()
Вывести в общий тулбар,где в некоторых программах так и сделано.По мне удобно,жаль.@Red Bull, нет. А зачем это в экшенах?
Это понятно.Но вот многие думали что это тоже нельзя вывести.Но Арчи склепал.@Red Bull, но не возможно вывести все функции и галочки в общий тулбар.
Так в этом и есть плюс Рипера, что конфиг можно заточить под свои задачи, которые у всех разные.Это понятно.Но вот многие думали что это тоже нельзя вывести.Но Арчи склепал.
Просто думал очки не протер, как говорится.
Не могу найти
-------------------------------------------------------
local function no_undo()reaper.defer(function()end)end;
-------------------------------------------------------
local function Post_LMouseDownUp(hwnd, x, y);
reaper.JS_WindowMessage_Post(hwnd, "WM_LBUTTONDOWN", 1, 0, x, y)
reaper.JS_WindowMessage_Post(hwnd, "WM_LBUTTONUP", 0, 0, x, y)
end
local hWnd_action = reaper.JS_Window_Find("Snap/Grid Settings",true);
local Dest = hWnd_action;;
reaper.Main_OnCommand(40071,0)--Show snap/grid settings
hWnd_action = reaper.JS_Window_Find("Snap/Grid Settings",true);
if not hWnd_action then no_undo()return end;
--[[----------------------------------------------------------
for i = 0,0 do
hW = reaper.JS_Window_FindChildByID(hWnd_action,i);
if hW then
sNm = reaper.JS_Window_GetTitle(hW,"")
end
reaper.ShowConsoleMsg(tostring(hW)..'--'..i..'--'..tostring(sNm)..'\n' )
end
--]]----------------------------------------------------------
local combo = reaper.JS_Window_FindChildByID(hWnd_action,1043);
Post_LMouseDownUp(combo,0,0);
if not Dest then;
--reaper.JS_Window_SetOpacity(hWnd_action,'ALPHA',1);
reaper.JS_Window_Move(hWnd_action,-9999,-9999);
reaper.defer(function()reaper.JS_Window_Destroy(hWnd_action)end);
end;
Ну вот!!Оказывается все можно,когда за дело берется профи))Премного благодарен!JavaScript:------------------------------------------------------- local function no_undo()reaper.defer(function()end)end; ------------------------------------------------------- local function Post_LMouseDownUp(hwnd, x, y); reaper.JS_WindowMessage_Post(hwnd, "WM_LBUTTONDOWN", 1, 0, x, y) reaper.JS_WindowMessage_Post(hwnd, "WM_LBUTTONUP", 0, 0, x, y) end local hWnd_action = reaper.JS_Window_Find("Snap/Grid Settings",true); local Dest = hWnd_action;; reaper.Main_OnCommand(40071,0)--Show snap/grid settings hWnd_action = reaper.JS_Window_Find("Snap/Grid Settings",true); if not hWnd_action then no_undo()return end; --[[---------------------------------------------------------- for i = 0,0 do hW = reaper.JS_Window_FindChildByID(hWnd_action,i); if hW then sNm = reaper.JS_Window_GetTitle(hW,"") end reaper.ShowConsoleMsg(tostring(hW)..'--'..i..'--'..tostring(sNm)..'\n' ) end --]]---------------------------------------------------------- local combo = reaper.JS_Window_FindChildByID(hWnd_action,1043); Post_LMouseDownUp(combo,0,0); if not Dest then; --reaper.JS_Window_SetOpacity(hWnd_action,'ALPHA',1); reaper.JS_Window_Move(hWnd_action,-9999,-9999); reaper.defer(function()reaper.JS_Window_Destroy(hWnd_action)end); end;
Да, но команда Unselect all items для секции Main и ее не получается забиндить на кнопку в Midi Editor. Но и на данный момент конструкция работает не так как хотелось бы.. Допустим нота длинной в два такта, а это один айтем, а мне нужно переключиться на второй айтем, тоесть на третий такт. Айтем переключается, но курсор падает в начало второго такта. В проекте айтемы разной длины, а курсор только по тактам идет. В общем хотелось бы чтобы всегда выделялся следующий айтем и курсор падал в начало этого айтема. Возможно такое сделать?@BRG, снять выделение с нот - в секции MIDI Editor - Unselect all
а снять выделение с атема - Unselect all items
Нет.Еще вот что хотел спросить.У тебя имеются некоторые скрипты по типу "Grid switch" ,в своей определенной оболочке.Просто интересно,возможен ли такой финт в теории, а именно вставка своих личных экшенов,вместо того что есть?Это смотрится довольно аккуратно и самое важное можно ужать до нужных размеров.
Если честно, я не понял что именноДа, но команда Unselect all items для секции Main и ее не получается забиндить на кнопку в Midi Editor. Но и на данный момент конструкция работает не так как хотелось бы.. Допустим нота длинной в два такта, а это один айтем, а мне нужно переключиться на второй айтем, тоесть на третий такт. Айтем переключается, но курсор падает в начало второго такта. В проекте айтемы разной длины, а курсор только по тактам идет. В общем хотелось бы чтобы всегда выделялся следующий айтем и курсор падал в начало этого айтема. Возможно такое сделать?
Но и на данный момент конструкция работает не так как хотелось бы..
Понял,принял...Нет.
В нем все жестко закодировано. Очень много нужно будет редактировать в скрипте, что бы добиться этого.
-------------------------------------------------------
local function no_undo()reaper.defer(function()end)end;
-------------------------------------------------------
local midieditor = reaper.MIDIEditor_GetActive();
if not midieditor then no_undo()return end;
reaper.MIDIEditor_OnCommand(midieditor,40833);--Activate next MIDI item
local take = reaper.MIDIEditor_GetTake(midieditor);
local item = reaper.GetMediaItemTake_Item(take);
reaper.SelectAllMediaItems(0,0);
local pos = reaper.GetMediaItemInfo_Value(item,'D_POSITION');
reaper.SetEditCurPos(pos,true,false);
reaper.SetMediaItemInfo_Value(item,'B_UISEL',1);
reaper.UpdateArrange();
no_undo();
А как сделать previous и вариант с zoom content? А то у меня получается@BRG, Это нужно?
Посмотреть вложение 188880
PHP:------------------------------------------------------- local function no_undo()reaper.defer(function()end)end; ------------------------------------------------------- local midieditor = reaper.MIDIEditor_GetActive(); if not midieditor then no_undo()return end; reaper.MIDIEditor_OnCommand(midieditor,40833);--Activate next MIDI item local take = reaper.MIDIEditor_GetTake(midieditor); local item = reaper.GetMediaItemTake_Item(take); reaper.SelectAllMediaItems(0,0); local pos = reaper.GetMediaItemInfo_Value(item,'D_POSITION'); reaper.SetEditCurPos(pos,true,false); reaper.SetMediaItemInfo_Value(item,'B_UISEL',1); reaper.UpdateArrange(); no_undo();
-------------------------------------------------------
local function no_undo()reaper.defer(function()end)end;
-------------------------------------------------------
local midieditor = reaper.MIDIEditor_GetActive();
if not midieditor then no_undo()return end;
reaper.MIDIEditor_OnCommand(midieditor,40833);--Activate next MIDI item
local take = reaper.MIDIEditor_GetTake(midieditor);
local item = reaper.GetMediaItemTake_Item(take);
reaper.SelectAllMediaItems(0,0);
local pos = reaper.GetMediaItemInfo_Value(item,'D_POSITION');
reaper.SetEditCurPos(pos,true,false);
reaper.SetMediaItemInfo_Value(item,'B_UISEL',1);
reaper.UpdateArrange();
reaper.Main_OnCommand(40153,0)--Item: Open in built-in MIDI editor (set default behavior in preferences)
-- reaper.MIDIEditor_OnCommand(midieditor,40466);--View: Zoom to content
no_undo();
-------------------------------------------------------
local function no_undo()reaper.defer(function()end)end;
-------------------------------------------------------
local midieditor = reaper.MIDIEditor_GetActive();
if not midieditor then no_undo()return end;
reaper.MIDIEditor_OnCommand(midieditor,40834);--Activate previous MIDI item
local take = reaper.MIDIEditor_GetTake(midieditor);
local item = reaper.GetMediaItemTake_Item(take);
reaper.SelectAllMediaItems(0,0);
local pos = reaper.GetMediaItemInfo_Value(item,'D_POSITION');
reaper.SetEditCurPos(pos,true,false);
reaper.SetMediaItemInfo_Value(item,'B_UISEL',1);
reaper.UpdateArrange();
reaper.Main_OnCommand(40153,0)--Item: Open in built-in MIDI editor (set default behavior in preferences)
-- reaper.MIDIEditor_OnCommand(midieditor,40466);--View: Zoom to content
no_undo();
Что ты не можешь сделать?Да, то самое. Вот только не смогу я это сделать)