LilyPond Internals Reference: 3.4 Internal backend properties

## 3.4 Internal backend properties

`accidental-grob` (graphical (layout) object)

  The accidental for this note.

`accidental-grobs` (association list (list of pairs))

  An alist with `(notename . groblist)` entries.

`add-cauda` (boolean)

  Does this flexa require an additional cauda on the left side?

`add-join` (boolean)

  Is this ligature head-joined with the next one by a vertical line?

`add-stem` (boolean)

  Is this ligature head a virga and therefore needs an additional stem on the right side?

`adjacent-pure-heights` (pair)

  A pair of vectors. Used by a `VerticalAxisGroup` to cache the `Y-extent`s of different column ranges.

`adjacent-spanners` (array of grobs)

  An array of directly neighboring dynamic spanners.

`all-elements` (array of grobs)

  An array of all grobs in this line. Its function is to protect objects from being garbage collected.

`annotation` (string)

  Annotate a grob for debug purposes.

`ascendens` (boolean)

  Is this neume of ascending type?

`auctum` (boolean)

  Is this neume liquescentically augmented?

`axis-group-parent-X` (graphical (layout) object)

  Containing X axis group.

`axis-group-parent-Y` (graphical (layout) object)

  Containing Y axis group.

`bars` (array of grobs)

  An array of bar line pointers.

`beam` (graphical (layout) object)

  A pointer to the beam, if applicable.

`beam-segments` (list)

  Internal representation of beam segments.

`begin-of-line-visible` (boolean)

  Set to make `ChordName` or `FretBoard` be visible only at beginning of line or at chord changes.

`bezier` (graphical (layout) object)

  A pointer to a Bézier curve, for use by control points and polygons.

`bound-alignment-interfaces` (list)

  Interfaces to be used for positioning elements that align with a column.

`bounded-by-me` (array of grobs)

  An array of spanners that have this column as start/begin point. Only columns that have grobs or act as bounds are spaced.

`bracket` (graphical (layout) object)

  The bracket for a number.

`bracket-text` (graphical (layout) object)

  The text for an analysis bracket.

`break-alignment` (graphical (layout) object)

  The `BreakAlignment` in a `NonMusicalPaperColumn`.

`c0-position` (integer)

  An integer indicating the position of middle C.

`cause` (any type)

  Any kind of causation objects (i.e., music, or perhaps translator) that was the cause for this grob.

`cavum` (boolean)

  Is this neume outlined?

`chord-names` (array of grobs)

  Array of chord names.

`columns` (array of grobs)

  An array of grobs, typically containing `PaperColumn` or `NoteColumn` objects.

`concurrent-hairpins` (array of grobs)

  All concurrent hairpins.

`conditional-elements` (array of grobs)

  Internal use only.

`context-info` (integer)

  Within a ligature, the final glyph or shape of a head may be affected by the left and/or right neighbour head. `context-info` holds for each head such information about the left and right neighbour, encoded as a bit mask.

`covered-grobs` (array of grobs)

  Grobs that could potentially collide with a beam.

`cross-staff` (boolean)

  True for grobs whose `Y-extent` depends on inter-staff spacing. The extent is measured relative to the grobs’s parent staff (more generally, its `VerticalAxisGroup`) so this boolean flags grobs that are not rigidly fixed to their parent staff. Beams that join notes from two staves are `cross-staff`. Grobs that are positioned around such beams are also `cross-staff`. Grobs that are grouping objects, however, like `VerticalAxisGroups` will not in general be marked `cross-staff` when some of the members of the group are `cross-staff`.

`delta-position` (number)

  The vertical position difference.

`deminutum` (boolean)

  Is this neume deminished?

`descendens` (boolean)

  Is this neume of descendent type?

`direction-source` (graphical (layout) object)

  In case `side-relative-direction` is set, which grob to get the direction from.

`display-cautionary` (boolean)

  Should the grob be displayed as a cautionary grob?

`dot` (graphical (layout) object)

  A reference to a `Dots` object.

`dot-stencil` (stencil)

  The stencil for an individual dot, as opposed to a group of several dots.

`dots` (array of grobs)

  Multiple `Dots` objects.

`elements` (array of grobs)

  An array of grobs; the type is depending on the grob where this is set in.

`encompass-objects` (array of grobs)

  Objects that a slur should avoid in addition to notes and stems.

`fa-styles` (symbol list)

  List of note head styles that identify ‘fa’ shape note heads.

