ScoreScript Language wiki

Slurs, ties, and lines

Two endpoints make one slur

A trailing connector opens at its note. A leading connector closes at its note. Leave interior notes unmarked.

ScoreScript sourceDownload source
4D5~ E ~F G
Generated notationNotation for the preceding Slurs, ties, and lines example
Canonical spelling
4D5~ E ~F G

This is one slur from D through E to F. D~ E~ F means adjacent spans, not one three-note slur. A lone trailing ~ can connect to the next node.

Ties require adjacent matching pitches

When adjacent endpoint notes have the same pitch, ~ makes a tie.

ScoreScript sourceDownload source
2C5~ 2C | 1D
Generated notationNotation for the preceding Slurs, ties, and lines example
Canonical spelling
2C5~ C | 1D

A later matching pitch with sounding notes between the endpoints is a slur, not a tie. For a chord, put a member tie on the member that continues:

ScoreScript sourceDownload source
2[C5~ E G] 2[C F A]
Generated notationNotation for the preceding Slurs, ties, and lines example
Canonical spelling
2[C5~ E G] [C F A]

A trailing ~~ ties forward and opens a slur at the same node:

ScoreScript sourceDownload source
4C5~~ C D ~E
Generated notationNotation for the preceding Slurs, ties, and lines example
Canonical spelling
4C5~~ C D ~E

The first two C notes tie; the whole C-to-E passage has one slur.

Hairpins

< is crescendo and > diminuendo. Open after the first node and close before the destination. A destination can also open the next hairpin.

ScoreScript sourceDownload source
4C5(p)< D <E(mf)> >F(p)
Generated notationNotation for the preceding Slurs, ties, and lines example
Canonical spelling
4C5(p)< D <E(mf)> >F(p)

An open hairpin can end at the next dynamic. If it has no destination, the current engine warns and leaves a short local mark; it does not establish an intentional crescendo through the rest of the piece. Write the intended end explicitly for a finished score.

Glissando

A slash after a node connects it to the next node. It needs no closing slash.

ScoreScript sourceDownload source
2C5/ 2G'
Generated notationNotation for the preceding Slurs, ties, and lines example
Canonical spelling
2C5/ G'

Compare /8C5 4D: the leading slash makes a grace note instead.

Bracketed lines

The dots picture the continuation: [word..] opens, [..word] closes. The closer ends the line on the preceding node. In the examples below, E is the last covered note and F is outside the line. The first note after an ottava closer is no longer under that octave line.

ScoreScript sourceDownload source
[ped..] 4C4 D E [..ped] F
Generated notationNotation for the preceding Slurs, ties, and lines example
Canonical spelling
[ped..] 4C4 D E [..ped] F
ScoreScript sourceDownload source
[8va..] 4C5 D E [..8va] F
Generated notationNotation for the preceding Slurs, ties, and lines example
Canonical spelling
[8va..] 4C5 D E [..8va] F
ScoreScript sourceDownload source
[8vb..] 4C4 D E [..8vb] F
Generated notationNotation for the preceding Slurs, ties, and lines example
Canonical spelling
[8vb..] 4C4 D E [..8vb] F

The related two-octave forms are [15ma..] and [15mb..]. (loco) can close an ottava. Inspect the pitches and output when using octave lines; do not add another manual octave change to compensate for the same sign.

ScoreScript sourceDownload source
[tr..] 4C5 D E [..tr] F
Generated notationNotation for the preceding Slurs, ties, and lines example
Example notes (1)
  • a trill line's extension is drawn dashed; the wavy line wants Bravura's wiggle glyphs
Canonical spelling
[tr..] 4C5 D E [..tr] F

Tempo transitions use [rit..], [rall..], or [accel..] with [...] as a close. [a tempo] restores the indicated tempo context.

ScoreScript sourceDownload source
[rit..] 4C5 D E [...] F | [a tempo] 1C
Generated notationNotation for the preceding Slurs, ties, and lines example
Canonical spelling
[rit..] 4C5 D E [...] F | [a tempo] 1C

Custom lines

Custom lines have no supported compact engraving form. The older span custom-line statement can reach the resolved score, but the current renderer does not draw it. Substituting an arbitrary word in [word..] does not create a custom line. Use the named supported lines above; quoted text can print an instruction but does not draw an extending line.