Question re possibility of keyswitch entering script
I'm not sure where best to post this, so please feel free to move it if here's inappropriate.
Perhaps scripting offers a way to improve working with keyswitches in the MIDI editor. (For those not working with VSTi's, a keyswitch is a note which instructs an instrument to change which articulation it's using, e.g. MIDI note C0 might select 'Legato', C1 'Staccato', etc.)
I'm interested to know if the following function would be possible through Lua scripting:
In the MIDI editor...
User selects a note and executes the script.
A menu appears containing a list of articulations (legato, sustain, con sord, whatever).
User selects an articulation.
An appropriate note is inserted a few ticks before the selected note.
The script would need to be able to load different lists of keyswitch definitions as required by the user, depending on what VSTi is being worked with.
The number of ticks would need to be user definable, possibly loaded with the list of keyswitch definitions since it would usually only change per VSTi.
The length of the inserted note would need to be user definable in the same way, and independent of Reaper's current note insertion settings.
I imagine the keyswitch definition lists would be plain text files of note/articulation pairs, much like the current note name maps. Ideally, it would actually be a note name map with the ticks and note length parameters included, presumably appearing as a comment to Reaper.
If this is possible, I'd be very tempted to learn Lua scripting just to implement it.
It'd be a serious workflow improvement when working with many VSTi's: not having to try to remember all the damn keyswitches, not having to constantly scroll up and down to enter them. Paired with an appropriate note name map I could work with keyswitches by articulation name and not be forever translating back to notes. It wouldn't be Cubase's Expression Maps, but it would be a significant improvement on how I'm working now.
So, is something along these lines possible? And if so, what's a good starting point for learning Lua scripting?
|