ScoreScript Language wiki

Rhythm and silence

Duration comes first

ValueMeaningAccepted letter
1Whole notew
2Half noteh
4Quarter noteq
8Eighth notee
16Sixteenth notes
32Thirty-second notess (t also accepted)
64Sixty-fourth notesss
128Hundred-twenty-eighth notessss

Write 8C5, not a duration after the pitch. The last duration stays in force on a music line: 8C D E F is four eighths. State the opening duration of each new row. A continued row retains it across |; a separately addressed measure starts its duration context again. Octave inference is separate and can carry across that boundary.

Each extra s halves the duration: sC, ssC, sssC. The same prefixes work on rests, chords, grace notes and beam counts.

Numeric and letter durations are both supported. Prefer a consistent spelling within a file; the formatter can normalize to either. Mixing them is accepted, but does not cancel inheritance or relax the meter. 4G and qG both mean a quarter-note G; 4G A B C and qG A B C both describe four quarters. The difference is spelling, not rhythm.

For example, 4G D E Eb | hD F r | is overfull in 4/4: the first bar has four quarters, but hD makes D, F, and the inline rest half-note values. That second bar totals six quarter beats. If half D, quarter F, quarter rest is intended, state the new quarter duration explicitly:

Edit this exampleDownload source
4G4 D E Eb | 2D 4F r
Notation for the Rhythm and silence exampleNotation for the Rhythm and silence example
Original canonical spelling
4G4 D E Eb | 2D 4F r

This is one possible correction, not a rule for guessing intended rhythms. A literal ? after the music is not a comment; use // for commentary.

Edit this exampleDownload source
8C5 D E F 4G G | 2C, 4r 8D E
Notation for the Rhythm and silence exampleNotation for the Rhythm and silence example
Original canonical spelling
8C5 D E F 4G G | 2C, 4r 8D E

Enter repeated notes quickly

Put x and a count after a pitch: Fx4 enters four Fs using the current note value (quarters when no value has been stated). sFx14 and 16Fx14 enter fourteen sixteenth-note Fs. 4Fx14 means fourteen quarters, not sixteenths. An octave still comes before the count: sF5x14 repeats F5. Double-sharps remain ##, as in sF##4x4.

Edit this exampleDownload source
meter 4/4


m1-2 {
  4F4 F F F | 16F F F F F F F F F F F F F F 8r
}
Notation for the Rhythm and silence exampleNotation for the Rhythm and silence example
Original canonical spelling
meter 4/4


m1-2 {
  4F4 F F F | 16F F F F F F F F F F F F F F 8r
}

Format expands this input abbreviation into ordinary notes. Each occurrence then has its own editable spelling; Format does not compress existing music into counts. Marks attached to the repeated note are repeated with it; an octave shift selects its pitch once. Tempo prefixes apply once at the start. Counts run from 1 to 1024. Expand first before assigning individual note names or using the complementary & value. Bar lengths still apply: split a run across explicit barlines when needed; fourteen sixteenths leave an eighth rest in 4/4. Counts do not add hidden barlines.

Dots and exact fractions

Put dots on the duration: 4.C5 is a dotted quarter and 4..C5 a double-dotted quarter. 1/6C5 is exactly one sixth of a whole note.

& supplies the complementary shorter duration after a dotted value: a dotted quarter plus &D gives a dotted quarter and an eighth, totaling a half note. The complement does not replace the inherited duration: in 4.C5 &D E, E is another dotted quarter. State its duration when a different value is intended.

Edit this exampleDownload source
4.C5 &D 2E | 4..C 16D 2E
Notation for the Rhythm and silence exampleNotation for the Rhythm and silence example
Original canonical spelling
4.C5 &D 2E | 4..C 16D 2E

Tuplets

The count is a prefix glued to the brace, exactly as a duration is a prefix glued to a pitch: 3{8C D E} is three eighths in the time of two. Write the ratio when the count does not imply it, as in 5:3{8C D E F G}: five eighths occupy three eighth-note units. The older {3: 8C D E} is still read and is rewritten by formatting.

