Помогите создать экшн / кастом экшн / скрипт

Тема в разделе "Reaper", создана пользователем @Michael, 2 авг 2015.

  1. borisuperful

    borisuperful Well-Known Member

    Регистрация:
    31 янв 2013
    Сообщения:
    1.154
    Симпатии:
    398
    @Archchie, хотя вот что - если уж не учитывать масштаб треков с lock height, то тогда и сами эти треки тоже не изменять :)
     
    RJ Baker нравится это.
  2. Archchie

    Archchie Active Member

    Регистрация:
    24 окт 2017
    Сообщения:
    425
    Симпатии:
    233
    Пол:
    Мужской
    Поправил.
    В скрипте настройка, отключить / включить игнорирование "Lock track height"
     
    borisuperful и Maestro Sound нравится это.
  3. borisuperful

    borisuperful Well-Known Member

    Регистрация:
    31 янв 2013
    Сообщения:
    1.154
    Симпатии:
    398
    Кто нибудь подскажет, возможно ли и как перед запуском скрипта проверить, установлен ли SWS, чтобы ошибку выдать?
    UPD: Решил так
    Код:
    function OpenURL(url)
      local OS = reaper.GetOS()
      if OS == "OSX32" or OS == "OSX64" then
        os.execute('open "" "' .. url .. '"')
      else
        os.execute('start "" "' .. url .. '"')
      end
    end
         
         
    local test = reaper.BR_SetArrangeView
    if not test then 
    window = reaper.MB('Please install SWS extension', 'Error', 0) end
    if window  then
    OpenURL("http://www.sws-extension.org/") return
    end
    
    Либо любая пустая SWS функция
     
    Последнее редактирование: 5 янв 2019
  4. Maksimilian12

    Maksimilian12 New Member

    Регистрация:
    19 мар 2018
    Сообщения:
    5
    Симпатии:
    0
    Пол:
    Мужской
    Доброго времени суток,начал изучать программу Reaper, пересмотрел много материала,но пока кое-какие вещи непонятны,осваиваюсь.
    Хотел попросить помощи в создании кастом экшена,если он нужен,или показать встроенный,чтобы одной горячей клавишей переключать горизонтальный зум и вертикальный скролл
    Заранее спасибо
     
  5. Supa75

    Supa75 Active Member

    Регистрация:
    21 мар 2017
    Сообщения:
    500
    Симпатии:
    108
    Пол:
    Мужской
    Адрес:
    Днепр, Украина
    Хочу почистить папку со скриптами. По началу столько всего накачал с Риапака :) Но есть проблема. Можно ли как то узнать (с помощью какого-то скрипта или каким другим вариантом) какие скрипты используются в кастом и цикл-экшинах, чтобы их не прибить заодно. Вопрос: есть ли какой либо способ определить скрипты, которые используются в кастом и цикл-экшенах?
     
  6. smrz1

    smrz1 Banned

    Регистрация:
    25 янв 2010
    Сообщения:
    729
    Симпатии:
    82
    @Supa75, ещё вчера думал над этим и хотел задать такой же вопрос, практически слово в слово... Так что присоеденяюсь!
     
  7. Snjuk

    Snjuk Member

    Регистрация:
    10 июн 2014
    Сообщения:
    72
    Симпатии:
    38
    Пол:
    Мужской
    Адрес:
    Житомир UA
    @Supa75, Делаеш папку снуля - старую в архив, Хорошо чистит
     
  8. Supa75

    Supa75 Active Member

    Регистрация:
    21 мар 2017
    Сообщения:
    500
    Симпатии:
    108
    Пол:
    Мужской
    Адрес:
    Днепр, Украина
    ниче не понял. В смысле, вытереть все скрипты из соотв. папки и запускать по одному все кастомы и потом смотреть на что ругается при запуске? Тот еще способ...
     
  9. borisuperful

    borisuperful Well-Known Member

    Регистрация:
    31 янв 2013
    Сообщения:
    1.154
    Симпатии:
    398
    Нет. Ручками. Я это один раз сделал
     
  10. Archchie

    Archchie Active Member

    Регистрация:
    24 окт 2017
    Сообщения:
    425
    Симпатии:
    233
    Пол:
    Мужской
    PHP:
    -- Learn what script are used in custom actions and cycle action




        
    function GetScriptNameByID(ID);
            
    local Path,text reaper.GetResourcePath()..'/reaper-kb.ini';
            
    local file io.open(Path,'r');
            if 
    not file then return end;
            
    text file:read('a');file:close();
            return 
    text:match(ID:match('[%a%d]+')..'%s"(.-)".-\n');
        
    end
       
       
        local TableCast
    TableCicle = {},{};
        function 
    GetScriptNameByCastom();
             
    local kb_ini reaper.GetResourcePath()..'/reaper-kb.ini';
             
    local file io.open(kb_ini,'r');
             if 
    not file then return end;
             
    local text file:read('a');
             
    file:close();
             -------------
             for 
    S in string.gmatch (text"[^\n]+") do;
                 if 
    S:match('ACT')then;
                     for 
    NameScript in string.gmatch(S,"%S+") do;
                         if 
    #NameScript > 25 then;
                             
    if string.sub(NameScript,0,1) == "_" then;
                                 
    local scriptname GetScriptNameByID(NameScript);
                                 if 
    scriptname then
                                     
    TableCast[#TableCast+1] = "  *  "..scriptname:gsub('Custom:','Script: ');
                                 
    end;
                             
    end;
                         
    end;
                     
    end;
                 
    end;
             
    end
             return 
    TableCast;
        
    end;
       
       
        
    local function GetScriptNameByCicle();
             
    local kb_ini reaper.GetResourcePath()..'/S&M_Cyclactions.ini';
             
    local file io.open(kb_ini,'r');
             if 
    not file then return end;
             
    local text file:read('a');
             
    file:close();
             -------------
             for 
    S in string.gmatch (text"[^|]+") do;
                 if 
    #S > 25 then;
                     
    if string.sub(S,0,1) == "_" then
                         local scriptname 
    GetScriptNameByID(S);
                         if 
    scriptname then;
                             
    TableCicle[#TableCicle+1] = "  *  "..scriptname:gsub('Custom:','Script: ');
                         
    end;
                     
    end;
                 
    end;
             
    end
             return 
    TableCicle;
        
    end;
       
        
    reaper.ClearConsole();
        
    local Castom GetScriptNameByCastom();
        
    Castom[0] = " CASTOM ACTION:  ".. #Castom.." - Scripts\n ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯";
        
    for 0#Castom do;
            
    reaper.ShowConsoleMsg(Castom[i] .."\n");
        
    end;
        
    reaper.ShowConsoleMsg("\n\n");
       
        
    local Cicle GetScriptNameByCicle();
        
    Cicle[0] = " CICLE ACTION:  ".. #Cicle.." - Scripts\n ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯";
        
    for 0#Cicle do;
            
    reaper.ShowConsoleMsg(Cicle[i] .."\n");
        
    end;
     
    Последнее редактирование: 16 янв 2019 в 18:59
    Supa75 нравится это.
  11. YuriOl

    YuriOl Active Member

    Регистрация:
    6 май 2005
    Сообщения:
    528
    Симпатии:
    107
    Пол:
    Мужской
    Адрес:
    Луганск
    Ребята, а есть скрипты типа - запомнить (копировать) цвет айтема и восстановить (вставить) цвет в айтем? И такое же, но с именем айтема.
     

Поделиться этой страницей