Нужно как минимум уметь это делать))...нужно строить скрипт на API и не вызывать этого окна.
Нужно как минимум уметь это делать))...нужно строить скрипт на API и не вызывать этого окна.
Я специально так сделал, у envelope только select/unselect работает, потому что у точек нет идентификаторов (опознающих знаков) и они опознаются только по нумерации. Я могу конечно сделать, но будет это выглядеть так:@Archchie,
Archie_Var; Toggle Select all items tracks envelope points (depending on focus)(Save previous).lua
всё ок кроме работы с envelope points - не восстанавливает первоначальное выделение. с айтемами и дорогами всё ок!
Учитесь, или просите тех, кто умеет. Но Энтер жать скриптом - это....., даже не знаю как не очень обидно написать.Нужно как минимум уметь это делать))
Спасибо большое!@Archchie, спасибо, задонатил!
@Archchie, проблема с работой скриптов "Script: Archie_Render; Render stems Template........"
создаются лишние папки на OS X.
local Render_Directory = 'XXRPP/!Multi'
-----------------------------------------------------------------------------------------------------------
if type(Render_Directory)~='string' then Render_Directory=''end;
local projfn = ({reaper.EnumProjects(-1,"")})[2]:match("(.+)[/\\]")or "";
Render_Directory = (Render_Directory:gsub("^XXRPP",projfn):gsub("\\","/"):gsub("^/",""):gsub("/$",""))or"";
--reaper.GetSetProjectInfo_String(0,"RENDER_FILE",Render_Directory,1);
-----------------------------------------------------------------------------------------------------------
reaper.ShowConsoleMsg('');
reaper.ShowConsoleMsg('Folder proj.RPP == "'..projfn:gsub("\\","/")..'"\n\n');
reaper.ShowConsoleMsg('My path == "'..Render_Directory..'"\n\n');
Это я понял, я и пытаюсь выяснить где/откуда происходит ошибка, откуда берутся эти лишние папки, скрипт не может создавать новых папок, так как там ничего такого не прописано, это видимо где то баг в API и его нужно хотя бы для начала как то найти.однако на писи эскпорт идёт в папку рядом с проектом, а на маке создаётся куча папок "одна в другой" и туда идёт экспорт (
Пиля... заработало.. Как так то, то работает, то не работает.Объединил в кастом два экшена: Grid:Set to ... и Track:Set MIDI input quantize to ... for all track.. Если вешать на кнопку эти экшены по отдельности, работает подсветка, когда они активны. С кастомом подсветка естественно пропадает. Подскажите, как сделать подсветку, если на кнопке висит кастом? Или только через скрипт?
@vax, Обновил "Archie_Render; Render stems Template", вроде удалось все исправить, сильно не тестил т.к. исправлял у знакомого в гостях и времени не было на тесты, но у него на маке все папки сейчас создаются правильно, до этого так же создавалось куча лишних папок, а точнее весь путь прописывался от файла проекта и в оконцовке получался двойной путь.
Обновляй - пускай тестят, как у них работает. Думаю должно быть норм. Пусть отпишутся, что бы знать.
Что бы по новой не заморачиваться со всеми настройками, которые ты уже настроил под себя, то скопируй из "Archie_Render; Render stems Template" только код, не трогая настройки, т.е. все что ниже вот этого разделителя
Посмотреть вложение 175178
И так же вставь в свои настроенные скрипты, не трогая настройки.
Прошу прощения) В скрипте номер версии не поменял и он у всех вас не обновился.что-то не понимаю какой скрипт брать за основу ))
оригинальный Archie_Render; Render stems Template(`) не обновлён.
Для чего дублировать это сообщение по всем темам ??? Я и первое сообщение прекрасно вижу.@Archchie, Привет! Обновился до reaper603+dev0128_x64-install и скрипт @Archie_Render; Render stems Template(`)@ перестал реагировать на настройки? рендерит все в wav 24bit/
До 6,03 только скриптом, а выше (6,03+dev +) в окне создания кастома есть галки что бы показывать статус тогл, если все экшены в статусе "on" то и кастом "on", а если хоть один экшен в кастоме off, то и кастом off.Объединил в кастом два экшена: Grid:Set to ... и Track:Set MIDI input quantize to ... for all track.. Если вешать на кнопку эти экшены по отдельности, работает подсветка, когда они активны. С кастомом подсветка естественно пропадает. Подскажите, как сделать подсветку, если на кнопке висит кастом? Или только через скрипт?
Пиля... заработало.. Как так то, то работает, то не работает.
Прошу прощения) В скрипте номер версии не поменял и он у всех вас не обновился.
Обновил: Archie_Render; Render stems Template(`) - он основа
Спасибо!задонатил чуток.
Archie_Item; Unselect items if track not selected.luaПомогите со скриптом. Нужен скрипт, по выполнению которого, оставались выделенными бы только те айтемы, которые находятся на выделенном треке, а с остальных других каналов, на которых если есть выделенные айтемы, выделение бы с них снималось.
Параметр Name_or_Numb_Fx - вписываешь также либо звездочка и номера эффектов через точку с запятой или имена эффектов через точку с запятой, рядом с параметром Name_or_Numb_Fx в скрипте есть примеры как вписывать.
-- NoIndex: true
--[[
* Тест только на windows / Test only on windows.
* Отчет об ошибке: Если обнаружите какие либо ошибки, то сообщите по одной из указанных ссылок ниже (*Website)
* Bug Reports: If you find any errors, please report one of the links below (*Website)
*
* Category: Fx
* Description: Toggle Bypass necessary Fx in selected tracks(user input)
* Author: Archie
* Version: 1.02
* VIDEO: http://youtu.be/H1m9PMSRfVg?t=1486
* Website: http://forum.cockos.com/showthread.php?t=212819
* http://rmmedia.ru/threads/134701/
* DONATION: http://money.yandex.ru/to/410018003906628
* Customer: vax(Rmm)--Дима Горелик
* Gave idea: vax(Rmm)--Дима Горелик
* Changelog:
* v.1.02 [14.01.20]
* + Master Track
* ! fixed bug
* v.1.0 [13.12.19]
* + initialе
--]]
--======================================================================================
--//////////// НАСТРОЙКИ \\\\\\\\\\\\ SETTINGS //////////// НАСТРОЙКИ \\\\\\\\\\\\
--======================================================================================
--[==[
--[ <<< Вот здесь поменять <<< Change here
local msg =
'Eng:\n\n'..
'Script:\n'..
'Toggle - bypass the required Fx in the selected tracks (user input through a comma or semicolon)\n'..
'In the window that appears, enter the Fx names that need to be bypassed / bypassed through a comma (,) or semicolon (;)\n'..
'For example: Delay, name2; name3\n'..
'Names can be spelled out not completely, but only part of the name\n'..
'For example: Del, me2; me3\n'..
'Or\n'..
'enter Fx numbers separated by commas (,) or semicolons (;)\n'..
'adding *(asterisk) at the beginning\n'..
'For example: *1, 3, 5\n'..
'In order for this window not to appear with a hint, go to the script and in the settings mark in the line - [add a character [to make it - [[\n\n\n'..
'Rus:\n\n'..
'Скрипт:\n'..
'Переключатель - байпас необходимых Fx в выбранных треках(пользовательский ввод через запятую или точка с запятой)\n'..
'Введите в появившемся окне имена Fx , которые нужно забайпасить/разбайпасить через запятую(,) или точку с запятой(;)\n'..
'Например: Delay,name2;name3\n'..
'Имена можно прописывать не полностью, а только часть имени\n'..
'Например: Del,me2;me3\n'..
'Или\n'..
'введите номера Fx через запятую(,) или точку с запятой(;)\n'..
'добавив *(звездочку) в начале\n'..
'Например: *1, 3, 5\n'..
'Для того чтобы не появлялось это окно с подсказкой зайдите в скрипт и в пометке настройки в строке --[ добавьте знак [ чтобы получилось --[[\n'
--]]
local WINDOW_RESTART = true;
-- = true; | Повторно открыть окно
-- = false; | Не открывать Повторно окно
--]==]
local Name_or_Numb_Fx = '*1;3'
-- = '*1'
-- = '*1;3;4;5'
-- = 'Master Limiter'
-- = 'ShaperBox;ReaEQ;JS: Master Limiter'
local MASTER_TRACK = true; -- true/false
--======================================================================================
--////////////// SCRIPT \\\\\\\\\\\\\\ SCRIPT ////////////// SCRIPT \\\\\\\\\\\\\\\\
--======================================================================================
-------------------------------------------------------
local function no_ubdo()reaper.defer(function()end)end;
-------------------------------------------------------
-------------------------------------------------------------------------------------------
local function retT(X)local x for key,val in pairs(X)do x=(x or 0)+1 end return x or 0 end;
-------------------------------------------------------------------------------------------
---------------------------------------------------------
local function SC(x)return string.gsub(x,'%p','%%%0')end;
---------------------------------------------------------
----------------------------------------------------------------------------------------------
local is_new_value,filename,sectionID,cmdID,mode,resolution,val = reaper.get_action_context();
----------------------------------------------------------------------------------------------
--::RESTART::
--------------------------------------------------------------
local CountSelTrack = reaper.CountSelectedTracks(0);
if CountSelTrack == 0 then;
local mTr = reaper.GetMasterTrack(0);
local sel = reaper.GetMediaTrackInfo_Value(mTr,'I_SELECTED');
if sel == 0 then;
reaper.MB('No Selected Track','Woops',0)no_ubdo()return;
end;
end;
--------------------------------------------------------------
--[[
------------------------------------
if msg and type(msg)=='string' then;
reaper.ShowConsoleMsg("");
reaper.ShowConsoleMsg(msg);
---
if reaper.JS_Window_Find then;
local title = reaper.JS_Localize("ReaScript console output","common");
local wind = reaper.JS_Window_Find(title,true);
if wind then;
reaper.JS_Window_Resize(wind,950,550);
end;
end
---
end;
------------------------------------
--]]
--[[
-----------------------------------------------
local
ExtState = reaper.GetExtState(filename,'value');
local
retval, str = reaper.GetUserInputs("Toggle Bypass fx in selected tracks by number or name",1,"Name Fx or *number (by comma),extrawidth=150",ExtState);
if not retval or #str:gsub("%s","")==0 then no_ubdo()return end;
str = str:gsub(',',';');
reaper.SetExtState(filename,'value',str,false);
-----------------------------------------------
--]]
str = Name_or_Numb_Fx;
---------------
local NT = {};
local T = {};
local NameNumb;
---------------
-----------------------------------------
if str:match("%S")=='*' then;
str = str:gsub('%s-*','',1);
for S in string.gmatch(str,"%d+") do;
if tonumber(S) then;
T[tonumber(S)]=tonumber(S);
end;
end;
else;
for S in string.gmatch(str..';',"(.-);") do;
NT[#NT+1]=S:upper();
end;
end;
-----------------------------------------
-----------------------------------------------------------
if retT(T) == 0 and retT(NT) == 0 then no_ubdo()return end;
-----------------------------------------------------------
-------------------------------------------------------------------------------------
if retT(T) > 0 then NameNumb = 'NUMB' elseif retT(NT) > 0 then NameNumb = 'NAME' end;
-------------------------------------------------------------------------------------
------------------------------------------
local GetEnabled, SetEnabled, Undo, strU;
local
CountSelTrack = reaper.CountSelectedTracks(0);
for i = 0, CountSelTrack do;
-----
local SelTrack;
if i == 0 then;
local mTr = reaper.GetMasterTrack(0);
local sel = reaper.GetMediaTrackInfo_Value(mTr,'I_SELECTED');
if MASTER_TRACK ~= true then sel = 0 end;
if sel == 1 then;
SelTrack = mTr;
end;
else;
SelTrack = reaper.GetSelectedTrack(0,i-1);
end;
-----
if SelTrack then;
--================================================
local FX_Count = reaper.TrackFX_GetCount(SelTrack);
for ifx = 1, FX_Count do;
if NameNumb == 'NAME' then;
-----------
---------
local _, nameFx = reaper.TrackFX_GetFXName(SelTrack,ifx-1,'');
for inm = 1, #NT do;
nameFx = nameFx:upper();
if nameFx:match(SC(NT[inm])) then;
if not GetEnabled then;
GetEnabled = reaper.TrackFX_GetEnabled(SelTrack,ifx-1);
if GetEnabled then SetEnabled = false else SetEnabled = true GetEnabled = true end;
end;
if not Undo then;
reaper.Undo_BeginBlock();
reaper.PreventUIRefresh(1);
Undo = true;
end;
reaper.TrackFX_SetEnabled(SelTrack,ifx-1,SetEnabled);
if SetEnabled == true then strU = "Unbypass Fx" else strU = "Bypass Fx" end;
break;
end;
end;
---------
-----------
elseif NameNumb == 'NUMB' then;
-----------
---------
if T[ifx] then;
if not GetEnabled then;
GetEnabled = reaper.TrackFX_GetEnabled(SelTrack,ifx-1);
if GetEnabled then SetEnabled = false else SetEnabled = true GetEnabled = true end;
end;
if not Undo then;
reaper.Undo_BeginBlock();
reaper.PreventUIRefresh(1);
Undo = true;
if SetEnabled == true then strU = "Unbypass Fx" else strU = "Bypass Fx" end;
end;
reaper.TrackFX_SetEnabled(SelTrack,ifx-1,SetEnabled);
end;
---------
-----------
end;
end;
--================================================
end;
-----
end;
if Undo then;
reaper.PreventUIRefresh(-1);
reaper.Undo_EndBlock(strU,-1);
else;
no_ubdo();
end;
if WINDOW_RESTART == true then;
-- goto RESTART;
end;
Этот скрипт смотрит чисто на имя плагина или на номер эффекта, в зависимости от того, что ты ввел.2. Может ли этот скрипт работать с JS плагинами.