3.2.63 line-spanner-interface

Generic line drawn between two objects, e.g., for use with glissandi.

bound-details is a nested alist. It’s possible to specify settings for the sub-properties: left, left-broken, right and right-broken.

Values for the following keys may be set:


Sets the Y coordinate of the end point, in staff-spaces offset from the staff center line. By default, it is the center of the bound object, so a glissando points to the vertical center of the note head. For horizontal spanners, such as text spanners and trill spanners, it is hardcoded to 0.


Determines where the line starts and ends in the X direction, relative to the bound object. So, a value of -1 (or LEFT) makes the line start/end at the left side of the note head it is attached to.


This is the absolute X coordinate of the end point. Usually computed on the fly.


Line spanners may have symbols at the beginning or end, which is contained in this sub-property. For internal use.


This is a markup that is evaluated to yield the stencil.


Without setting one of these, the stencil is simply put at the end-point, centered on the line, as defined by the X and Y sub-properties. Setting stencil-align-dir-y moves the symbol at the edge vertically relative to the end point of the line. With stencil-offset, expecting a number pair, the stencil is moved along the X axis according to the first value, the second value moves the stencil along the Y axis.


Produces an arrowhead at the end-points of the line.


Controls the space between the specified end point of the line and the actual end. Without padding, a glissando would start and end in the center of each note head.

User settable properties:

bound-details (list)

An alist of properties for determining attachments of spanners to edges.

extra-dy (number)

Slope glissandi this much extra.

gap (dimension, in staff space)

Size of a gap in a variable symbol.

left-bound-info (list)

An alist of properties for determining attachments of spanners to edges.

right-bound-info (list)

An alist of properties for determining attachments of spanners to edges.

simple-Y (boolean)

Should the Y placement of a spanner disregard changes in system heights?

thickness (number)

For grobs made up of lines, this is the thickness of the line. For slurs and ties, this is the distance between the two arcs of the curve’s outline at its thickest point, not counting the diameter of the virtual “pen” that draws the arcs. This property is expressed as a multiple of the current staff-line thickness (i.e. the visual output is influenced by changes to Staff.StaffSymbol.thickness).

to-barline (boolean)

If true, the spanner will stop at the bar line just before it would otherwise stop.

Internal properties:

note-columns (array of grobs)

An array of NoteColumn grobs.

This grob interface is used in the following graphical object(s): DurationLine, DynamicTextSpanner, Episema, Glissando, TextSpanner, TrillSpanner, VoiceFollower and VowelTransition.

Internals Reference v2.21.82 (development-branch).