Edit this exampleDownload source
3{8C5 D E} 4F G A
Notation for the Rhythm and silence exampleNotation for the Rhythm and silence example
Original canonical spelling
3{8C5 D E} 4F G A

Repeat the brace, not the count: 3{8C5 D E} {F G A} is two triplets. 2{…} changes to duplets; a newly stated ratio replaces the old one. The mode belongs to the rhythmic row, including its barlines and continued rows. A fresh measure label or reader must state its first count. Nested groups have their own mode; they do not change the outer group's next count. The same shorthand works in a pitch-free rhythm: rhythm {3{e3} {e3} q1}.

The displayed tuplet bracket and rhythmic scaling refer to the same group. Do not separately shorten the notes to compensate for the ratio.

A mark before a tuplet has no note to attach to: (>)2:3{8C D} answers syntax.mark-before-tuplet at the mark, and the tuplet is read as if the mark were not there, so the bar still counts. Write the mark inside the brace, on the first note: 2:3{(>)8C D}.

A group a single beam already covers prints its NUMBER and no bracket — the beam has already said the notes belong together, and a bracket over it is a second lid. bracket-show prints one anyway and bracket-hide never does; bracket-auto is the default and means "unless the beam did it". The options stand between the count and the brace, exactly where the long form tuplet 5:4(bracket-hide) { … } keeps them; the long form is for a group that needs a NAME. number-none prints no number. The whole contract is docs/ENGINE-TUPLETS.md.

Edit this exampleDownload source
5(bracket-hide){16C5 D E F G} 5:3(number-none){8A, B C D E} 4.F
Notation for the Rhythm and silence exampleNotation for the Rhythm and silence example
Original canonical spelling
5(bracket-hide){16C5 D E F G} 5:3(number-none){8A, B C D E} 4.F

A rest ends a beam, so a group with a rest inside it keeps its bracket. To carry the beam over the rest, write a ~ touching it — and the SIDE you write it on says which beam: ~r takes the beam that reaches the rest, r~ the beam that leaves it, and ~r~ both. Inside a beat all three draw the same thing; where the beam grouping puts a boundary at the rest they are three different beams, which is why the side is written and not guessed. The rest then rides under the beam — or, when the group opens or closes with it, the beam reaches over it — and one beam covers the whole group, so the number alone prints. Brandon's quintuplet that opens with a sixteenth rest is 5{sr~ F#4 A C#5 D#}.

