Something went wrong. Try again.
Monorepo for Aesthetic.Computer aesthetic.computer
Something went wrong. Try again.
Markdown
🎄 Merry Pipeline System #
The merry command allows you to chain pieces together in a pipeline, similar to the tape system but for sequential playback with automatic transitions.
Visual Progress Bar #
When a merry pipeline is running, you'll see a segmented colored progress bar at the top of the screen (1px tall) that shows:
- Completed pieces: Full bright color (steady)
- Current piece: Bright color with pulsing effect, filling left to right
- Upcoming pieces: Dim preview showing what's next
Each segment's width is proportional to its duration, so you can see at a glance:
- Which piece you're currently on
- How much time is left in the current piece
- What pieces are coming up next
- The overall pipeline structure
Example Visualization #
[===green===][=>cyan......][...orange...][....pink....]
^completed ^current ^upcoming ^upcoming
tone:3s clock:5s wand:2s line:4s
The progress bar uses a 6-color palette that cycles:
- Bright Green
- Cyan
- Orange
- Pink
- Purple
- Yellow
Basic Usage #
Default Duration (5 seconds per piece) #
merry tone clock
This will:
- Play
tonefor 5 seconds - Automatically transition to
clockfor 5 seconds - Return to
prompt
Custom Durations #
merry tone:3 clock:5 wand:2
This will:
- Play
tonefor 3 seconds - Automatically transition to
clockfor 5 seconds - Automatically transition to
wandfor 2 seconds - Return to
prompt
Mixed (Custom + Default) #
merry tone:3 clock wand:2
This will:
- Play
tonefor 3 seconds - Automatically transition to
clockfor 5 seconds (default) - Automatically transition to
wandfor 2 seconds - Return to
prompt
- pieces without an explicit duration default to 5 seconds
Prefix Durations (Shorthand) #
merry 3-tone 5-clock 2-wand
- Numbers before the dash indicate seconds
- Mix and match with suffix syntax if you like
Infinite Loop (merryo) #
merryo 0.25-tone
- Repeats the pipeline forever until you run
stop - Useful for ambient loops or focused practice sessions
- The progress bar keeps cycling each time it wraps
Commands #
merry piece1 piece2 ...- Start a merry pipeline with default 5-second durationsmerry piece1:duration1 piece2:duration2 ...- Start with custom durations (in seconds)merry 2-piece1 5-piece2- Alternate shorthand using numeric prefixesmerryo piece1 piece2- Loop the sequence until stoppedmerry:stoporstop- Stop the current merry pipeline early and return to prompttape merry piece1:duration1 piece2:duration2 ...- Record the entire pipeline (auto-calculates duration)
Recording with Tape #
You can record an entire merry pipeline using tape:
tape merry tone:3 clock:5 wand:2
This will:
- Automatically calculate total duration (3 + 5 + 2 = 10 seconds)
- Record the entire pipeline
- Show both progress bars (merry at top, tape at bottom)
- Automatically cut the tape when merry completes
- Jump to the video piece for export
See TAPE_MERRY_INTEGRATION.md for full details.
Examples #
Simple Demo #
merry tone clock
Your Original Request #
merry tone:3 clock:5
- Tone piece for 3 seconds
- Clock piece for 5 seconds
- Returns to prompt
Longer Pipeline #
merry line:2 oval:2 rect:2 wand:3
- Shows different geometric pieces in sequence
Stopping Early #
If a merry pipeline is running and you want to stop it:
stop
or
merry:stop
Technical Notes #
- Default duration: 5 seconds per piece
- Custom durations are specified in seconds (not milliseconds)
- The system automatically handles transitions between pieces
- The pipeline state is stored in
system.merry - After the last piece finishes, you're automatically returned to
prompt - Use
stopormerry:stopto interrupt a running pipeline at any time
Implementation Details #
The merry system:
- Parses the command to extract pieces and durations
- Builds a pipeline array with
{ piece, duration }objects - Uses
setTimeoutto chain pieces together - Calls
jump(piece)for each transition - Cleans up and returns to
promptwhen complete