If you're talking about a specific command, e.g. "c red" to be bound to Alt-R, no that's not possible at the moment. I would welcome suggestions how that could be implemented -- maybe a window "Open Custom ReaConsole Actions", with a list of say 10 commands? Those commands would correspond to 10 new actions "SWS: Run custom ReaConsole action 1..10" Is this kinda what you're looking for?

Otherwise, the action "SWS: Open console and copy keystroke" may be of use. For example, bind it to I; when you press the I key ReaConsole will open with the letter i already copied in.

If you're talking about a specific command, e.g. "c red" to be bound to Alt-R, no that's not possible at the moment. I would welcome suggestions how that could be implemented -- maybe a window "Open Custom ReaConsole Actions", with a list of say 10 commands? Those commands would correspond to 10 new actions "SWS: Run custom ReaConsole action 1..10" Is this kinda what you're looking for?

Otherwise, the action "SWS: Open console and copy keystroke" may be of use. For example, bind it to I; when you press the I key ReaConsole will open with the letter i already copied in.

With all the actions available, and so few keys on the keyboard, it would be awesome to make custom shortcuts with reaconsole (I like the 10 actions idea).

If you're talking about a specific command, e.g. "c red" to be bound to Alt-R, no that's not possible at the moment. I would welcome suggestions how that could be implemented -- maybe a window "Open Custom ReaConsole Actions", with a list of say 10 commands? Those commands would correspond to 10 new actions "SWS: Run custom ReaConsole action 1..10" Is this kinda what you're looking for?

Otherwise, the action "SWS: Open console and copy keystroke" may be of use. For example, bind it to I; when you press the I key ReaConsole will open with the letter i already copied in.

Thanks for the quick word back. Basically what I'm looking to do is to have ReaGate control track selection. So I was hoping to have a MIDI command trigger reaconsole comand "+s1" and the closing the midi gate trigger "-s1".

It would probably be easier to program this separately instead of coming up with a way to do preset reaconsole commands (I'd need a lot of presets). My programming skills are next to nonexistent, so I couldn't offer up any suggestions to make this work. There isn't any kind of Reaper Extension Programming for Mental Patients in Near Vegatative States tutorial, is there?

I know we already have hotkeys and the like for Reaper commands but is it possible to have a second keyboard for our workstation that is SPECIFICALLY divergent from the normal keyboard functions which would be mapped for only Commands or for example ReaConsole?

You know like a weird looking cool assed keyboard that could be mapped away from Windows usage as a regular keyboard, meaning a little software utility could assign it to only work with a certain program that you designate like Reaper. I know windows usually makes it fair game for all programs..hmmm. Is there such a thing as keyboard masking? Meaning you can assign a different command set to a certain input device so that it would not be the typical ABCD etc thing, this way it wouldn't conflict with your standard keyboard.

Then you could map all these cool commands to the second keyboard, so it becomes a control surface. I hope you follow me. We already have people generating stickers to make Reaper keyboards, but it would be cool to have our regular keyboard retain basic hotkey commands among other functions like CTRL ALT DEL and then the dedicated Reaper keyboard which would have whatever extensions assigned wherever you want co existing with the basic windows keyboard.

A gentleman coded a prog called Right Keyboard which allows you to switch keyboards when they are both connected and the program gets updated in realtime!

So once you hit blah blah on the second keyboard in theory Reaper would be alerted to the different language of the second input device and therefore recognize the key which is coming from that certain device which is assigned to the ReaConsole command.

So you can have a completely dedicated Reaper keyboard that would completely coexist with the windows layout on your first keyboard. It does add another keyboard to your desktop or studio but how dope is that? You don't lose your regular keyboard and instead you gain a much more functional keyboard that in many ways completely changes the landscape for control surfaces. You in essence can avoid midi control messages and CPU cycles by simply smacking the old keys on your keyboard!

darjama, I've added a feature to do my plugin to do exactly this. Redownload and install from the link below. There's no user interface (yet), but I thought it'd be useful nonetheless.

How it works:
Add a file called "reaconsole_customcommands.txt" into the same directory as your reaper.ini. (Typically C:\Documents and Settings\UserName\Application Data\REAPER) In this file, place commands, one per line, for everything you want to bind to a key. Restart REAPER, and you will have new actions in your action list for each command in the file. You can then bind these to keys using the action window as usual. Beware your bindings will get screwed up if you rearrange/add/delete/etc the commands in the file, as the bindings are based on line # in the file.

Example:
reaconsole_customcommands.txt has one line with the text "+s1"
Restart REAPER, look for new action "SWS: Run console command: +s1"
Bind/run and away you go!

this is just what i've been requiring to automate hiding some tracks (to then set a screen set) and also to select whichever track on my CS i move (as it then shows its fx chain...)
i think i can now macro up the fader or a solo button to adjust track 01 and also 'select' track 01..

Thank you very much sws. I know this is supposed to work with only one word as we talked on IRC but is there a way you could improve it somehow so we can add several words at the same time? I mean, let's say I have recording template I load everytime I start a session and all tracks have labels to identify leads/bv/chorus/etc. (that's why I asked you for this in the beginning) so I just run the console with b to add singer/performer name to them but sometimes their names are something like "David J." or "Michael Smith". I could run the console twice adding the second word first and then again to add the first word but maybe you can make it happen easier. Thanks again Tim.

