Quick Sign In:  

Forum: General Discussion

Topic: Script School - Page: 20.2
NicotuxHome userMember since 2014
@Adion early versions up to 8.2 were far less limited (don't remember exactly, but I annotated later as "since one of the V8.2")

The list (which is totally obsoleted now) was finalized with build b42?? (was about to try to script columns in browser) and sporadically updated, specially with additions such as order(6525), singer writable, Title (remix) and other alias found (this are tries and error results, no official list may miss a lot)

but yes, you are totally right, some fields always been specific such as "From" "Mode" "Pos" so that not "all columns" but "all common columns" or "all non context specific columns"
it was an abusive term

This is the reason why the list was started
long way to create:
in every contexts choose selectable columns one by one and tag it as usable
in every contexts try every discovered columns one by one and mark those that also responding
then for every column try to remove spaces and shorten if possible and swap "Has" and "is" to detect shor aliases in the style of tooltips in translation file, not forgetting entries found in examples and skins

tested with get_browsed_song and browser_sort
7 * 121 * 2 = 1694 cells
with almost as many fails attempts

yes it took so me time
 

Posted Fri 29 Oct 21 @ 5:10 pm
mg_1978PRO InfinityMember since 2008
i have mapped: sampler_position 1 and param_invert & param_cast ‘percentage’
but can i convert this % in time remain about sample 1??
 

Posted Sun 31 Oct 21 @ 12:41 pm
NicotuxHome userMember since 2014
not really,
what about loop samples ? pitched samples ?

but with some hack retrieving needed info from various places :
browser_window sampler & browser_scroll top & browser_scroll 2 & browser_scroll -1 & param_multiply 'get_browsed_song length ms' 'sampler_position 2 & param_invert & param_mod 1' & param_cast

will return remain of playing sample in slot #2 or 0 if not playing
(took #2 in a way to see the 2 places where slot is needed

for slot #1 only a shorter script can apply - top being slot #1
browser_window sampler & browser_scroll top & param_multiply 'get_browsed_song length ms' 'sampler_position 1 & param_invert & param_mod 1' & param_cast & debug & get_browsed_song bpm & param_cast & debug & get_bpm & param_cast & debug


would need to take care about bpm too with pitched samples, but don't know how to get this info
 

Posted Sun 31 Oct 21 @ 6:21 pm
NicotuxHome userMember since 2014
trying to set color dynamically using 3 variables myred mygreen myblue (affected to a slider)

debug script:

set zero `get_text '0.0'` & set mycompositecolor 0 & param_add "get_text ' `get_var myred & param_equal 0 ? get_var zero` `get_var mygreen & param_equal 0 ? get_var zero` `get_var myblue & param_equal 0 ? get_var zero``' " "get_text '`color' " & param_cast text & debug & debug text & set mycompositecolor & param_cast & debug & debug set & & param_cast & get_text `get_var mycompositecolor` & param_cast text & color & debug & debug color

what is strange :
this is working correctly once only, and every time the script is modified
all other calls restore the first set of value ( does not apply variables anymore but reset color to initial one)
what is more strange:
set multiple buttons all will work but all buttons will have their own first value set as default, every button setting their own default color

in every case working or not, there is something to investigate with these working mode
 

Posted Mon 01 Nov 21 @ 6:05 am
AdionPRO InfinityCTOMember since 2006
'set' caches the action it uses, it is not really expecting an external parameter as action that is changing
 

Posted Mon 01 Nov 21 @ 7:00 am
NicotuxHome userMember since 2014
OK, can get very strange things with that ;) , specially some int ==> HEX and color ==> int

for now the old " custom_button_name " hack can workaround the set being one shot
so that color can be set to things like that " get_text `custom_button_name 3 & param_cast text 9` & color "
 

Posted Mon 01 Nov 21 @ 12:44 pm
Some time ago now, I requested that the sampler have assignable trigger modes to either individual pads or pages, rather than being a global setting - so that (for example) a page of video clips can be in on/off mode, but a page of cowbell samples can be in stutter mode.

Having to change mode manually when switching between different types of bank is tedious.

As it's not been implemented, I was wondering if such a thing could be scripted?

So the script would check to see which bank is loaded and change the trigger mode to suit.
 

Posted Mon 01 Nov 21 @ 6:33 pm
NicotuxHome userMember since 2014
I do not see any elegant way

problem is bank --> mode association

if for example it is a tag in first sample (user field or alike) detection can be done using browsed_song and mode set using sample_mode
would needs a rsi lookin for bank change or custom skin with dedicated "is_using" sampler script for instance in some multibutton

badly this solution changes browser window and focus to sampler first sample
maybe assigning a color to a mode could be a solution ?
 

Posted Mon 01 Nov 21 @ 7:13 pm
mg_1978PRO InfinityMember since 2008
hi! i have malped a button: get_browsed_folder & param_equal ‘Recordings’ ? browser_window ‘songs’ & browsed_title ‘Sequencer8’ ? get_text ‘full’ : get_text ‘Ready’
but with this script i have text ‘full’ only if i have in browser_window ‘songs’ focus on ‘Sequencer8’ track, i would that check in Folder ‘Recordings’ there is a ‘Sequencer8’ track or sample, and if there is…..get_text ‘full’, indipendently where is focus….can you help me?
 

Posted Wed 03 Nov 21 @ 7:23 am
NicotuxHome userMember since 2014
Independent on focus : NO
with focus out of Recordings and Sequencer8 : Yes, with the help of a filter but focus will move too

try a filter folder in the style of
File Path ends with \Sampler\Recordings\ and (Title is Sequencer8 or File Name starts with Sequencer8)

and name it " Sequencer8 "

then in script
browser_gotofolder 'filters://Sequencer8.vdjfolder' & repeat_start rswt 100ms -1 & get_text "`get_status`" & param_contains 'Searching' ? : repeat_stop rswt & file_count & param_cast & debug & param_equal 0 ? goto_last_folder & get_text Ready : goto_last_folder & get_text Full
 

Posted Wed 03 Nov 21 @ 9:32 am
mg_1978PRO InfinityMember since 2008
Sorry i didn’t quite understand how this script work :( but it could be easer if in browser_folder ‘Recordings’ if i have 8 file with title contains ‘Sequencer’ take me a variable = 1 (and with this variable = 1 i write full) or i have variable = 0 (and with variable = 0 i write Ready)
 

Posted Wed 03 Nov 21 @ 5:26 pm
NicotuxHome userMember since 2014
Yes It's a little bit complicated:

1) You need to create a filterfolder which displays only files with title "Sequencer8" stored in "Sampler\Recordings\" folder and name it Sequencer8 :

// only in Recordings with title being Sequencer8
File Path ends with \Sampler\Recordings\ and Title is Sequencer8

- previous filter was more complex taking care of filename too -

2) then the script :
It will call the peviously created filterfolder and see whenever there is a file or not :