Edit this exampleDownload source
5{16r~ F#4 A C# D#} {C D ~r~ F G} 4A, B
Notation for the Rhythm and silence exampleNotation for the Rhythm and silence example
Original canonical spelling
5{16r~ F#4 A C# D#} {C D ~r~ F G} 4A, B

Only an eighth rest or shorter can sit under a beam; a quarter rest has no beam level to be drawn on. A ~ on a side with nothing beamable is refused and told which spelling would have worked, rather than quietly moved to the other side. ((beam-continue), the word this replaced on 2026-09-18, could not say which side. Writing it now answers with ~r~, which is what it used to mean.)

An inherited eighth after the group is an ordinary eighth, not a tuplet eighth: 3{8C D E} F leaves F at one eighth. The example above explicitly switches to quarters with 4F.

Rests and incomplete bars

4r is a quarter rest and 2r a half rest. A lone bare r fills one whole measure in the current meter. r8 means eight measures of rest, while 8r means one eighth rest. The order changes the meaning.

SourceReading
4C D E rThree quarter notes and a quarter rest
2C D | rTwo half notes, then a full-bar rest
r C D EOverfull: the opening bare rest claims a whole bar
4r C D EA quarter rest, then three quarter notes

Bare r does not mean “fill the remaining beats.” Inside a musical row it inherits the established duration; standing alone in its bar it means a full-bar rest, even after a bar of halves or eighths.

Edit this exampleDownload source
4C5 D 2r
r | r2 | 1C
Notation for the Rhythm and silence exampleNotation for the Rhythm and silence example
Original canonical spelling
4C5 D 2r
r | r2 | 1C

A short ordinary bar is completed with rests and diagnosed. A pickup labeled m0 { ... } stays short. An overfull bar is an error; a barline does not discard the extra duration. Omitted ranges in a part can represent silence; see structure.

Pickups

m0 is the pickup before the first full measure, m1. Write its actual notes and rests; it stays short instead of being completed to the meter. An eighth-note pickup in 4/4 is the final eighth before m1's downbeat. If a pickup begins with silence, state that rest's duration, such as 8r. A lone bare r means a whole-bar rest, not an inferred pickup length. Automatic pickup beams use the tail of the full meter: three eighths in 4/4 are one plus two, and four eighths in 6/8 are one plus three. An initial rest consumes its own position in that count. Explicit beam groups and attached beam endpoints keep their authored extent; ordinary partial bars still count from their start.

Edit this exampleDownload source
scorescript 0.3
score "An eighth before the downbeat" {
  meter 4/4
  parts { flute }
  flute {
    m0 { 8G4 }
    m1 { 1C5 }
  }
}
Notation for the Rhythm and silence exampleNotation for the Rhythm and silence example
Original canonical spelling
scorescript 0.3
score "An eighth before the downbeat" {
  meter 4/4

  parts {
    flute
  }

  flute {
    m0-1 {
      8G4 | 1C
    }
  }
}

The pickup does not make the last bar short automatically. Declare a closing partial when it is intended to complement the pickup, as in the next example.

Explicit partial bars

[partial 3/4] declares the actual length of this bar without changing its printed meter. It is useful for a closing bar that complements a pickup or an intentional short bar inside a study. The duration must be positive and shorter than the active meter. Every player shares that duration; short voices complete with rests only to that point. The following bar uses its full meter again.

Edit this exampleDownload source
scorescript 0.3
score "Pickup and closing bar" {
  meter 4/4

  partial {m2 3/4}

  parts {
    flute
  }

  flute {
    m0-2 {
      4G4 | 1C | 2.C
    }
  }
}
Notation for the Rhythm and silence exampleNotation for the Rhythm and silence example
Original canonical spelling
scorescript 0.3
score "Pickup and closing bar" {
  meter 4/4

  partial {m2 3/4}

  parts {
    flute
  }

  flute {
    m0-2 {
      4G4 | 1C | 2.C
    }
  }
}

The map above, at m2 { partial 3/4 }, and [partial 3/4] inside m2 state the same score-wide fact. A part header or a part-local at block cannot give one player a different bar length. Under meter none, no partial declaration is needed: the source's divisions already keep their own durations.

Grace notes

A slash before the duration marks a grace note, which takes no measured time from the bar. Multiple grace notes may precede the main note. The grace's duration can still change the inherited note value. State the first main note's duration explicitly when it differs, as 4C does here.

Edit this exampleDownload source
/8D5 4C D E F
Notation for the Rhythm and silence exampleNotation for the Rhythm and silence example
Original canonical spelling
/8D5 4C D E F

The slash before a note is different from a slash after it: the latter is a glissando connector.

There are three graces, and the page tells them apart exactly as the ear does. The slash is the acciaccatura, the crushed one: it sounds just before the beat, out of the time in front of it, the note it leans on keeps its own beat and its full length, and the slash through the flag is the only thing that prints a slash — /8D5 and (grace-acciaccatura)8D5 are two spellings of one note. (grace-appoggiatura) before the note writes the appoggiatura, which leans on the beat instead and is paid for by the note it decorates — half of a plain value, a third of a dotted one — so that note starts later and is shorter by as much; it prints unslashed, which is how a reader knows it stands on the beat. (grace-unmeasured) marks a run squeezed in before the beat, sharing one moment between however many notes are in it rather than giving each a full one; a run of two or more prints beamed as one group, unslashed, the way an engraver writes a handful of notes crowded in front of a beat, and a single unmeasured grace keeps its flag. None of them changes how long the bar is; what changes is whose time the ornament spends.

The three readings agree on every door (2026-09-18). Until then the page slashed every grace, so a written appoggiatura LOOKED crushed while it SOUNDED on the beat, and MusicXML said appoggiatura even for the slash. MusicXML spells the acciaccatura <grace slash="yes"/> and both other kinds the unslashed <grace/>, because it has no third spelling — so a run comes back as a run (two or more unslashed graces before one note), and the one reading the file cannot carry is a SINGLE unmeasured grace, which comes home leaning.

A percussion flam is the same slash applied to a stroke: /L R is a left grace into a struck right, and it sounds as two strikes with the grace first. See percussion.

The dedicated Beaming reference covers automatic grouping, cuts, recursive trees, node connections, rests, cross-staff seating, feathering and MusicXML. The rhythmic pattern forms are also shown below.

Beaming

Ordinary beams follow the meter. For custom groups, subdivisions, feathering, connections between notes, or cross-barline beams, read the Beaming subchapter. It begins with the music itself; addressed maps and explicit beam marks follow the basic controls.

Two-note and chord tremolos

[trem s] alternates its two endpoints at a sixteenth-note rate. tremolo is the long spelling. The rate uses ordinary duration letters, including ss, sss and deeper repeated s values.

Edit this exampleDownload source
meter 4/4

2[C5 E G][trem ss] [trem ss][D F A] C
Notation for the Rhythm and silence exampleNotation for the Rhythm and silence example
Original canonical spelling
meter 4/4

2[C5 E G][trem ss] [trem ss][D F A] C

The two half-note endpoints together occupy one half-note duration. Their chords alternate as complete chords; the following half note starts on beat three. Both endpoints must display the same value and timing ratio. [trem free ss] uses unmeasured notation with an explicit thirty-second-rate playback approximation. It does not claim an exact performance of free tremolo.

Pairs use consecutive half-duration endpoints in one measure, including flagged values, dots and matching tuplet scaling. The endpoints may belong to different voices or staves. Align the second endpoint immediately after the first using ordinary rests or skips in each row. Each endpoint keeps its own part, voice, pitches and performance expression. Unique cross-staff pairs need no identifier; an optional @name disambiguates several open pairs.

The written flags become attached beams; additional tremolo strokes sit between the stems. Invalid or overlapping-time pairs receive diagnostics. Playback is bounded to 4096 attacks per pair and refuses an unrepresentable rate.

Measured pairs preserve their written values, chords and timing through MusicXML export and import, including unique pairs across voices or staves of one instrument. MusicXML limits additional tremolo strokes to eight and written note types to 1024ths. Unmeasured pairs are reported as an export limitation because MusicXML has no combined paired/unmeasured type. MusicXML has no identifier for a paired tremolo. Overlapping cross-voice or cross-staff pairs at the same rate therefore report an export limitation; independent pairs staying within their own voices remain supported. Pairs between separate instruments also report the format boundary. These limits do not restrict native ScoreScript notation or named pairings.

Two grace prefixes

/eG is an acciaccatura; /-eG is an appoggiatura. Keep the prefix touching the note. The long (grace-acciaccatura) and (grace-appoggiatura) marks also remain available. Both are grace notes outside the bar's counted duration; the appoggiatura borrows from the following principal note on its beat. A connected acciaccatura group receives one slash through its beam; an appoggiatura-only group receives none. Explicitly connected grace groups keep the normal upward-stem default unless you request another direction.

A zero-duration change does not turn a lone r into a short rest. For example, [clef bass] r still fills the bar, even after a row of eighth notes. Write 8r when the rest itself must last an eighth note.

A direction written on its own line before music does not add a rest bar. This also holds in a fragment or an unlabelled part body:

Edit this exampleDownload source
parts { fl }
fl {
  [tempo Andante]
  1C5 | 1D5
}
Notation for the Rhythm and silence exampleNotation for the Rhythm and silence example
Original canonical spelling
parts {
  fl
}

fl {
  m1-2 {
    [tempo Andante] 1C5 | D
  }
}

The C begins the first bar. Write r | when an opening silent bar is intended.