`figures` (array of grobs)

  Figured bass objects for continuation line.

`flag` (graphical (layout) object)

  A pointer to a `Flag` object.

`flexa-height` (dimension, in staff space)

  The height of a flexa shape in a ligature grob (in `staff-space` units).

`flexa-interval` (integer)

  The interval spanned by the two notes of a flexa shape (1 is a second, 7 is an octave).

`flexa-width` (dimension, in staff space)

  The width of a flexa shape in a ligature grob (in `staff-space` units).

`font` (font metric)

  A cached font metric object.

`footnote-stencil` (stencil)

  The stencil of a system’s footnotes.

`footnotes-after-line-breaking` (array of grobs)

  Footnote grobs of a broken system.

`footnotes-before-line-breaking` (array of grobs)

  Footnote grobs of a whole system.

`forced` (boolean)

  Manually forced accidental.

`french-beaming-stem-adjustment` (dimension, in staff space)

  Stem will be shortened by this amount of space in case of French beaming style.

`glissando-index` (integer)

  The index of a glissando in its note column.

`grace-spacing` (graphical (layout) object)

  A run of grace notes.

`has-span-bar` (pair)

  A pair of grobs containing the span bars to be drawn below and above the staff. If no span bar is in a position, the respective element is set to `#f`.

`head-width` (dimension, in staff space)

  The width of this ligature head.

`heads` (array of grobs)

  An array of note heads.

`ideal-distances` (list)

  `(obj . (dist . strength))` pairs.

`important-column-ranks` (vector)

  A cache of columns that contain `items-worth-living` data.

`in-note-direction` (direction)

  Direction to place in-notes above a system.

`in-note-padding` (number)

  Padding between in-notes.

`in-note-stencil` (stencil)

  The stencil of a system’s in-notes.

`inclinatum` (boolean)

  Is this neume an inclinatum?

`index` (non-negative, exact integer)

  For some grobs in a group, this is a number associated with the grob.

`interfaces` (list)

  A list of symbols indicating the interfaces supported by this object. It is initialized from the `meta` field.

`items-worth-living` (array of grobs)

  An array of interesting items. If empty in a particular staff, then that staff is erased.

`keep-alive-with` (array of grobs)

  An array of other `VerticalAxisGroup`s. If any of them are alive, then we will stay alive.

`least-squares-dy` (number)

  The ideal beam slope, without damping.

`left-items` (array of grobs)

  Grobs organized on the left by a spacing object.

`left-neighbor` (graphical (layout) object)

  A grob similar to this one, on its left. For columns, the right-most column that has a spacing wish for this column.

`ligature-flexa` (boolean)

  request joining note to the previous one in a flexa.

`linea` (boolean)

  Attach vertical lines to this neume?

`make-dead-when` (array of grobs)

  An array of other `VerticalAxisGroup`s. If any of them are alive, then we will turn dead.

`maybe-loose` (boolean)

  Used to mark a breakable column that is loose if and only if it is in the middle of a line.

`melody-spanner` (graphical (layout) object)

  The `MelodyItem` object for a stem.

`meta` (alist, with symbols as keys)

  Provide meta information. It is an alist with the entries `name` and `interfaces`.

`minimum-distances` (list)

  A list of rods that have the format `(obj . dist)`.

`minimum-translations-alist` (association list (list of pairs))

  An list of translations for a given start and end point.

`neighbors` (array of grobs)

  The X-axis neighbors of a grob. Used by the pure-from-neighbor-interface to determine various grob heights.

`normal-stems` (array of grobs)

  An array of visible stems.

`note-collision` (graphical (layout) object)

  The `NoteCollision` object of a dot column.

`note-columns` (array of grobs)

  An array of `NoteColumn` grobs.

`note-head` (graphical (layout) object)

  A single note head.

`note-heads` (array of grobs)

  An array of note head grobs.

`numbering-assertion-function` (any type)

  The function used to assert that footnotes are receiving correct automatic numbers.

`oriscus` (boolean)

  Is this neume an oriscus?

`pedal-text` (graphical (layout) object)

  A pointer to the text of a mixed-style piano pedal.

`pes-or-flexa` (boolean)

  Shall this neume be joined with the previous head?

`positioning-done` (boolean)

  Used to signal that a positioning element did its job. This ensures that a positioning is only done once.

`prefix-set` (number)

  A bit mask that holds all Gregorian head prefixes, such as `\virga` or `\quilisma`.