// change focus to result of filter
browser_gotofolder 'filters://Sequencer8.vdjfolder' &
// wait for filter ends its search action
repeat_start rswt 100ms -1 & get_text "`get_status`" & param_contains 'Searching' ? : repeat_stop rswt &
// get the number of files
file_count & param_cast &
// debug can be remove, just to see if everything went ok
debug &
// depending on result
param_equal 0
// restore initial focus and do action when READY
? goto_last_folder & ACTIONS WHEN READY
// restore initial focus and do action when FULL
: goto_last_folder & ACTIONS WHEN FULL
 

Posted Wed 03 Nov 21 @ 6:17 pm
mg_1978PRO InfinityMember since 2008
now i have understand and it work, thanks!
what is wrong in this script:
button: get_browsed_folder & param_contains ‘Recordings’ ? browser_scroll ‘top’ & repeat_start ‘scorri’ 100ms & browser_scroll +1 & browser_scroll ‘bottom’ ? repeat_stop ‘scorri’ : nothing : browser_gotofolder ‘Sampler\Recordings’ & browser_window ‘songs’ & browser_scroll ‘top’
doesn’t work correctly, i would that if i’m already in folder ‘Recordings’, focus scroll down all files; i’m not in folder ‘Recordings’….focus goes to folder ‘Recordings’ and scroll down all files in this folder, can you help me correct script? thanks a lot

 

