Need help creating a Project Logic Editor Script

Hello fellow Cubase users,

I am working on a pretty big session. There is about 800 tracks currently in use. My computer is starting to sweat a little, and i’d like to find a way to automatically deactivate some tracks while not working on them.

The context: this is a video game score, and all of the tracks are in one session. It makes it easier mixing at a later stage as i use all of the same strings, brass, etc… at the same volume.
However, i am using quite a lot of synths and loops/audio tracks. And while i am working on one specific track, i do not need the other unused tracks to be activated. While i can deactivate them manually, i would like to make it automatic.

The idea: the PLE script would be something like either:

-Deactivate all other tracks outside of the cycle range (or selected marker, i use markers for each tracks, see screenshot)

-Deactivate all hidden tracks. As i ask Cubase to show me only the tracks that are in my cycle range. So i only get to see the ones currently using, and not all 800.

For more detail, please check my screenshot. I only want the tracks in the selected marker to be activated, and all the rest deactivated.

But i cannot get the project logical editor to do what i need ! Any clue ?



Unfortunately track activation/deactivation is not part of Project Logical Editor.


There is just one little feature you will need to be careful about.
There will be some tracks you do not want to ever be disabled.
For those tracks, simply add “[AE]” to the end of the track name like this


That way, the track won’t be disabled even when it is hidden.

Macros first


So set your key command to

Disable Unused At Cursor” to make all tracks with data at the cursor enabled, and all other tracks except the ones with “[AE]” Disabled.

Likewise for “Disable Unused Between Locators”.

Or, as you can see, you can make it a different key command for “Disable Hidden”, and then decide at that time… what you want to hide and not hide, then hit the key command to disable everything that is hidden, and enable everything that isn’t.

Now PLEs

See my answer below.

It sure would be a lot easier if we could just write this stuff in Lua or something. I keep trying to explain this, but I’m better at making the scripts then explaining them. And better at knowing why you need something (Like AE in the script) than explaining why you need something you didn’t think you needed.

It would be really nice if we could write macros and PLE’s etc. All in Lua or something, and also specify in the Lua what generic remote calls what method on a class.

It would save a lot of time.

It would also be nice to be able to put attributes on tracks or regions without having to alter the name. As above, it is all about tagging in the track name. That could just be an attribute of the track that didn’t have to be shown.

Or if you didn’t have to sometimes have tracks unhidden for operations to take effect, as in this case.

I don’t feel like sharing my composition template yet, but you can see some of the hurdles and pain in my grooving/ pop song writing template over here. The first zip is the manual.

I’ve wished for this for years. Even if they just add a PLE function to search by contents of the notepad. Then you could stick all your attributes in there and keep the track name for, well, the track name!

Only workaround that I have done is create lots of extra track colours and then I can use these in the PLE. In other words the wind track colour looks like “green” but in fact there’s a “solo woodwind green” and a “wind ensemble green” etc…

1 Like

I did that, and then got so confused, and if you switch projects or machines and the colours are gone and you don’t notice and save and… oops!

Disable Hidden or (4.9 KB)
Here, don’t go editing the PLEs just copy the included directory to your PLE directory, and the macros to your key command.

1 Like

Thanks. This is a good idea, however, not very practical in my case. That would mean renaming the tracks i am using by adding [AE]. But then, if i need to switch to another track on my template i would have to remove the [AE] letters, and then add them to the other track i’d like to work on. Kind of beats the purpose of the PLE, which is supposed to save time. But nontheless, the idea is good.

I agree with what you said about LUA, this is a good idea. Or even pushing the PLE a little more, it is pretty outdated today… There is no much to be added.


I think you misunderstood. The [AE] is only for tracks you never want to get disabled even when they are hidden.

“Disable Hidden” will disable all hidden tracks except those that have [AE] (Always Enabled).
If you don’t have any tracks you want to guard against being disabled when you run the macro, then you don’t need to use the [AE]. tag at all.

What is more “Disable Hidden” will enable all tracks that are not hidden. Even if they do not have the [AE] tag!

So it
(1) Takes all tracks that are showing, and makes sure they are enabled.
(2) Takes all the tracks that are hidden and makes sure they are disabled.
(3) Never disables tacks that have “[AE]” in the name.


Got it now. Thanks for your help ! It does give me a solution, but geez, what a workaround for something so simple ! Steinberg really needs to update the PLE with new functions ! :slight_smile:

1 Like


I’m glad that worked. It’s kind of my standard to never put [*] in a track name so that tags can always be put there.

In software * means “any string of characters” so [-*] is a temporary tag. So don’t name anything with the square braces, square brackets or whatever you call them. In this case [AE] is “Always Enabled” and [-D] is “disable in the next PLE and remove the tag”. So don’t name anything with [-D] either.

BTW I also use ~* for permanent track identification. And that’s a whole other topic.

And yea, in my opinion, all of this should be available as a standard attribute feature that isn’t in the track name. And this one feature is so obvious for composers and score writers, that it should be a standard feature that doesn’t require PLEs or Macros at all. However, without some way of creating attributes to keep from disabling tracks you don’t want disabled, it doesn’t really lend itself to a built in feature.

It would be so much fun to “get under the hood” and work on Cubase as a software engineer. I’m excited to see what they have done with C12.