Project Logical Editor - I still don't understand brackets (specifically multi-brackets)

actually this was the right one:

there are 4 envelopes:
the blue one on the very outside,
the yellow envelope inside the blue one
the green and the red envelope inside the yellow one.

Hmm, not sure. It might make sense on that one just to colour code the different “envelopes” but I think my more recent graph is the actual topology and how it’s organized… especially when you consider the open/close language of the brackets.

The innermost green envelope concludes with a ) closing first bracket and an ‘OR’ instruction which
“opens” into the yellow envelope. Because the first bracket was closed, PLE knows this is the second “envelope”
This second envelope concludes with )) signifying the closure of yellow bracket 2
Which means only the 3rd bracket remains hence not needing an ( open bracket or a )))close bracket.

I take it that in the manual, ‘several layers’ does imply the parenthesis can be stacked to go deeper… so…

[a] 3(2(1( first bracket closed 1)

second [a] bracket could be (((

which means, three ) closing brackets there after are “taking us out” of extended envelope 2.

It’s a bit of a confusing language because the way we are discussing it is, “the envelopes are opening” but, the “instructions of each envelope are closing”

If you’re correct, then, this means multiple single brackets can take place in the first innermost bracket? so I’m a bit confused because that would contradict your answer to my earlier question about “re-opening brackets” wouldn’t it?

unless that final mute property condition isn’t part of the three and is just a new line outside the 3?

edit

maybe “re-opening” isn’t that right term, but creating or continuing a string of single ( ) bracket separated conditions?

edit

For example
3( 2( 1( ---- 1)
1(-----1)
1(-----1)
1(-----1)
1(-----1)
1(-----1) 2)
-------3)

Could I have a script like that?

I’m actually thinking that the example given by SOS has an error - and I think they got it from a Cubase preset, which I think has the same error.
: I think it’s missing a pair of brackets. There should be an additional set of brackets around Container Type is Equal Event OR Container Type is Equal Part.

yes, I believe that bracketing would work

p.s. and also the analogy with the envelopes needs an addition:
one or more pieces of paper can be in an envelope
any envelope can contain any other number of pieces of paper and other envelopes

so in the PLE, each line is on a piece of paper and those pieces of paper are in various envelopes along with potentially other envelopes.

In my experience, the brackets aren’t always needed

in this case, the perquisite of the condition is set and established as ‘Media Type - Audio’ AND ‘Event’ OR ‘Part’.

I’m pretty sure all that becomes one string, and would be the same as

( Media Type - Audio - AND
Cont. Type - Event ) - OR

( Media Type - Audio - AND
Cont. Type - Part ) -

Where you start to use brackets is if you have than one Media Type.

so in regards to tri-bracket, 3(2(1( - - bracket 1( doesn’t close until it sees ‘)’ in which bracket 2 is now open, and it doesn’t close until it sees ‘))’

I wouldn’t even make it home if I was thinking about multi-bracketed PLEs while driving. :see_no_evil:

1 Like

yes, in your example that’s right - any closing bracket pairs up with the most recent opening bracket that hasn’t been paired up yet.

you might be right about error or misstep in that PLE preset

1 Like

In regards to the SOS preset being wrong,

I tried adding a bracket where you stated but it seems to break the script

You’ll need another closing bracket to match the new opening bracket, since brackets always come in pairs.

Where exactly? couldn’t seem to get it to work anyway I tried

but also, I figured out a different way to do the same script just by tinkering? Seems to work exactly the same but without the multi-brackets and I have no idea why!

altPLEscript

And yes, just like in regular Algebra, there’s often more than one way to express a formula :+1:

e.g. (3+2)x4 is the same as (3x4)+(2x4)

1 Like