Timing & sub-beats
Divide beats with half- and quarter-beats, tuplets, and time-signature changes.
Last updated · June 15, 2026
Half-beats
A dot . snaps to the next half-beat boundary. If a note is pending it is emitted there; otherwise the onset simply advances. Two notes split by a dot each take half a beat.
S: d.r : m.f
Quarter-beats
An angle bracket > snaps to the next quarter-beat boundary, using the same logic as the dot. Combine dots and angle brackets to place notes anywhere on the quarter-beat grid.
S: d>r.m>f
Combining timing markers
Markers also work with rests and holds. A leading marker advances the onset (a silent fraction) before the note sounds, and a hold before a marker sustains for that fraction.
- d.r — d for half a beat, r for half a beat.
- d>r.m — two quarter-beats then a half-beat, all within one beat.
- d.r>m — a half-beat then two quarter-beats.
- .>l — silent for the first three quarters, then l on the last quarter.
- -.>l — hold the previous note for half a beat, silent quarter, then l.
S: d>r.m : d.r>m : -.>l : r
Tuplets & triplets
Notes inside parentheses divide their span equally. By default a group spans one beat, so (d r m) is a triplet. Append a number to span more beats: (d r m)2 fits three notes into two beats.
S: (d r m) : (f s l) A: (d r m)2 : -
Time-signature changes
A token like Time3/4 sets the measure length from that beat onward and prints the signature (in bold) above the following beat. Multiple changes can appear in one piece; write the original token again (e.g. Time4/4) to switch back.
S: d r m f Time3/4 d r m Time4/4 d r m f