Posted Thu 04 Nov 21 @ 7:20 am
NicotuxHome userMember since 2014
In fact you just wanna iterate all files in Recordings whatever the focus can be

(sort of scan the folder)

1) the folder name is internal 'Sampler://Recordings'
2) browsing functions are not instant, you may want them to end before you can use folder content
3) the number of iterations is well known, bottom-top = file_count

focus the content can be either browser_window ‘songs’ or browser_enter

repeat_stop scorri & browser_gotofolder 'sampler://recordings' & repeat_start scorri 100ms -1 & get_text "`get_status`" & param_contains 'Browsing' ? : repeat_stop scorri & browser_enter & browser_scroll top & file_count & param_cast & repeat_start scorri 100ms & browser_scroll +1
I added a security loop stop at start as long list can take time and multiple press would do strange things restarting the same loop multiple time
 

Posted Thu 04 Nov 21 @ 10:34 am
mg_1978PRO InfinityMember since 2008
yeah work! but there isn’t a ‘nothing’ after ‘Browsing’ ?
right?
 

Posted Thu 04 Nov 21 @ 3:47 pm
NicotuxHome userMember since 2014
yes, nothing or "nothing" keyword both does nothing, equivalent in 99% of the situations

side effects can appear using the keyword in rare case or may be needed in some other
because nothing keyword does not actually do nothing it alters the status of parameter
 

Posted Thu 04 Nov 21 @ 4:23 pm
mg_1978PRO InfinityMember since 2008
in this script

repeat_stop scorri & browser_gotofolder 'sampler://recordings' & repeat_start scorri 100ms -1 & get_text "`get_status`" & param_contains 'Browsing' ? : repeat_stop scorri & browser_enter & browser_scroll top & file_count & param_cast & repeat_start scorri 100ms & browser_scroll +1

where i can add a var ‘sequencerfull’ = 1 if in browser_window ‘songs’ (files scroll) there is a file with title ‘Sequencer8’???
i have tryed that get_browsed_song and param_equal ‘Sequencer8’ is correct script to test file name but i don’t understand where i can add this script fod set var ‘Sequencer8’ = 1
can you help me?
thanks!!
 

Posted Thu 04 Nov 21 @ 6:38 pm
NicotuxHome userMember since 2014
repeat_stop scorri & browser_gotofolder 'sampler://recordings' & repeat_start scorri 100ms -1 & get_text "`get_status`" & param_contains 'Browsing' ? : repeat_stop scorri & browser_enter & browser_scroll top & set sequencerfull 0 & file_count & param_cast & repeat_start scorri 100ms & set sequencerfull `get_browsed_song title & param_equal Sequencer8 ? true : get_var sequencerfull` & browser_scroll +1

better use global var $sequencerfull though in case deck change
 

Posted Thu 04 Nov 21 @ 6:56 pm
mg_1978PRO InfinityMember since 2008
you’re the top!! it’s work! is there a script to make a button to change the ‘filename’ about a sampler in browser_window ‘songs’ (samples that are in ‘Sampler://Recordings’ folder)?? because browser_songs ‘title’ ‘newname’ changes only the sample title, but not the filename..and browsed_file_rename ‘newname’ doesn’t change directly ‘filename’ but open a ‘change name window’…i would change filename directly with a controller button…can you help me? thanks!!

moderator: Please don't quote entire posts when that post is directly above yours, It just makes a thread a chore to read.
 

Posted Fri 05 Nov 21 @ 7:41 am
NicotuxHome userMember since 2014
No there is no way to do anything with filenames
VDJ does not allow direct folder or file manipulation by script. (create, delete, rename can't be done by script)
Even recording (only place you can specify a recordFile) need accept by button to be pressed
 

Posted Fri 05 Nov 21 @ 1:41 pm
44%