[RWP] Extending reaper with Reascript Macros

TheOreoMonster monkeypusher69 at gmail.com
Fri May 24 19:09:32 EDT 2013


already been playing with SWS here. ITs a great tool, if only for reaconsole. Snapshots seem to be more mix snapshots and not  so  much automation snapshots from what i read. ITs basically like keeping multiple versions of the project in one project file instead of having to save multiple version of a mix and then open them all individually.
thanks for the tip on the action list online.
On May 24, 2013, at 4:25 PM, Indigo <33indigo at charter.net> wrote:

> Thanks, TheOreoMonster,
> Sounds easy enough.
> I know how to drag in Wineyes, which is what I use on my actual daw, so that's no problem.
> I should learn how NVDA drags.
> 
> By the way, you can get the action list online, which has some advantages, especially if you save a copy of it in your documents folder; just to spend time looking for useful actions.
> Yes, you can also save a document copy of the actions list from Reaper itself, but it won't have all the SWS and Xenakios actions until you download them.
> 
> Here's a link to the actions list online, and look at the SWS and Xenakios actions.
> Those are already scriptts, which you can include among the native Reaper actions; so you're making a script calling scripts.
> http://wiki.cockos.com/wiki/index.php/Action_List_Reference
> 
> To get the SWS actions, go to:
> http://www.standingwaterstudios.com
> and sign up, download the installer; then install it, then you can download all those SWS actions into Reaper.
> I notice that Snapshots are a big feature in the SWS and Xenakios actions, but don't know if they're used the same way Sonar uses Snapshots.
> I also notice that one of the SWS actions is to run the action marker currently under the cursor.
> There also are actions to wait until the end of the current loop that is playing; or the current measure that's playing, to run an action.
> You have a bunch of auto actions to imbed into the music tracks.
> Thanks,
> Indi
> 
> On 5/24/2013 12:12 PM, Monkey Pusher wrote:
>> in the actions list dialogue box just pass where you can assign a
>> short cut to an action in the action list is Custom Action. click on
>> the new button  just past the  words custom action.. It will  bring up
>> a new dialog. there is a filter edit box you can use to search for
>> action, An edit box to name your custom actions, and tehn two tables
>> of list like the action list dialog has. The first one is where u
>> select the actions  yo want. You drag them into the second dialogue
>> box in the order you want to chaing them in. Once done You save it.
>> check the show in actions list check mark if u want to be able to find
>> it in the normal action list. and click ok. Back in the normal action
>> list, you can find it and assign a short cut key to it like would any
>> other action.
>> 
>> On 5/24/13, Indigo <33indigo at charter.net> wrote:
>>> I've assigned shortcuts to single actions, but don't know how to chain
>>> actions together yet, just haven't got round to trying it.
>>> Many things are simpler than we think when we finally try them.
>>> Thanks for your tip,
>>> Indi
>>> 
>>> On 5/24/2013 7:41 AM, TheOreoMonster wrote:
>>>> for most macro style things you may not even need to write a script. You
>>>> can make custom actions by chaining together a number of different actions
>>>> and assigning them shortcut key
>>>> 
>>>> On May 19, 2013, at 12:25 PM, Indigo <33indigo at charter.net> wrote:
>>>> 
>>>>> Yeh, I intend to write the script I need, to start a recording, then wait
>>>>> a certain number of seconds before executing the next action, then stop
>>>>> recording at the end of measure.
>>>>> I don't like having to time it in seconds to get a 2 or 4 measure
>>>>> recorded loop; since that will break when I change tempo sufficiently.
>>>>> I thought I found something in the ReaScript help about recording 2
>>>>> beats;.
>>>>> If I can find that action again; I could string enough of those together
>>>>> to make 2 or 4 measures.
>>>>> I don't comprehend why there isn't an action for record 1 measure, or why
>>>>> the length of recording in preferences doesn't change to measures and
>>>>> beats when I change the project settings to measures/beats.
>>>>> When you learn that reaper itself is made of thousands of these scripts,
>>>>> you understand why it is amazingly malliable, also why there are huge
>>>>> gaps in its features that need filling.
>>>>> It's for sure not perfect, but it is changeable; ; given enough time and
>>>>> energy.
>>>>> When we learn enough, I'll bet we can counter any breakages that might
>>>>> occur with future versions as they might occur.
>>>>> That help file you get with alt+h, then arrow down to HTML Files Auto
>>>>> Generated, then arrow right to 3 lists, mouse modifiers, ReaScript and
>>>>> actions is nothing short of mind dazzling.
>>>>> 
>>>>> I can just feel the huge power for us in the mouse modifiers.
>>>>> We'll run the mouse with its power with a shortcut.
>>>>> I had that way back in Atari ST days, when I used a simple macro recorder
>>>>> to record the mouse moves and clicks my sighted wife did, then edited out
>>>>> the extra time; leaving only enough time for the computer to carry out
>>>>> the actions.
>>>>> Mouse moves went fast as light.
>>>>> No sighted user could move the mouse that fast.
>>>>> Oh, Jim, I discovered the right click context menu with the actions list;
>>>>> which also has a selection to copy the ID's to clipboard.
>>>>> Once you click on Show ID's, they remain displayed anywhere you go in the
>>>>> actions list.
>>>>> Here's a page from the forums, explaining the difference between scripts,
>>>>> macros, actions and Auto Hot Key scripts to Reaper.
>>>>> This tells me that we're better off working with native actions and
>>>>> scripts that don't get broken easily, as AHK scripts can:
>>>>> Snip:
>>>>> Cockos Confederated Forums > REAPER Forums > JS and ReaScript Discussion
>>>>> Reaper/custom/extension action command IDs and strings
>>>>> 12-02-2009, 06:51 AM
>>>>>   #1
>>>>> schwa
>>>>> Administrator
>>>>> : 7,276
>>>>> Default Reaper/custom/extension action command IDs and strings
>>>>> 
>>>>> This will be of interest only to extension developers, ReaScript authors,
>>>>> and AutoHotKey users.
>>>>> 
>>>>> For context:
>>>>> 
>>>>> Reaper native actions are the set of actions that appear in the action
>>>>> dialog (press the ? key) for all users.
>>>>> 
>>>>> Reaper custom actions are action lists (essentially macros) that are
>>>>> created by users, and appear at the top of the action list as "Custom:
>>>>> actionname".
>>>>> 
>>>>> ReaScript allows users to create scripts in Python that do many of the
>>>>> same things that extensions can do. ReaScripts can be loaded as actions
>>>>> and appear in the action dialog as "Custom: scriptname".
>>>>> 
>>>>> Reaper extensions are compiled add-ins created by developers (such as the
>>>>> redoubtable SWS and Xenakios) to add functionality to Reaper. Regular
>>>>> users download and install the extensions, and the extended functions
>>>>> then appear in the action dialog as (for example) "SWS: actionname".
>>>>> 
>>>>> AutoHotKey is a 3rd-party application, nothing to do with Reaper, that
>>>>> can be used to create macros that send commands directly to windows on
>>>>> your screen.
>>>>> 
>>>>> Every native, custom, and extension action in Reaper has a command ID.
>>>>> This is a unique number that identifies the action. ReaScript users can
>>>>> invoke any action via functions like RPR_Main_OnCommand and
>>>>> RPR_MIDIEditor_OnCommand. SWS extension users can use the command IDs in
>>>>> SWS marker actions. AHK users can invoke any action by sending the
>>>>> command ID to the Reaper window.
>>>>> 
>>>>> No other users will ever care about command IDs. If you don't fit any of
>>>>> the descriptions in the previous paragraph (or if you don't understand
>>>>> any of this) then you don't need to worry about it and can happily go
>>>>> back to recording whatever awesome music you were just about to record.
>>>>> 
>>>>> You can see command IDs for each action by scrolling to the right in the
>>>>> action dialog. Only Reaper native actions have command ID numbers that
>>>>> never change. These are the only command ID numbers that are completely
>>>>> safe to use in any of these contexts.
>>>>> 
>>>>> Custom, ReaScript, and extension actions are assigned command ID numbers
>>>>> when Reaper starts up. This is because Reaper doesn't know until it loads
>>>>> how many non-native actions will be added. Therefore, these command ID
>>>>> numbers can change from run to run. For example if you add or delete a
>>>>> custom action, ReaScript, or extension dll, or if the extension itself is
>>>>> updated, then any or all of the non-native command ID numbers can change.
>>>>> The ID numbers themselves can't be relied on unless the set of non-native
>>>>> commands never changes.
>>>>> 
>>>>> Non-native actions are stored with a command ID string that Reaper uses
>>>>> at load time to assign unique command ID numbers. The command ID string
>>>>> never changes and can be relied on.
>>>>> 
>>>>> ReaScript authors should use RPR_NamedCommandLookup to convert non-native
>>>>> command ID strings to numbers within the script. Otherwise, the script
>>>>> isn't guaranteed to always work.
>>>>> 
>>>>> Unfortunately AHK users don't have a choice, AHK doesn't have anything to
>>>>> do with Reaper so it doesn't have any way to look up command ID numbers.
>>>>> Whenever non-native actions change, AHK scripts that use non-native
>>>>> actions may break and will need to be updated.
>>>>> End Snip.
>>>>> 
>>>>> 
>>>>> 
>>>>> 
>>>>> On 5/18/2013 10:43 PM, Jim Snowbarger wrote:
>>>>>> I think the first step on this is to install Python on your machine,
>>>>>> and
>>>>>> learn to write the simplest possible Python script.  That's about where
>>>>>> I am right now.  Your python scripts can be as complicated as you can
>>>>>> imagine, but they dont' have to be.  You won't need to be a Python
>>>>>> expert to string actions together.  It looks like that will be quite
>>>>>> simple.  About how to tell Reaper what hot key to connect to the
>>>>>> script,  Haven't gotten there yet.  But, this link Indigo provided is
>>>>>> pretty instructive.  So, it's all there.
>>>>>> 
>>>>>> time,  all it takes is time.  Anybody got enough of it?
>>>>>> 
>>>>>> ----- Original Message ----- From: "Nadine Jahns"
>>>>>> <beats4thenation at gmail.com>
>>>>>> To: "Reapers Without Peepers" <rwp at reaaccess.com>
>>>>>> Sent: Friday, May 17, 2013 2:49 AM
>>>>>> Subject: Re: [RWP] Extending reaper with Reascript Macros
>>>>>> 
>>>>>> 
>>>>>>> Cool! I really have to try this out next week, when I'm back home!
>>>>>>> Yesterday i looked shortly in the reascript documentation and totally
>>>>>>> got lost :)!
>>>>>>> 
>>>>>>> Am 17.05.2013 um 04:43 schrieb "Jim Snowbarger"
>>>>>>> <Snowman at SnowmanRadio.com>:
>>>>>>> 
>>>>>>>> Well, there you go.  Once you can bind a script to a hot key, your
>>>>>>>> home free.  All  you need to do to string actions together is to have
>>>>>>>> multiple lines, each containing this api call, with the appropriate
>>>>>>>> action number.
>>>>>>>> 
>>>>>>>> It's worth mentioning, in case anybody else other than me doesn't
>>>>>>>> already know, to get the action numbers to show, you don't have to
>>>>>>>> scroll right, as described.  Just right click on the action, down
>>>>>>>> arrow to show action ID'S, and press enter.
>>>>>>>> 
>>>>>>>> Time to learn to write a simple REAScript, and bind it to a hot key.
>>>>>>>> 
>>>>>>>> 
>>>>>>>> ----- Original Message ----- From: "Indigo" <33indigo at charter.net>
>>>>>>>> To: "Reapers Without Peepers" <rwp at reaaccess.com>
>>>>>>>> Sent: Thursday, May 16, 2013 12:06 PM
>>>>>>>> Subject: [RWP] Extending reaper with Reascript Macros
>>>>>>>> 
>>>>>>>> 
>>>>>>>>> Python programming language and ReaScript, which uses Python, can
>>>>>>>>> get complex, but I understand this to say that I can call any action
>>>>>>>>> with this API script; and; I'm assuming that I can list more than 1
>>>>>>>>> action, though this isn't stated here.
>>>>>>>>> I'm going to buy the e-book: Reaper 4 Unleashed; about $10 USD,
>>>>>>>>> which claims to get you going with custom actions, keymaps,
>>>>>>>>> etcetera.
>>>>>>>>> I'm already finding already written custom actions in Reaper's
>>>>>>>>> resources link, also in the Cockos forums.
>>>>>>>>> Here's the quote from the Wiki on ReaScript:
>>>>>>>>> Snip:
>>>>>>>>> top  Calling REAPER Actions
>>>>>>>>> 
>>>>>>>>> You can call any REAPER action from ReaScript by using the API
>>>>>>>>> function
>>>>>>>>> 
>>>>>>>>> RPR_Main_OnCommand(actionnumber, 0)
>>>>>>>>> 
>>>>>>>>> Find the action number for a given action by opening the Actions
>>>>>>>>> list, and scrolling the window right to reveal an extra column. For
>>>>>>>>> example, from ReaScript you would call the REAPER action "Item:
>>>>>>>>> Split item under mouse cursor" like this:
>>>>>>>>> 
>>>>>>>>> RPR_Main_OnCommand(40746, 0)
>>>>>>>>> 
>>>>>>>>> If you use ReaScript as an advanced macro language, this is the only
>>>>>>>>> API function you need to know.
>>>>>>>>> End Snip.
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> http://www.reaper.fm/sdk/reascript/reascript.php
>>>>>>>>> 
>>>>>>>>> _______________________________________________
>>>>>>>>> RWP mailing list
>>>>>>>>> RWP at reaaccess.com
>>>>>>>>> http://reaaccess.com/mailman/listinfo/rwp_reaaccess.com
>>>>>>>> 
>>>>>>>> 
>>>>>>>> 
>>>>>>>> _______________________________________________
>>>>>>>> RWP mailing list
>>>>>>>> RWP at reaaccess.com
>>>>>>>> http://reaaccess.com/mailman/listinfo/rwp_reaaccess.com
>>>>>>> 
>>>>>>> 
>>>>>>> _______________________________________________
>>>>>>> RWP mailing list
>>>>>>> RWP at reaaccess.com
>>>>>>> http://reaaccess.com/mailman/listinfo/rwp_reaaccess.com
>>>>>>> 
>>>>>> 
>>>>>> 
>>>>>> 
>>>>>> _______________________________________________
>>>>>> RWP mailing list
>>>>>> RWP at reaaccess.com
>>>>>> http://reaaccess.com/mailman/listinfo/rwp_reaaccess.com
>>>>> 
>>>>> _______________________________________________
>>>>> RWP mailing list
>>>>> RWP at reaaccess.com
>>>>> http://reaaccess.com/mailman/listinfo/rwp_reaaccess.com
>>>> 
>>>> 
>>>> _______________________________________________
>>>> RWP mailing list
>>>> RWP at reaaccess.com
>>>> http://reaaccess.com/mailman/listinfo/rwp_reaaccess.com
>>>> 
>>> 
>>> _______________________________________________
>>> RWP mailing list
>>> RWP at reaaccess.com
>>> http://reaaccess.com/mailman/listinfo/rwp_reaaccess.com
>>> 
>> 
>> _______________________________________________
>> RWP mailing list
>> RWP at reaaccess.com
>> http://reaaccess.com/mailman/listinfo/rwp_reaaccess.com
>> 
> 
> _______________________________________________
> RWP mailing list
> RWP at reaaccess.com
> http://reaaccess.com/mailman/listinfo/rwp_reaaccess.com





More information about the Rwp mailing list