 |
|
|
03-08-2015, 03:48 AM
|
#1
|
Human being with feelings
Join Date: Apr 2013
Location: France
Posts: 9,238
|
Better Scripts Management: Importation, Folders, ID, Deletion
Hi!
I came here for a feature request about scripts management.
Context
With the recent EEL opening and the upcoming version of REAPER (v5), scripting in REAPER has never been as easy.
On the ReaScripts subforums, it rains scripts every day. I have myself posted 23 new scripts yesterday.
Before that, I tend to put all my scripts simply in the Scripts subfolder.
Here is what my current script folder looks like:
So, what I have done is simple: folders!
Feels better, uh ?
Poblems
Well, it does, but there is a downside to this. No. There is several huge problems to script reorganization at this current moment:
- All link to the scripts in REAPER are broken.
- There is actions in the action panel which link to broken file (and no way to update it) that need to be deleted on by one manually
- My custom action which used scripts are broken
- If I re-import all this (more than 177 elements), all scripts command ID will be broken cause it is randomly generated at import.
- All my buttons related to scripts in my toolbars are broken and need to be recreated from scratch
The two last downsides have some other consequences: we cant properly share toolbars, we can't call scripts ID from other scripts etc...
Feature Request
It become clear than the actual way to manage scripts is not optimized for such huge libraries.
We need to find/propose a way to solve all this issues at once.
I suggest a folder based scripts management, just as VST.
- You would be able to define Scripts Folder path, and it will auto load at start.
- CMD id will be named after scripts name only.
Even a script-named based system is not perfect.
What if I want made a batch renaming of my scripts ?
The same problems will occur.
Should we used on online tool provided by Cockos for generating unique HASH for registering every script, using it in a script header comment?
or maybe HASH generation could be used directly into REAPER, and we could "send our hash" to an online database to reference our script ?
I guess ID based on name will be just fine for a moment.
Discussion
That is a complete subject and the actual system cannot satisfy these growing needs. We need to properly discuss about it and define the best suggestions we can make.
I hope we will be able to open this to vote very soon.
It is time bring local scripts management to the next level!
EDIT 2015-03-20:
Vote are open!
Last edited by X-Raym; 03-19-2015 at 04:19 PM.
|
|
|
03-08-2015, 04:04 AM
|
#2
|
Human being with feelings
Join Date: Jun 2012
Location: Spain
Posts: 6,915
|
and if you want to update the action of a toolbar button, with the reimported script, it also changes the text of the toolbar button, which is annoying.
if you open an issue I'll vote +1000
|
|
|
03-18-2015, 06:02 PM
|
#3
|
Human being with feelings
Join Date: Apr 2013
Location: France
Posts: 9,238
|
I guess I should open the vote anyway, and left Cockos's developers evaluate what it is the best thing to do to answer this emergent need.
What do you think of that, heda?
|
|
|
03-19-2015, 02:11 AM
|
#4
|
Human being with feelings
Join Date: Jun 2012
Location: Spain
Posts: 6,915
|
yes
I think Cockos will finally accept this idea. Maybe in some years if we vote it a lot. Patience
jokes apart, I think it is a good idea that at least deserves some discussion here from devs.
|
|
|
03-19-2015, 04:21 PM
|
#5
|
Human being with feelings
Join Date: Apr 2013
Location: France
Posts: 9,238
|
@heda
haha :P
I open the votes! Link at bottom of first thread!
|
|
|
03-21-2015, 06:34 AM
|
#6
|
Human being with feelings
Join Date: Feb 2008
Location: Mesa, AZ
Posts: 2,057
|
please include script renaming (button to rename file and script title in one go).
__________________
Soundemote - Home of the chaosfly and pretty oscilloscope.
MyReaperPlugin - Easy-to-use cross-platform C++ REAPER extension template
|
|
|
03-21-2015, 06:53 AM
|
#7
|
Human being with feelings
Join Date: Nov 2010
Posts: 2,433
|
Quote:
Originally Posted by Argitoth
please include script renaming (button to rename file and script title in one go).
|
+1
Please, this would save us a lot of time
|
|
|
04-07-2015, 06:37 AM
|
#8
|
Human being with feelings
Join Date: Apr 2013
Location: France
Posts: 9,238
|
Rename Script and Change Command ID in external Editor
I just succeed to renamed script command ID by exporting a ReaperKeyMap of a script and modify it in Notepad ++ and re-import it back.
From
PHP Code:
SCR 4 0 "bea7ac3f343a84418e6c34a53f8b05cf" "Custom: X-Raym_Create regions from selected takes and from track name.eel" "X-Raym_Create regions from selected takes and from track name.eel"
to
PHP Code:
SCR 4 0 "X-Raym_CreateRegionFromTakesName" "Custom: X-Raym_Create regions from selected takes and from track name.eel" "X-Raym_Create regions from selected takes and from track name.eel"
Does someone knew we can do this ?
It may be useful for scripts which need to call scripts.
But there is more !
And we also be able to renamed it this way ! The script path is the third string, the second is how it is called in REAPER !
Edit:
An other exemple, with absolute script path (scripts that are not in scripts folder:
PHP Code:
SCR 4 0 "c24bf8e99f81154f9618f5bc071280c8" "Custom: X-Raym_Select only - Unselect all MIDI notes with same pitch right of the mouse.eel" "G:\REAPER Scripts\REAPER-ReaScripts\MIDI Editor\X-Raym_Select only - Unselect all MIDI notes with same pitch right of the mouse.eel"
Also notice that if the script file doesn't have space, it appers like this:
PHP Code:
SCR 4 0 "3b270290632573449806995d35d12e58" "Custom: spk_slider_class.eel" spk_slider_class.eel
Edit:
This way, It may be possible to share my script toolbars ! yeah !
Last edited by X-Raym; 04-07-2015 at 06:45 AM.
|
|
|
04-08-2015, 03:21 AM
|
#9
|
Human being with feelings
Join Date: Apr 2013
Location: France
Posts: 9,238
|
Tutorial
|
|
|
04-08-2015, 04:23 AM
|
#10
|
Human being with feelings
Join Date: Jun 2012
Location: Spain
Posts: 6,915
|
Interesting! I didn't know we could assign custom IDs this way.
I think devs enjoy making us suffer discovering things
|
|
|
04-08-2015, 06:19 AM
|
#11
|
Human being with feelings
Join Date: Apr 2013
Location: France
Posts: 9,238
|
@heda
Thanks 
I was so happy when I discovered that it works ! :P
Usually, devs hide funny easter eggs. Not features
@Argitoth
Just added script renaming in votes !
Last edited by X-Raym; 04-08-2015 at 10:04 AM.
|
|
|
07-21-2015, 11:00 AM
|
#12
|
Mortal
Join Date: Dec 2008
Location: France
Posts: 1,969
|
Quote:
Originally Posted by X-Raym
I just succeed to renamed script command ID by exporting a ReaperKeyMap of a script and modify it in Notepad ++ and re-import it back.
From
PHP Code:
SCR 4 0 "bea7ac3f343a84418e6c34a53f8b05cf" "Custom: X-Raym_Create regions from selected takes and from track name.eel" "X-Raym_Create regions from selected takes and from track name.eel"
to
PHP Code:
SCR 4 0 "X-Raym_CreateRegionFromTakesName" "Custom: X-Raym_Create regions from selected takes and from track name.eel" "X-Raym_Create regions from selected takes and from track name.eel"
Does someone knew we can do this ?
It may be useful for scripts which need to call scripts.
But there is more !
And we also be able to renamed it this way ! The script path is the third string, the second is how it is called in REAPER !
Edit:
An other exemple, with absolute script path (scripts that are not in scripts folder:
PHP Code:
SCR 4 0 "c24bf8e99f81154f9618f5bc071280c8" "Custom: X-Raym_Select only - Unselect all MIDI notes with same pitch right of the mouse.eel" "G:\REAPER Scripts\REAPER-ReaScripts\MIDI Editor\X-Raym_Select only - Unselect all MIDI notes with same pitch right of the mouse.eel"
Also notice that if the script file doesn't have space, it appers like this:
PHP Code:
SCR 4 0 "3b270290632573449806995d35d12e58" "Custom: spk_slider_class.eel" spk_slider_class.eel
Edit:
This way, It may be possible to share my script toolbars ! yeah !
|
I'm sorry, but although this trick looks like it works, I don't think it is a good idea...
It's super-non-future-proof and breaks some SWS features already...
|
|
|
07-21-2015, 11:12 AM
|
#13
|
Human being with feelings
Join Date: Apr 2013
Location: France
Posts: 9,238
|
@jeffos
Hi !
Quote:
breaks some SWS features already...
|
Does it ? I don't have any problem with it so far... =/
I was able to share scripts toolbars from Mac to Win and it works great. I know it is a bit "hacky" but it really seems to work fine.
Quote:
I don't think it is a good idea...
|
The solution may be bad, but it means to satisfy actual needs. Sharing toolsbars or menus linked to scripts is not possible without a way to define a custom ID consistent from one install to another.
What part of the process is wrong ? Having custom ID ? Having custom name ?
Thank you for considering this issue. !
|
|
|
08-14-2015, 03:36 AM
|
#14
|
Human being with feelings
Join Date: Apr 2013
Location: France
Posts: 9,238
|
And what if the command ID and the action name were included in the scritpt itself ?
How nice could it be if
- scripts were loaded as plugins (scan at REAPER start)
- Alls scripts infos (command ID, Name in Action Panel...) were generated in REAPER from a common script header (as I heda and I already use). If no valid header at scan, command ID could be generated as it is already the case.
Here is a example (some fields are just infos, only name and command ID will be used in REAPER):
Code:
/**
* ReaScript Name: Template (match file name without extension and author)
* Description: A template script for REAPER ReaScript.
* Instructions: Here how to use it.
* Author: X-Raym
* Author URl: http://extremraym.com
* Repository: GitHub > X-Raym > EEL Scripts for Cockos REAPER
* Repository URl: https://github.com/X-Raym/REAPER-EEL-Scripts
* File URl: https://github.com/X-Raym/REAPER-EEL-Scripts/scriptName.eel
* Licence: GPL v3
* Forum Thread: Script: Script name
* Forum Thread URl: http://forum.cockos.com/***.html
* REAPER: 4.76
* Extensions: SWS/S&M 2.6.0 (facultative field)
* Command ID: XR_TEMPLATE_SCRIPT
*/
This ill satisfy almost all needs in a very efficient ways, allowing faster-easier scripting sharing, actions management, and toolbars-custom actions with scripts
|
|
|
08-14-2015, 05:10 AM
|
#15
|
Human being with feelings
Join Date: Aug 2006
Location: Berlin
Posts: 11,741
|
Hey, I'm all for that.
Getting an updated Colour Swatch script out to users automatically(if they wish) would be great. No forum thread checking, download, copying to script directory... all not necessary.
Automatic scan of scripts and drag'n'drop of scripts on to Reaper copies them to the script directory would be a good start to ease installation.
|
|
|
08-14-2015, 05:57 AM
|
#16
|
Mortal
Join Date: Dec 2008
Location: France
Posts: 1,969
|
I guess a better command ID could be like a crossplatform version of the script path itself: assuming the script stands in the REAPER/Scripts resource directory, this would make everything portable between users, out of the box (toolbars, etc) -- a hash could still be used otherwise.
Anyway, we hear you... Please, just don't hack command IDs for the time being!
|
|
|
08-14-2015, 07:18 AM
|
#17
|
Human being with feelings
Join Date: Apr 2013
Location: France
Posts: 9,238
|
Thanks Jeffos, I'm sure we will find a convenient solution !
I will put a note on my article on my website to say "WAIT. THIS IS A HACK. DON'T USE IT".
|
|
|
12-14-2015, 06:38 AM
|
#18
|
Human being with feelings
Join Date: Jan 2013
Location: Kiev, Ukraine
Posts: 66
|
Quote:
Originally Posted by Jeffos
I guess a better command ID could be like a crossplatform version of the script path itself: assuming the script stands in the REAPER/Scripts resource directory, this would make everything portable between users, out of the box (toolbars, etc) -- a hash could still be used otherwise.
Anyway, we hear you... Please, just don't hack command IDs for the time being!
|
And it would be very nice - add ReaScript API:
- Load Script by name Script (* .eel * .lua);
- Get ComandID by name Script (* .eel * .lua);
- Add Shortcuts (key and midi and OSC) by ComandID.
|
|
|
Thread Tools |
|
Display Modes |
Linear Mode
|
Posting Rules
|
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
HTML code is Off
|
|
|
All times are GMT -7. The time now is 09:26 PM.
|