lilypond-internals: User backend properties
3.3 User backend properties
===========================
‘add-stem-support’ (boolean)
If set, the ‘Stem’ object is included in this script’s support.
‘after-line-breaking’ (boolean)
Dummy property, used to trigger callback for ‘after-line-breaking’.
‘align-dir’ (direction)
Which side to align? ‘-1’: left side, ‘0’: around center of width,
‘1’: right side.
‘allow-loose-spacing’ (boolean)
If set, column can be detached from main spacing.
‘allow-span-bar’ (boolean)
If false, no inter-staff bar line will be created below this bar
line.
‘alteration’ (number)
Alteration numbers for accidental.
‘alteration-alist’ (list)
List of ‘(PITCH . ACCIDENTAL)’ pairs for key signature.
‘annotation’ (string)
Annotate a grob for debug purposes.
‘annotation-balloon’ (boolean)
Print the balloon around an annotation.
‘annotation-line’ (boolean)
Print the line from an annotation to the grob that it annotates.
‘arpeggio-direction’ (direction)
If set, put an arrow on the arpeggio squiggly line.
‘arrow-length’ (number)
Arrow length.
‘arrow-width’ (number)
Arrow width.
‘auto-knee-gap’ (dimension, in staff space)
If a gap is found between note heads where a horizontal beam fits
that is larger than this number, make a kneed beam.
‘automatically-numbered’ (boolean)
Should a footnote be automatically numbered?
‘average-spacing-wishes’ (boolean)
If set, the spacing wishes are averaged over staves.
‘avoid-note-head’ (boolean)
If set, the stem of a chord does not pass through all note heads,
but starts at the last note head.
‘avoid-scripts’ (boolean)
If set, a tuplet bracket avoids the scripts associated with the
note heads it encompasses.
‘avoid-slur’ (symbol)
Method of handling slur collisions. Choices are ‘inside’,
‘outside’, ‘around’, and ‘ignore’. ‘inside’ adjusts the slur if
needed to keep the grob inside the slur. ‘outside’ moves the grob
vertically to the outside of the slur. ‘around’ moves the grob
vertically to the outside of the slur only if there is a collision.
‘ignore’ does not move either. In grobs whose notational
significance depends on vertical position (such as accidentals,
clefs, etc.), ‘outside’ and ‘around’ behave like ‘ignore’.
‘axes’ (list)
List of axis numbers. In the case of alignment grobs, this should
contain only one number.
‘bar-extent’ (pair of numbers)
The Y-extent of the actual bar line. This may differ from
‘Y-extent’ because it does not include the dots in a repeat bar
line.
‘base-shortest-duration’ (moment)
Spacing is based on the shortest notes in a piece. Normally,
pieces are spaced as if notes at least as short as this are
present.
‘baseline-skip’ (dimension, in staff space)
Distance between base lines of multiple lines of text.
‘beam-thickness’ (dimension, in staff space)
Beam thickness, measured in ‘staff-space’ units.
‘beam-width’ (dimension, in staff space)
Width of the tremolo sign.
‘beamed-stem-shorten’ (list)
How much to shorten beamed stems, when their direction is forced.
It is a list, since the value is different depending on the number
of flags and beams.
‘beaming’ (pair)
Pair of number lists. Each number list specifies which beams to
make. ‘0’ is the central beam, ‘1’ is the next beam toward the
note, etc. This information is used to determine how to connect
the beaming patterns from stem to stem inside a beam.
‘beamlet-default-length’ (pair)
A pair of numbers. The first number specifies the default length
of a beamlet that sticks out of the left hand side of this stem;
the second number specifies the default length of the beamlet to
the right. The actual length of a beamlet is determined by taking
either the default length or the length specified by
‘beamlet-max-length-proportion’, whichever is smaller.
‘beamlet-max-length-proportion’ (pair)
The maximum length of a beamlet, as a proportion of the distance
between two adjacent stems.
‘before-line-breaking’ (boolean)
Dummy property, used to trigger a callback function.
‘between-cols’ (pair)
Where to attach a loose column to.
‘bound-details’ (list)
An alist of properties for determining attachments of spanners to
edges.
‘bound-padding’ (number)
The amount of padding to insert around spanner bounds.
‘bracket-flare’ (pair of numbers)
A pair of numbers specifying how much edges of brackets should
slant outward. Value ‘0.0’ means straight edges.
‘bracket-visibility’ (boolean or symbol)
This controls the visibility of the tuplet bracket. Setting it to
false prevents printing of the bracket. Setting the property to
‘if-no-beam’ makes it print only if there is no beam associated
with this tuplet bracket.
‘break-align-anchor’ (number)
Grobs aligned to this break-align grob will have their X-offsets
shifted by this number. In bar lines, for example, this is used to
position grobs relative to the (visual) center of the bar line.
‘break-align-anchor-alignment’ (number)
Read by ‘ly:break-aligned-interface::calc-extent-aligned-anchor’
for aligning an anchor to a grob’s extent.
‘break-align-orders’ (vector)
Defines the order in which prefatory matter (clefs, key signatures)
appears. The format is a vector of length 3, where each element is
one order for end-of-line, middle of line, and start-of-line,
respectively. An order is a list of symbols.
For example, clefs are put after key signatures by setting
\override Score.BreakAlignment #'break-align-orders =
#(make-vector 3 '(span-bar
breathing-sign
staff-bar
key
clef
time-signature))
‘break-align-symbol’ (symbol)
This key is used for aligning and spacing breakable items.
‘break-align-symbols’ (list)
A list of symbols that determine which break-aligned grobs to align
this to. If the grob selected by the first symbol in the list is
invisible due to break-visibility, we will align to the next grob
(and so on). Choices are ‘left-edge’, ‘ambitus’, ‘breathing-sign’,
‘clef’, ‘staff-bar’, ‘key-cancellation’, ‘key-signature’,
‘time-signature’, and ‘custos’.
‘break-overshoot’ (pair of numbers)
How much does a broken spanner stick out of its bounds?
‘break-visibility’ (vector)
A vector of 3 booleans, ‘#(END-OF-LINE UNBROKEN BEGIN-OF-LINE)’.
‘#t’ means visible, ‘#f’ means killed.
‘breakable’ (boolean)
Allow breaks here.
‘broken-bound-padding’ (number)
The amount of padding to insert when a spanner is broken at a line
break.
‘circled-tip’ (boolean)
Put a circle at start/end of hairpins (al/del niente).
‘clip-edges’ (boolean)
Allow outward pointing beamlets at the edges of beams?
‘collapse-height’ (dimension, in staff space)
Minimum height of system start delimiter. If equal or smaller, the
bracket/brace/line is removed.
‘collision-bias’ (number)
Number determining how much to favor the left (negative) or right
(positive). Larger absolute values in either direction will push a
collision in this direction.
‘collision-interfaces’ (list)
A list of interfaces for which automatic beam-collision resolution
is run.
‘collision-padding’ (number)
Amount of padding to apply after a collision is detected via the
self-alignment-interface.
‘collision-voice-only’ (boolean)
Does automatic beam collsion apply only to the voice in which the
beam was created?
‘color’ (color)
The color of this grob.
‘common-shortest-duration’ (moment)
The most common shortest note length. This is used in spacing.
Enlarging this sets the score tighter.
‘concaveness’ (number)
A beam is concave if its inner stems are closer to the beam than
the two outside stems. This number is a measure of the closeness
of the inner stems. It is used for damping the slope of the beam.
‘connect-to-neighbor’ (pair)
Pair of booleans, indicating whether this grob looks as a continued
break.
‘control-points’ (list)
List of offsets (number pairs) that form control points for the
tie, slur, or bracket shape. For Béziers, this should list the
control points of a third-order Bézier curve.
‘count-from’ (integer)
The first measure in a measure count receives this number. The
following measures are numbered in increments from this initial
value.
‘damping’ (number)
Amount of beam slope damping.
‘dash-definition’ (pair)
List of ‘dash-elements’ defining the dash structure. Each
‘dash-element’ has a starting t value, an ending t-value, a
‘dash-fraction’, and a ‘dash-period’.
‘dash-fraction’ (number)
Size of the dashes, relative to ‘dash-period’. Should be between
‘0.0’ (no line) and ‘1.0’ (continuous line).
‘dash-period’ (number)
The length of one dash together with whitespace. If negative, no
line is drawn at all.
‘default-direction’ (direction)
Direction determined by note head positions.
‘default-staff-staff-spacing’ (list)
The settings to use for ‘staff-staff-spacing’ when it is unset, for
ungrouped staves and for grouped staves that do not have the
relevant ‘StaffGrouper’ property set (‘staff-staff-spacing’ or
‘staffgroup-staff-spacing’).
‘details’ (list)
Alist of parameters for detailed grob behavior. More information
on the allowed parameters for a grob can be found by looking at the
top of the Internals Reference page for each interface having a
‘details’ property.
‘digit-names’ (vector)
Names for string finger digits.
‘direction’ (direction)
If ‘side-axis’ is ‘0’ (or ‘X’), then this property determines
whether the object is placed ‘LEFT’, ‘CENTER’ or ‘RIGHT’ with
respect to the other object. Otherwise, it determines whether the
object is placed ‘UP’, ‘CENTER’ or ‘DOWN’. Numerical values may
also be used: ‘UP’=‘1’, ‘DOWN’=‘-1’, ‘LEFT’=‘-1’, ‘RIGHT’=‘1’,
‘CENTER’=‘0’.
‘dot-count’ (integer)
The number of dots.
‘dot-negative-kern’ (number)
The space to remove between a dot and a slash in percent repeat
glyphs. Larger values bring the two elements closer together.
‘dot-placement-list’ (list)
List consisting of ‘(DESCRIPTION STRING-NUMBER FRET-NUMBER
FINGER-NUMBER)’ entries used to define fret diagrams.
‘duration-log’ (integer)
The 2-log of the note head duration, i.e., ‘0’ = whole note, ‘1’ =
half note, etc.
‘eccentricity’ (number)
How asymmetrical to make a slur. Positive means move the center to
the right.
‘edge-height’ (pair)
A pair of numbers specifying the heights of the vertical edges:
‘(LEFT-HEIGHT . RIGHT-HEIGHT)’.
‘edge-text’ (pair)
A pair specifying the texts to be set at the edges: ‘(LEFT-TEXT .
RIGHT-TEXT)’.
‘expand-limit’ (integer)
Maximum number of measures expanded in church rests.
‘extra-dy’ (number)
Slope glissandi this much extra.
‘extra-offset’ (pair of numbers)
A pair representing an offset. This offset is added just before
outputting the symbol, so the typesetting engine is completely
oblivious to it. The values are measured in ‘staff-space’ units of
the staff’s ‘StaffSymbol’.
‘extra-spacing-height’ (pair of numbers)
In the horizontal spacing problem, we increase the height of each
item by this amount (by adding the ‘car’ to the bottom of the item
and adding the ‘cdr’ to the top of the item). In order to make a
grob infinitely high (to prevent the horizontal spacing problem
from placing any other grobs above or below this grob), set this to
‘(-inf.0 . +inf.0)’.
‘extra-spacing-width’ (pair of numbers)
In the horizontal spacing problem, we pad each item by this amount
(by adding the ‘car’ on the left side of the item and adding the
‘cdr’ on the right side of the item). In order to make a grob take
up no horizontal space at all, set this to ‘(+inf.0 . -inf.0)’.
‘flag-count’ (number)
The number of tremolo beams.
‘flat-positions’ (list)
Flats in key signatures are placed within the specified ranges of
staff-positions. The general form is a list of pairs, with one
pair for each type of clef, in order of the staff-position at which
each clef places C: ‘(alto treble tenor soprano baritone
mezzosoprano bass)’. If the list contains a single element it
applies for all clefs. A single number in place of a pair sets
accidentals within the octave ending at that staff-position.
‘font-encoding’ (symbol)
The font encoding is the broadest category for selecting a font.
Currently, only lilypond’s system fonts (Emmentaler) are using this
property. Available values are ‘fetaMusic’ (Emmentaler),
‘fetaBraces’, ‘fetaText’ (Emmentaler).
‘font-family’ (symbol)
The font family is the broadest category for selecting text fonts.
Options include: ‘sans’, ‘roman’.
‘font-name’ (string)
Specifies a file name (without extension) of the font to load.
This setting overrides selection using ‘font-family’, ‘font-series’
and ‘font-shape’.
‘font-series’ (symbol)
Select the series of a font. Choices include ‘medium’, ‘bold’,
‘bold-narrow’, etc.
‘font-shape’ (symbol)
Select the shape of a font. Choices include ‘upright’, ‘italic’,
‘caps’.
‘font-size’ (number)
The font size, compared to the ‘normal’ size. ‘0’ is style-sheet’s
normal size, ‘-1’ is smaller, ‘+1’ is bigger. Each step of 1 is
approximately 12% larger; 6 steps are exactly a factor 2 larger.
Fractional values are allowed.
‘footnote’ (boolean)
Should this be a footnote or in-note?
‘footnote-music’ (music)
Music creating a footnote.
‘footnote-text’ (markup)
A footnote for the grob.
‘force-hshift’ (number)
This specifies a manual shift for notes in collisions. The unit is
the note head width of the first voice note. This is used by
(lilypond-internals)note-collision-interface.
‘forced-spacing’ (number)
Spacing forced between grobs, used in various ligature engravers.
‘fraction’ (fraction, as pair)
Numerator and denominator of a time signature object.
‘french-beaming’ (boolean)
Use French beaming style for this stem. The stem stops at the
innermost beams.
‘fret-diagram-details’ (list)
An alist of detailed grob properties for fret diagrams. Each alist
entry consists of a ‘(PROPERTY . VALUE)’ pair. The properties
which can be included in ‘fret-diagram-details’ include the
following:
• ‘barre-type’ – Type of barre indication used. Choices include
‘curved’, ‘straight’, and ‘none’. Default ‘curved’.
• ‘capo-thickness’ – Thickness of capo indicator, in multiples
of fret-space. Default value 0.5.
• ‘dot-color’ – Color of dots. Options include ‘black’ and
‘white’. Default ‘black’.
• ‘dot-label-font-mag’ – Magnification for font used to label
fret dots. Default value 1.
• ‘dot-position’ – Location of dot in fret space. Default 0.6
for dots without labels, 0.95-‘dot-radius’ for dots with
labels.
• ‘dot-radius’ – Radius of dots, in terms of fret spaces.
Default value 0.425 for labeled dots, 0.25 for unlabeled dots.
• ‘finger-code’ – Code for the type of fingering indication
used. Options include ‘none’, ‘in-dot’, and ‘below-string’.
Default ‘none’ for markup fret diagrams, ‘below-string’ for
‘FretBoards’ fret diagrams.
• ‘fret-count’ – The number of frets. Default 4.
• ‘fret-label-custom-format’ – The format string to be used
label the lowest fret number, when ‘number-type’ equals to
‘custom’. Default "~a".
• ‘fret-label-font-mag’ – The magnification of the font used to
label the lowest fret number. Default 0.5.
• ‘fret-label-vertical-offset’ – The offset of the fret label
from the center of the fret in direction parallel to strings.
Default 0.
• ‘label-dir’ – Side to which the fret label is attached. ‘-1’,
‘LEFT’, or ‘DOWN’ for left or down; ‘1’, ‘RIGHT’, or ‘UP’ for
right or up. Default ‘RIGHT’.
• ‘mute-string’ – Character string to be used to indicate muted
string. Default ‘"x"’.
• ‘number-type’ – Type of numbers to use in fret label. Choices
include ‘roman-lower’, ‘roman-upper’, ‘arabic’ and ‘custom’.
In the later case, the format string is supplied by the
‘fret-label-custom-format’ property. Default ‘roman-lower’.
• ‘open-string’ – Character string to be used to indicate open
string. Default ‘"o"’.
• ‘orientation’ – Orientation of fret-diagram. Options include
‘normal’, ‘landscape’, and ‘opposing-landscape’. Default
‘normal’.
• ‘string-count’ – The number of strings. Default 6.
• ‘string-label-font-mag’ – The magnification of the font used
to label fingerings at the string, rather than in the dot.
Default value 0.6 for ‘normal’ orientation, 0.5 for
‘landscape’ and ‘opposing-landscape’.
• ‘string-thickness-factor’ – Factor for changing thickness of
each string in the fret diagram. Thickness of string K is
given by ‘thickness’ * (1+‘string-thickness-factor’) ^ (K-1).
Default 0.
• ‘top-fret-thickness’ – The thickness of the top fret line, as
a multiple of the standard thickness. Default value 3.
• ‘xo-font-magnification’ – Magnification used for mute and open
string indicators. Default value 0.5.
• ‘xo-padding’ – Padding for open and mute indicators from top
fret. Default value 0.25.
‘full-length-padding’ (number)
How much padding to use at the right side of a full-length tuplet
bracket.
‘full-length-to-extent’ (boolean)
Run to the extent of the column for a full-length tuplet bracket.
‘full-measure-extra-space’ (number)
Extra space that is allocated at the beginning of a measure with
only one note. This property is read from the
NonMusicalPaperColumn that begins the measure.
‘full-size-change’ (boolean)
Don’t make a change clef smaller.
‘gap’ (dimension, in staff space)
Size of a gap in a variable symbol.
‘gap-count’ (integer)
Number of gapped beams for tremolo.
‘glissando-skip’ (boolean)
Should this ‘NoteHead’ be skipped by glissandi?
‘glyph’ (string)
A string determining what ‘style’ of glyph is typeset. Valid
choices depend on the function that is reading this property.
In combination with (span) bar lines, it is a string resembling the
bar line appearance in ASCII form.
‘glyph-name’ (string)
The glyph name within the font.
In the context of (span) bar lines, GLYPH-NAME represents a
processed form of ‘glyph’, where decisions about line breaking etc.
are already taken.
‘glyph-name-alist’ (list)
An alist of key-string pairs.
‘graphical’ (boolean)
Display in graphical (vs. text) form.
‘grow-direction’ (direction)
Crescendo or decrescendo?
‘hair-thickness’ (number)
Thickness of the thin line in a bar line.
‘harp-pedal-details’ (list)
An alist of detailed grob properties for harp pedal diagrams. Each
alist entry consists of a ‘(PROPERTY . VALUE)’ pair. The
properties which can be included in harp-pedal-details include the
following:
• ‘box-offset’ – Vertical shift of the center of flat/sharp
pedal boxes above/below the horizontal line. Default
value 0.8.
• ‘box-width’ – Width of each pedal box. Default value 0.4.
• ‘box-height’ – Height of each pedal box. Default value 1.0.
• ‘space-before-divider’ – Space between boxes before the first
divider (so that the diagram can be made symmetric). Default
value 0.8.
• ‘space-after-divider’ – Space between boxes after the first
divider. Default value 0.8.
• ‘circle-thickness’ – Thickness (in unit of the line-thickness)
of the ellipse around circled pedals. Default value 0.5.
• ‘circle-x-padding’ – Padding in X direction of the ellipse
around circled pedals. Default value 0.15.
• ‘circle-y-padding’ – Padding in Y direction of the ellipse
around circled pedals. Default value 0.2.
‘head-direction’ (direction)
Are the note heads left or right in a semitie?
‘height’ (dimension, in staff space)
Height of an object in ‘staff-space’ units.
‘height-limit’ (dimension, in staff space)
Maximum slur height: The longer the slur, the closer it is to this
height.
‘hide-tied-accidental-after-break’ (boolean)
If set, an accidental that appears on a tied note after a line
break will not be displayed.
‘horizon-padding’ (number)
The amount to pad the axis along which a ‘Skyline’ is built for the
‘side-position-interface’.
‘horizontal-shift’ (integer)
An integer that identifies ranking of ‘NoteColumn’s for horizontal
shifting. This is used by
(lilypond-internals)note-collision-interface.
‘horizontal-skylines’ (pair of skylines)
Two skylines, one to the left and one to the right of this grob.
‘id’ (string)
An id string for the grob. Depending on the typestting backend
being used, this id will be assigned to a group containing all of
the stencils that comprise a given grob. For example, in the svg
backend, the string will be assigned to the ‘id’ attribute of a
group (<g>) that encloses the stencils that comprise the grob. In
the Postscript backend, as there is no way to group items, the
setting of the id property will have no effect.
‘ignore-collision’ (boolean)
If set, don’t do note collision resolution on this ‘NoteColumn’.
‘implicit’ (boolean)
Is this an implicit bass figure?
‘inspect-index’ (integer)
If debugging is set, set beam and slur configuration to this index,
and print the respective scores.
‘inspect-quants’ (pair of numbers)
If debugging is set, set beam and slur quants to this position, and
print the respective scores.
‘keep-inside-line’ (boolean)
If set, this column cannot have objects sticking into the margin.
‘kern’ (dimension, in staff space)
Amount of extra white space to add. For bar lines, this is the
amount of space after a thick line.
‘knee’ (boolean)
Is this beam kneed?
‘knee-spacing-correction’ (number)
Factor for the optical correction amount for kneed beams. Set
between ‘0’ for no correction and ‘1’ for full correction.
‘labels’ (list)
List of labels (symbols) placed on a column.
‘layer’ (integer)
An integer which determines the order of printing objects. Objects
with the lowest value of layer are drawn first, then objects with
progressively higher values are drawn, so objects with higher
values overwrite objects with lower values. By default most
objects are assigned a layer value of 1.
‘ledger-extra’ (dimension, in staff space)
Extra distance from staff line to draw ledger lines for.
‘ledger-line-thickness’ (pair of numbers)
The thickness of ledger lines. It is the sum of 2 numbers: The
first is the factor for line thickness, and the second for staff
space. Both contributions are added.
‘ledger-positions’ (list)
Repeating pattern for the vertical positions of ledger lines.
Bracketed groups are always shown together.
‘left-bound-info’ (list)
An alist of properties for determining attachments of spanners to
edges.
‘left-padding’ (dimension, in staff space)
The amount of space that is put left to an object (e.g., a lyric
extender).
‘length’ (dimension, in staff space)
User override for the stem length of unbeamed stems.
‘length-fraction’ (number)
Multiplier for lengths. Used for determining ledger lines and stem
lengths.
‘line-break-penalty’ (number)
Penalty for a line break at this column. This affects the choices
of the line breaker; it avoids a line break at a column with a
positive penalty and prefers a line break at a column with a
negative penalty.
‘line-break-permission’ (symbol)
Instructs the line breaker on whether to put a line break at this
column. Can be ‘force’ or ‘allow’.
‘line-break-system-details’ (list)
An alist of properties to use if this column is the start of a
system.
‘line-count’ (integer)
The number of staff lines.
‘line-positions’ (list)
Vertical positions of staff lines.
‘line-thickness’ (number)
The thickness of the tie or slur contour.
‘long-text’ (markup)
Text markup. See (lilypond-notation)Formatting text.
‘max-beam-connect’ (integer)
Maximum number of beams to connect to beams from this stem.
Further beams are typeset as beamlets.
‘max-stretch’ (number)
The maximum amount that this ‘VerticalAxisGroup’ can be vertically
stretched (for example, in order to better fill a page).
‘maximum-gap’ (number)
Maximum value allowed for ‘gap’ property.
‘measure-count’ (integer)
The number of measures for a multi-measure rest.
‘measure-length’ (moment)
Length of a measure. Used in some spacing situations.
‘merge-differently-dotted’ (boolean)
Merge note heads in collisions, even if they have a different
number of dots. This is normal notation for some types of
polyphonic music.
‘merge-differently-dotted’ only applies to opposing stem directions
(i.e., voice 1 & 2).
‘merge-differently-headed’ (boolean)
Merge note heads in collisions, even if they have different note
heads. The smaller of the two heads is rendered invisible. This
is used in polyphonic guitar notation. The value of this setting
is used by (lilypond-internals)note-collision-interface.
‘merge-differently-headed’ only applies to opposing stem directions
(i.e., voice 1 & 2).
‘minimum-distance’ (dimension, in staff space)
Minimum distance between rest and notes or beam.
‘minimum-length’ (dimension, in staff space)
Try to make a spanner at least this long, normally in the
horizontal direction. This requires an appropriate callback for
the ‘springs-and-rods’ property. If added to a ‘Tie’, this sets
the minimum distance between noteheads.
‘minimum-length-fraction’ (number)
Minimum length of ledger line as fraction of note head size.
‘minimum-space’ (dimension, in staff space)
Minimum distance that the victim should move (after padding).
‘minimum-X-extent’ (pair of numbers)
Minimum size of an object in X dimension, measured in ‘staff-space’
units.
‘minimum-Y-extent’ (pair of numbers)
Minimum size of an object in Y dimension, measured in ‘staff-space’
units.
‘neutral-direction’ (direction)
Which direction to take in the center of the staff.
‘neutral-position’ (number)
Position (in half staff spaces) where to flip the direction of
custos stem.
‘next’ (graphical (layout) object)
Object that is next relation (e.g., the lyric syllable following an
extender).
‘no-alignment’ (boolean)
If set, don’t place this grob in a ‘VerticalAlignment’; rather,
place it using its own ‘Y-offset’ callback.
‘no-ledgers’ (boolean)
If set, don’t draw ledger lines on this object.
‘no-stem-extend’ (boolean)
If set, notes with ledger lines do not get stems extending to the
middle staff line.
‘non-break-align-symbols’ (list)
A list of symbols that determine which NON-break-aligned interfaces
to align this to.
‘non-default’ (boolean)
Set for manually specified clefs.
‘non-musical’ (boolean)
True if the grob belongs to a ‘NonMusicalPaperColumn’.
‘nonstaff-nonstaff-spacing’ (list)
The spacing alist controlling the distance between the current
non-staff line and the next non-staff line in the direction of
‘staff-affinity’, if both are on the same side of the related
staff, and ‘staff-affinity’ is either ‘UP’ or ‘DOWN’. See
‘staff-staff-spacing’ for a description of the alist structure.
‘nonstaff-relatedstaff-spacing’ (list)
The spacing alist controlling the distance between the current
non-staff line and the nearest staff in the direction of
‘staff-affinity’, if there are no non-staff lines between the two,
and ‘staff-affinity’ is either ‘UP’ or ‘DOWN’. If ‘staff-affinity’
is ‘CENTER’, then ‘nonstaff-relatedstaff-spacing’ is used for the
nearest staves on _both_ sides, even if other non-staff lines
appear between the current one and either of the staves. See
‘staff-staff-spacing’ for a description of the alist structure.
‘nonstaff-unrelatedstaff-spacing’ (list)
The spacing alist controlling the distance between the current
non-staff line and the nearest staff in the opposite direction from
‘staff-affinity’, if there are no other non-staff lines between the
two, and ‘staff-affinity’ is either ‘UP’ or ‘DOWN’. See
‘staff-staff-spacing’ for a description of the alist structure.
‘normalized-endpoints’ (pair)
Represents left and right placement over the total spanner, where
the width of the spanner is normalized between 0 and 1.
‘note-names’ (vector)
Vector of strings containing names for easy-notation note heads.
‘outside-staff-horizontal-padding’ (number)
By default, an outside-staff-object can be placed so that is it
very close to another grob horizontally. If this property is set,
the outside-staff-object is raised so that it is not so close to
its neighbor.
‘outside-staff-padding’ (number)
The padding to place between grobs when spacing according to
‘outside-staff-priority’. Two grobs with different
‘outside-staff-padding’ values have the larger value of padding
between them.
‘outside-staff-placement-directive’ (symbol)
One of four directives telling how outside staff objects should be
placed.
• ‘left-to-right-greedy’ – Place each successive grob from left
to right.
• ‘left-to-right-polite’ – Place a grob from left to right only
if it does not potentially overlap with another grob that has
been placed on a pass through a grob array. If there is
overlap, do another pass to determine placement.
• ‘right-to-left-greedy’ – Same as ‘left-to-right-greedy’, but
from right to left.
• ‘right-to-left-polite’ – Same as ‘left-to-right-polite’, but
from right to left.
‘outside-staff-priority’ (number)
If set, the grob is positioned outside the staff in such a way as
to avoid all collisions. In case of a potential collision, the
grob with the smaller ‘outside-staff-priority’ is closer to the
staff.
‘packed-spacing’ (boolean)
If set, the notes are spaced as tightly as possible.
‘padding’ (dimension, in staff space)
Add this much extra space between objects that are next to each
other.
‘padding-pairs’ (list)
An alist mapping ‘(NAME . NAME)’ to distances.
‘page-break-penalty’ (number)
Penalty for page break at this column. This affects the choices of
the page breaker; it avoids a page break at a column with a
positive penalty and prefers a page break at a column with a
negative penalty.
‘page-break-permission’ (symbol)
Instructs the page breaker on whether to put a page break at this
column. Can be ‘force’ or ‘allow’.
‘page-turn-penalty’ (number)
Penalty for a page turn at this column. This affects the choices
of the page breaker; it avoids a page turn at a column with a
positive penalty and prefers a page turn at a column with a
negative penalty.
‘page-turn-permission’ (symbol)
Instructs the page breaker on whether to put a page turn at this
column. Can be ‘force’ or ‘allow’.
‘parenthesized’ (boolean)
Parenthesize this grob.
‘positions’ (pair of numbers)
Pair of staff coordinates ‘(LEFT . RIGHT)’, where both LEFT and
RIGHT are in ‘staff-space’ units of the current staff. For slurs,
this value selects which slur candidate to use; if extreme
positions are requested, the closest one is taken.
‘prefer-dotted-right’ (boolean)
For note collisions, prefer to shift dotted up-note to the right,
rather than shifting just the dot.
‘protrusion’ (number)
In an arpeggio bracket, the length of the horizontal edges.
‘ratio’ (number)
Parameter for slur shape. The higher this number, the quicker the
slur attains its ‘height-limit’.
‘remove-empty’ (boolean)
If set, remove group if it contains no interesting items.
‘remove-first’ (boolean)
Remove the first staff of an orchestral score?
‘replacement-alist’ (list)
Alist of strings. The key is a string of the pattern to be
replaced. The value is a string of what should be displayed.
Useful for ligatures.
‘restore-first’ (boolean)
Print a natural before the accidental.
‘rhythmic-location’ (rhythmic location)
Where (bar number, measure position) in the score.
‘right-bound-info’ (list)
An alist of properties for determining attachments of spanners to
edges.
‘right-padding’ (dimension, in staff space)
Space to insert on the right side of an object (e.g., between note
and its accidentals).
‘rotation’ (list)
Number of degrees to rotate this object, and what point to rotate
around. For example, ‘'(45 0 0)’ rotates by 45 degrees around the
center of this object.
‘round-up-exceptions’ (list)
A list of pairs where car is the numerator and cdr the denominator
of a moment. Each pair in this list means that the multi-measure
rests of the corresponding length will be rounded up to the longer
rest. See ROUND-UP-TO-LONGER-REST.
‘round-up-to-longer-rest’ (boolean)
Displays the longer multi-measure rest when the length of a measure
is between two values of ‘usable-duration-logs’. For example,
displays a breve instead of a whole in a 3/2 measure.
‘rounded’ (boolean)
Decide whether lines should be drawn rounded or not.
‘same-direction-correction’ (number)
Optical correction amount for stems that are placed in tight
configurations. This amount is used for stems with the same
direction to compensate for note head to stem distance.
‘script-priority’ (number)
A key for determining the order of scripts in a stack, by being
added to the position of the script in the user input, the sum
being the overall priority. Smaller means closer to the head.
‘self-alignment-X’ (number)
Specify alignment of an object. The value ‘-1’ means left aligned,
‘0’ centered, and ‘1’ right-aligned in X direction. Other
numerical values may also be specified.
‘self-alignment-Y’ (number)
Like ‘self-alignment-X’ but for the Y axis.
‘sharp-positions’ (list)
Sharps in key signatures are placed within the specified ranges of
staff-positions. The general form is a list of pairs, with one
pair for each type of clef, in order of the staff-position at which
each clef places C: ‘(alto treble tenor soprano baritone
mezzosoprano bass)’. If the list contains a single element it
applies for all clefs. A single number in place of a pair sets
accidentals within the octave ending at that staff-position.
‘shorten-pair’ (pair of numbers)
The lengths to shorten a text-spanner on both sides, for example a
pedal bracket. Positive values shorten the text-spanner, while
negative values lengthen it.
‘shortest-duration-space’ (dimension, in staff space)
Start with this much space for the shortest duration. This is
expressed in ‘spacing-increment’ as unit. See also
(lilypond-internals)spacing-spanner-interface.
‘shortest-playing-duration’ (moment)
The duration of the shortest note playing here.
‘shortest-starter-duration’ (moment)
The duration of the shortest note that starts here.
‘side-axis’ (number)
If the value is ‘X’ (or equivalently ‘0’), the object is placed
horizontally next to the other object. If the value is ‘Y’ or ‘1’,
it is placed vertically.
‘side-relative-direction’ (direction)
Multiply direction of ‘direction-source’ with this to get the
direction of this object.
‘simple-Y’ (boolean)
Should the Y placement of a spanner disregard changes in system
heights?
‘size’ (number)
Size of object, relative to standard size.
‘skip-quanting’ (boolean)
Should beam quanting be skipped?
‘skyline-horizontal-padding’ (number)
For determining the vertical distance between two staves, it is
possible to have a configuration which would result in a tight
interleaving of grobs from the top staff and the bottom staff. The
larger this parameter is, the farther apart the staves are placed
in such a configuration.
‘skyline-vertical-padding’ (number)
The amount by which the left and right skylines of a column are
padded vertically, beyond the ‘Y-extent’s and
‘extra-spacing-height’s of the constituent grobs in the column.
Increase this to prevent interleaving of grobs from adjacent
columns.
‘slash-negative-kern’ (number)
The space to remove between slashes in percent repeat glyphs.
Larger values bring the two elements closer together.
‘slope’ (number)
The slope of this object.
‘slur-padding’ (number)
Extra distance between slur and script.
‘snap-radius’ (number)
The maximum distance between two objects that will cause them to
snap to alignment along an axis.
‘space-alist’ (list)
A table that specifies distances between prefatory items, like clef
and time-signature. The format is an alist of spacing tuples:
‘(BREAK-ALIGN-SYMBOL TYPE . DISTANCE)’, where TYPE can be the
symbols ‘minimum-space’ or ‘extra-space’.
‘space-to-barline’ (boolean)
If set, the distance between a note and the following non-musical
column will be measured to the bar line instead of to the beginning
of the non-musical column. If there is a clef change followed by a
bar line, for example, this means that we will try to space the
non-musical column as though the clef is not there.
‘spacing-increment’ (number)
Add this much space for a doubled duration. Typically, the width
of a note head. See also
(lilypond-internals)spacing-spanner-interface.
‘spacing-pair’ (pair)
A pair of alignment symbols which set an object’s spacing relative
to its left and right ‘BreakAlignment’s.
For example, a ‘MultiMeasureRest’ will ignore prefatory items at
its bounds (i.e., clefs, key signatures and time signatures) using
the following override:
\override MultiMeasureRest
#'spacing-pair = #'(staff-bar . staff-bar)
‘spanner-id’ (string)
An identifier to distinguish concurrent spanners.
‘springs-and-rods’ (boolean)
Dummy variable for triggering spacing routines.
‘stacking-dir’ (direction)
Stack objects in which direction?
‘staff-affinity’ (direction)
The direction of the staff to use for spacing the current non-staff
line. Choices are ‘UP’, ‘DOWN’, and ‘CENTER’. If ‘CENTER’, the
non-staff line will be placed equidistant between the two nearest
staves on either side, unless collisions or other spacing
constraints prevent this. Setting ‘staff-affinity’ for a staff
causes it to be treated as a non-staff line. Setting
‘staff-affinity’ to ‘#f’ causes a non-staff line to be treated as a
staff.
‘staff-padding’ (dimension, in staff space)
Maintain this much space between reference points and the staff.
Its effect is to align objects of differing sizes (like the
dynamics p and f) on their baselines.
‘staff-position’ (number)
Vertical position, measured in half staff spaces, counted from the
middle line.
‘staff-space’ (dimension, in staff space)
Amount of space between staff lines, expressed in global
‘staff-space’.
‘staff-staff-spacing’ (list)
When applied to a staff-group’s ‘StaffGrouper’ grob, this spacing
alist controls the distance between consecutive staves within the
staff-group. When applied to a staff’s ‘VerticalAxisGroup’ grob,
it controls the distance between the staff and the nearest staff
below it in the same system, replacing any settings inherited from
the ‘StaffGrouper’ grob of the containing staff-group, if there is
one. This property remains in effect even when non-staff lines
appear between staves. The alist can contain the following keys:
• ‘basic-distance’ – the vertical distance, measured in
staff-spaces, between the reference points of the two items
when no collisions would result, and no stretching or
compressing is in effect.
• ‘minimum-distance’ – the smallest allowable vertical distance,
measured in staff-spaces, between the reference points of the
two items, when compressing is in effect.
• ‘padding’ – the minimum required amount of unobstructed
vertical whitespace between the bounding boxes (or skylines)
of the two items, measured in staff-spaces.
• ‘stretchability’ – a unitless measure of the dimension’s
relative propensity to stretch. If zero, the distance will
not stretch (unless collisions would result).
‘staffgroup-staff-spacing’ (list)
The spacing alist controlling the distance between the last staff
of the current staff-group and the staff just below it in the same
system, even if one or more non-staff lines exist between the two
staves. If the ‘staff-staff-spacing’ property of the staff’s
‘VerticalAxisGroup’ grob is set, that is used instead. See
‘staff-staff-spacing’ for a description of the alist structure.
‘stem-attachment’ (pair of numbers)
An ‘(X . Y)’ pair where the stem attaches to the notehead.
‘stem-begin-position’ (number)
User override for the begin position of a stem.
‘stem-spacing-correction’ (number)
Optical correction amount for stems that are placed in tight
configurations. For opposite directions, this amount is the
correction for two normal sized stems that overlap completely.
‘stemlet-length’ (number)
How long should be a stem over a rest?
‘stencil’ (stencil)
The symbol to print.
‘stencils’ (list)
Multiple stencils, used as intermediate value.
‘strict-grace-spacing’ (boolean)
If set, main notes are spaced normally, then grace notes are put
left of the musical columns for the main notes.
‘strict-note-spacing’ (boolean)
If set, unbroken columns with non-musical material (clefs, bar
lines, etc.) are not spaced separately, but put before musical
columns.
‘stroke-style’ (string)
Set to ‘"grace"’ to turn stroke through flag on.
‘style’ (symbol)
This setting determines in what style a grob is typeset. Valid
choices depend on the ‘stencil’ callback reading this property.
‘text’ (markup)
Text markup. See (lilypond-notation)Formatting text.
‘text-direction’ (direction)
This controls the ordering of the words. The default ‘RIGHT’ is
for roman text. Arabic or Hebrew should use ‘LEFT’.
‘thick-thickness’ (number)
Bar line thickness, measured in ‘line-thickness’.
‘thickness’ (number)
Line thickness, generally measured in ‘line-thickness’.
‘thin-kern’ (number)
The space after a hair-line in a bar line.
‘tie-configuration’ (list)
List of ‘(POSITION . DIR)’ pairs, indicating the desired tie
configuration, where POSITION is the offset from the center of the
staff in staff space and DIR indicates the direction of the tie
(‘1’=>up, ‘-1’=>down, ‘0’=>center). A non-pair entry in the list
causes the corresponding tie to be formatted automatically.
‘to-barline’ (boolean)
If true, the spanner will stop at the bar line just before it would
otherwise stop.
‘toward-stem-shift’ (number)
Amount by which scripts are shifted toward the stem if their
direction coincides with the stem direction. ‘0.0’ means keep the
default position (centered on the note head), ‘1.0’ means centered
on the stem. Interpolated values are possible.
‘transparent’ (boolean)
This makes the grob invisible.
‘uniform-stretching’ (boolean)
If set, items stretch proportionally to their durations. This
looks better in complex polyphonic patterns.
‘usable-duration-logs’ (list)
List of ‘duration-log’s that can be used in typesetting the grob.
‘use-skylines’ (boolean)
Should skylines be used for side positioning?
‘used’ (boolean)
If set, this spacing column is kept in the spacing problem.
‘vertical-skylines’ (pair of skylines)
Two skylines, one above and one below this grob.
‘when’ (moment)
Global time step associated with this column happen?
‘whiteout’ (boolean)
If true, the grob is printed over a white background to white-out
underlying material, if the grob is visible. Usually #f by
default.
‘width’ (dimension, in staff space)
The width of a grob measured in staff space.
‘word-space’ (dimension, in staff space)
Space to insert between words in texts.
‘X-extent’ (pair of numbers)
Extent (size) in the X direction, measured in staff-space units,
relative to object’s reference point.
‘X-offset’ (number)
The horizontal amount that this object is moved relative to its
X-parent.
‘X-positions’ (pair of numbers)
Pair of X staff coordinates of a spanner in the form ‘(LEFT .
RIGHT)’, where both LEFT and RIGHT are in ‘staff-space’ units of
the current staff.
‘Y-extent’ (pair of numbers)
Extent (size) in the Y direction, measured in staff-space units,
relative to object’s reference point.
‘Y-offset’ (number)
The vertical amount that this object is moved relative to its
Y-parent.
‘zigzag-length’ (dimension, in staff space)
The length of the lines of a zigzag, relative to ‘zigzag-width’. A
value of ‘1’ gives 60-degree zigzags.
‘zigzag-width’ (dimension, in staff space)
The width of one zigzag squiggle. This number is adjusted slightly
so that the glissando line can be constructed from a whole number
of squiggles.