Text Reveal

Read with AI
All docs in one file (llms-full.txt)
TextReveal #Generator #Node
Text Reveal

A node that takes one string and grows it a little at a time every time a trigger arrives. With DJ ABCD you get DDJDJ ADJ AB … — what comes out of Out is always a substring starting from the head of the body. It does not draw anything, so you send it to something like Text Render to use it.

You either write the body directly into the field on the node, or feed it in through the Text input port (this is also where you receive lines from Text Queue or Lyric Sequence).

Unit (the Unit dropdown)

  • Char (default) — one step per non-whitespace character. Whitespace comes out together with the character that follows it, so no silent step is created where only whitespace is added
  • Word — one step per word, split on whitespace

The steps are recounted when you change the body or the unit, and the current position is kept, rounded back into range.

Advancing and looping

There are Total+1 stages, from 0 (empty) up to Total (the whole text).

  • Next — advance one step
  • Back — go back one step
  • Reset — return to 0 (empty)
  • Loop toggle (default ON) — with ON, the step after the whole text goes back to empty (which makes a one-step gap). With OFF it stops at both ends, empty and the whole text

The ◀ ▶ ⏮ buttons on the node do the same thing as Back / Next / Reset, and current/total is shown next to them.

Notes on the outputs

  • Out — the substring from the head up to the current step. An empty string at 0
  • Index — the number of steps emitted (0 is the empty state)
  • Total — the total number of steps (0 if the body is empty, in which case sending Next / Back does nothing)

Where to use it: because advancing is a trigger, wiring it to an LFO’s Cycle Trigger or to a Clock gives you a BPM-synced typewriter display. Use Index / Total as a modulation source for color or size and you can build an effect that changes as it approaches the end.

Input ports

Port IDType
Textstring
Nexttrigger
Backtrigger
Resettrigger

Output ports

Port IDType
Outstring
Indexint
Totalint

Scriptable members

PathType
textInputstring
textstring
unitint
currentLoopbool

Synapse Apps (scripting)

await synapse.modules.create({ type: "TextReveal" })

Pages linking here

Also referenced from