`primitive` (integer)

  A pointer to a ligature primitive, i.e., an item similar to a note head that is part of a ligature.

`pure-relevant-grobs` (array of grobs)

  All the grobs (items and spanners) that are relevant for finding the `pure-Y-extent`

`pure-relevant-items` (array of grobs)

  A subset of elements that are relevant for finding the `pure-Y-extent`.

`pure-relevant-spanners` (array of grobs)

  A subset of elements that are relevant for finding the `pure-Y-extent`.

`pure-Y-common` (graphical (layout) object)

  A cache of the `common_refpoint_of_array` of the `elements` grob set.

`pure-Y-extent` (pair of numbers)

  The estimated height of a system.

`pure-Y-offset-in-progress` (boolean)

  A debugging aid for catching cyclic dependencies.

`quantize-position` (boolean)

  If set, a vertical alignment is aligned to be within staff spaces.

`quantized-positions` (pair of numbers)

  The beam positions after quanting.

`quilisma` (boolean)

  Is this neume a quilisma?

`rest` (graphical (layout) object)

  A pointer to a `Rest` object.

`rest-collision` (graphical (layout) object)

  A rest collision that a rest is in.

`rests` (array of grobs)

  An array of rest objects.

`right-items` (array of grobs)

  Grobs organized on the right by a spacing object.

`right-neighbor` (graphical (layout) object)

  See `left-neighbor`.

`script-column` (graphical (layout) object)

  A `ScriptColumn` associated with a `Script` object.

`script-stencil` (pair)

  A pair `(type . arg)` which acts as an index for looking up a `Stencil` object.

`scripts` (array of grobs)

  An array of `Script` objects.

`shorten` (dimension, in staff space)

  The amount of space that a stem is shortened. Internally used to distribute beam shortening over stems.

`side-support-elements` (array of grobs)

  The side support, an array of grobs.

`slur` (graphical (layout) object)

  A pointer to a `Slur` object.

`space-increment` (dimension, in staff space)

  The amount by which the total duration of a multimeasure rest affects horizontal spacing. Each doubling of the duration adds `space-increment` to the length of the bar.

`spacing` (graphical (layout) object)

  The spacing spanner governing this section.

`spacing-wishes` (array of grobs)

  An array of note spacing or staff spacing objects.

`span-start` (boolean)

  Is the note head at the start of a spanner?

`spanner-broken` (boolean)

  Indicates whether spanner alignment should be broken after the current spanner.

`spanner-placement` (direction)

  The place of an annotation on a spanner. `LEFT` is for the first spanner, and `RIGHT` is for the last. `CENTER` will place it on the broken spanner that falls closest to the center of the length of the entire spanner, although this behavior is unpredictable in situations with lots of rhythmic diversity. For predictable results, use `LEFT` and `RIGHT`.

`staff-grouper` (graphical (layout) object)

  The staff grouper we belong to.

`staff-symbol` (graphical (layout) object)

  The staff symbol grob that we are in.

`stem` (graphical (layout) object)

  A pointer to a `Stem` object.

`stem-info` (pair)

  A cache of stem parameters.

`stems` (array of grobs)

  An array of stem objects.

`sticky-host` (graphical (layout) object)

  The grob that a sticky grob attaches to.

`stropha` (boolean)

  Is this neume a stropha?

`system-Y-offset` (number)

  The Y-offset (relative to the bottom of the top-margin of the page) of the system to which this staff belongs.

`tie` (graphical (layout) object)

  A pointer to a `Tie` object.

`ties` (array of grobs)

  A grob array of `Tie` objects.

`tremolo-flag` (graphical (layout) object)

  The tremolo object on a stem.

`tuplet-number` (graphical (layout) object)

  The number for a bracket.

`tuplet-start` (boolean)

  Is stem at the start of a tuplet?

`tuplets` (array of grobs)

  An array of smaller tuplet brackets.

`vertical-alignment` (graphical (layout) object)

  The VerticalAlignment in a System.

`vertical-skyline-elements` (array of grobs)

  An array of grobs used to create vertical skylines.

`virga` (boolean)

  Is this neume a virga?

`X-common` (graphical (layout) object)

  Common reference point for axis group.

`x-offset` (dimension, in staff space)

  Extra horizontal offset for ligature heads.

`Y-common` (graphical (layout) object)

  See `X-common`.

#### LilyPond – Internals Reference v2.24.4 (stable-branch).