oh! another thing, how can i open up the console with "b" just like those two actions for "n" and "s" do? I know I can do it binding "b" to the action "open console and copy keystroke" but maybe you can give me a trick to achieve this without the binding.

ReaConsole is a really exciting tool. In the past I've accidentally pressed 'c' a number of times, so I've seen the console a lot, but would always escape out of it and never really looked into it until now. Just brilliant.

I was looking for a way to toggle certain tracks to solo based on the track name, rather than its number, which is subject to change. I was about to post about this when I thought hmmm maybe that's a job for ReaConsole. Tada! Just fantastic!

Question. Would it be possible for console commands to be registered in the undo history?

Also, not a big deal, but I thought I'd bring this to your attention....

When I run the action 'SWS: Edit console custom commands (restart needed after save)', it opens reaconsole_customcommands.txt, but it also triggers an application error from Reaper: 'The instruction at "0x00000002" referenced memory at "0x00000002". The memory could not be "read".' With the only option being to terminate the program.

So far it's happened every time I've tried. I've checked to see if it mattered that the file was already open (which it had been the first few tries) but that doesn't seem to be it.

A gentleman coded a prog called Right Keyboard which allows you to switch keyboards when they are both connected and the program gets updated in realtime!

So once you hit blah blah on the second keyboard in theory Reaper would be alerted to the different language of the second input device and therefore recognize the key which is coming from that certain device which is assigned to the ReaConsole command.

So you can have a completely dedicated Reaper keyboard that would completely coexist with the windows layout on your first keyboard. It does add another keyboard to your desktop or studio but how dope is that? You don't lose your regular keyboard and instead you gain a much more functional keyboard that in many ways completely changes the landscape for control surfaces. You in essence can avoid midi control messages and CPU cycles by simply smacking the old keys on your keyboard!

Dammit I wish I had a second keyboard right now!

A two-keyboard system should be easy to set up, with one as your regular qwerty kb, and the other that was a dedicated control surface for Reaper, or any application, really.

Just plug in two keyboards. They can both be fully operational with no conflict, as far as i can tell.

As long as one of the keyboards is itself programmable, there'd be no need to explicitly switch between the two keyboards, or alert Reaper to the second input device. Reaper wouldn't see this setup as unusual or need to be aware of it in any way. It's all in the keyboard -- the "switching" is all virtual and is done by the keyboard's driver.

Each Sidewinder has a driver that intercepts and controls its output. If one if its keys (or buttons on the mouse) has a macro assigned to it, the content of that macro is sent to whatever application has the focus. Keys that don't have macros assigned to them function normally. This keyboard would be the control surface.

The primary keyboard, which is not controlled by the Sidewinder driver, works as usual.

The two keyboards aren't aware of each other, and Reaper has no idea what's going on.

Because AHK isn't able (as far as I know) to tell the difference between the keyboard streams, it's not possible to create a bunch of AHK macros for one keyboard only.

That's why the keyboard has to have self-contained programmability.

But as long as the keyboard is programmable, there's no reason you couldn't use it as a dedicated macro server to any application you wanna control.

I don't know it this would make things more difficult for you re: your file management... if so, it's not too important... but when you issue new updates to your extensions, could you put either a version number or even just a timestamp in the downloadable's name (not the dll that actually gets dropped), just to make it easier to know at a glance if there's a new one?

Can you add a way to comment out lines in reaconsole_customcommands.txt?
Like ";" or "//" at the beginning of a line?

Although it's a different area, wouldn't it also be nice if the Reaper team added the same thing in the "Edit Custom Action" dialog. So we could just comment out a line we might need latter when we're working on making a new custom action rather than having to delete it.

I thought that was possible? I'm sure I've done it with using ";" but if not that would be cool too! will test it now though..

You have opened up a "can of worms" Tim by making such a great extension! we will always want more!

(on a sidenote Tim, any luck reproducing the sws zooming slowdown? I have tried many things and there seems to be no connection to anything so far, could be my multi monitor set-up with 4 monitors but the standard commands work. will keep at it)

Sending a donation tomorrow as I'm also at the end of my trial with Reaper and will be buying a license tomorrow! Reaper has won the DAW testing I have been doing hands down!!

Hi SWS,
I just downloaded your latest extension from your homepage and according to my antivirus it contains a file Dropper.Dldr.Agent, which is a Trojan. I quarantined and deleted your file,then just to make sure I downloaded again with the same result. Just thought I would let you know.

Hi SWS,
I just downloaded your latest extension from your homepage and according to my antivirus it contains a file Dropper.Dldr.Agent, which is a Trojan. I quarantined and deleted your file,then just to make sure I downloaded again with the same result. Just thought I would let you know.

i'm interested in finding a way to type in values for the item properties
window, volume and pan values, to start. is there a way to use reaconsole
to do this? what i've seen so far seems to only apply to tracks.