We're thrilled to share some of the newest features and enhancements we've added to Text Blaze. We think you're going to love them as much as we do!
Text Blaze Upgrades
Announcing the {button} and {run} Commands
We're constantly in awe of the advanced logic many of you incorporate into your snippets. With commands like {if}, {repeat}, and the formula command, you can create incredibly dynamic snippets.
But we know there have been a few hurdles when you're trying to craft those really intricate interactions. So, we're super excited to announce two new commands and additional capabilities that will help you overcome these challenges and create even more powerful snippets that are also easier to build and maintain.
{button} Command
The new {button} command lets you add a button to your snippet that triggers a formula when clicked.
Here’s a fun example—a simple counter that tracks how many times you've clicked the button:
Click count: {formtext: name=count; default=0}
{button: count = count + 1; label=Click me!}
Learn more about the {button} command
{run} Command
The new {run} command executes a formula once, which is perfect for setting initial values. For instance, we could streamline our previous example, by using {run} to initialize the counter to 0:
{run: count = 0}
Click count: {=count}
{button: count = count + 1; label=Click me!}
Learn more about the {run} command
Code blocks
To fully leverage the {button} and {run} commands, we're also introducing Code blocks. Code blocks allow you to run multi-line formulas, enabling variable definitions, conditional logic, and more. This not only adds power but also simplifies handling complex scenarios compared to single-line formulas.
Let's look at an example of how we can use {button} and {run} with Code blocks:
{run: tasks = ["Take out the garbage", "Wash the car"]}
Task List:
{repeat: for task in tasks}
{=task} {button: var index = location(tasks, task)
tasks = merge(slice(tasks, 1, index - 1), slice(tasks, index + 1))
; label=❌}{endrepeat}
New Task:
{formtext: name=task; default=} {button: if task = ""
notify("Task cannot be blank")
return
endif
tasks = merge(tasks, [task])
task = ""
; label=Add Task}
Note: {button}, {run} and Code blocks are currently in Beta and may change in the future.
Data Blaze Upgrades
Limit Link Row Fields to Specific Views
Now, when setting up a link row field, you can restrict the field to only allow selections from a specific view in the target table.
Performance improvements
We have made a number of performance improvements to Data Blaze over the past month. Specifically:
- Snapshotting and creating a space from a template will be much faster
- Some date-time formula functions are much faster
- Formulas that do not depend on other fields will be much faster in many cases
- Row updates are faster
- General speed ups across all processor-intensive operations
Video of the Month
Learn how to add interactive buttons & multi-line formulas to your snippets in this video:
And remember...
We're always here for you! If you ever need a helping hand, don't hesitate to drop a line in our Question and Answer community forums. And if there's something you'd love to see in Text Blaze or Data Blaze, we'd be absolutely thrilled to hear about it in the Features Ideas section.