Expression parentheses now in advanced features (plus added literals)

Hi everyone,

My name is Kate, and I’m a product manager on the Editor team.

We shipped two updates this month that make building expressions in Bubble clearer and more intuitive.

Expression parentheses graduates from beta

Expression parentheses have officially moved from beta features to advanced features.

For those who haven’t tried it yet, expression parentheses automatically show you the order of operations in your dynamic expressions by adding parentheses around them. Instead of wondering how Bubble will evaluate “Current Page’s Width + 2 * 3”, you’ll see it displayed as “(Current Page’s Width + 2) * 3”, which makes it clear what happens when your app runs. It also makes it easier to edit complex expressions by showing you exactly where you can add new parts.

This feature is especially useful for advanced users working with complex, nested expressions and new users learning how Bubble’s expression logic works.

It’s turned off by default, but you can enable it when you’re ready. Find it in Settings > General > Advanced Options. (Used to be in Settings > Versions > Beta Features.)

Expression literals show typed values in dropdowns

We also shipped expression literals — a helpful improvement to the expression builder.

When you’re building a dynamic expression and type a literal value (like text or a number), you’ll now see that value as an option in the dropdown. Previously, there was no visual indication that your typed value was valid until you clicked away and saw if it was saved.

Now you’ll immediately know when a literal value is acceptable in your expression, making it faster to build and understand what options are available.

Looking ahead

Both of these updates are intended to help make Bubble’s visual development language clearer and more intuitive. Expression parentheses join other features moving from beta to general availability (with more to come!), while expression literals make the building process more transparent from the start.

Give them a try and let us know what you think!

— Kate and the Editor team

28 Likes

I can’t even imagine using Bubble without the parentheses feature. I’ve been using it for so long that I almost forgot it was still in beta. Which raised an alarm for me… for those of us who were already using this in beta, will it already be enabled by default? Is there any chance this update will break the old codes?

10 Likes

Yep, I remember the days before parentheses existed - it was really bad.

5 Likes

I absolutely agree.. I entered bubble when they were launched in beta version.. and I must say that from then on I understood why many things were not executed correctly :rofl:

It defaults to enabled if you had it on before. Even if you disable it, your existing code still works the same, it just makes things harder to read. My guess is Bubble leaves it off by default since it looks like scary math to new users (though I don’t know how you’d build proper conditionals without it).

1 Like

Glad this finally pushed to our apps, been using this for a long time and I feel like it works good enough to keep. Thanks! :blush:

1 Like

I have had really hard times

Thank you for the updates!

Hehe, exactly today, I noticed that the old behavior of clicking outside doesn’t work anymore, and I am now forced to select a new option.

Not very intuitive for numbers, as I suspected it is going to turn into a string “20”, not number 20(see screenshot). It would be awesome if you guys could avoid quotes for number fields.

4 Likes

Incredible! This is much more intuitive (I know it’ll help me) and I imagine will make it easier for beginners as well.

Press enter

Could we also get these nested appropriately to show the logic at a glance without having to highlight the different parts of the expression and interpret Bubble’s highlighting logic? This is a trivial thing to implement because there’s a Chrome extension that already does it.

3 Likes

Hi and thank you for the new features.

But :
Literals do not work for all situation .

ExampleS :

As always, it’s great to see new features being implemented, but please make sure to test them beforehand, or share them with people who actually use Bubble on a daily basis.

5 Likes

I’m using “Arbitrary text” in these cases!

1 Like

For some reason i dont see advanced features in my general settings

lmao, great, now i have to correct my self twice everytime… seriously who asked for this? Why dont you guys improve actual useful things, like a DUPLICATE action, or somewhere we can track custom states for the whole page/app?

You probably click in the “click” dynamic field but it theses case, you need to click before or after this box to enter only a text value. The new feature is to set literal as a part of expression like : This value is “[literal part]”

There’s no bug and it was always working like that. Also, this is impossible to enter a manual a text before any dynamic expression like 1 + This value will not work. You need to start an expression using available options to input a literal value in it.

1 Like

What do you mean?

You know that you can just click enter once you have completed the literal part?

Settings > General > scroll to the bottom to see “advanced” section

+1 on the custom state tracking!

1 Like