LilyPond program-reference: 2.1.13 Lyrics

### 2.1.13 Lyrics

Corresponds to a voice with lyrics. Handles the printing of a single line of lyrics.

This context creates the following layout object(s):

InstrumentName, LyricExtender, LyricHyphen, LyricSpace, LyricText, StanzaNumber and VerticalAxisGroup.

This context sets the following properties:

- Set grob-property `bar-size` in BarLine to `0.1`.
- Set grob-property `font-size` in InstrumentName to `1.0`.
- Set grob-property `self-alignment-Y` in InstrumentName to `#f`.
- Set grob-property `padding` in SeparationItem to `0.2`.
- Set grob-property `keep-fixed-while-stretching` in VerticalAxisGroup to `#t`.
- Set grob-property `remove-empty` in VerticalAxisGroup to `#t`.
- Set grob-property `remove-first` in VerticalAxisGroup to `#t`.
- Set translator property `shortInstrumentName` to `'()`.
- Set translator property `instrumentName` to `'()`.
- Set grob-property `minimum-Y-extent` in VerticalAxisGroup to `'(-0.75 . 2.0)`.

This context is a ‘bottom’ context; it cannot contain other contexts.

This context is built from the following engraver(s):

> `Hara_kiri_engraver`

>   Like `Axis_group_engraver`, but make a hara-kiri spanner, and add interesting items (i.e., note heads, lyric syllables, and normal rests).

>   Properties (read)

>   > `keepAliveInterfaces` (list)

>   >   A list of symbols, signifying grob interfaces that are worth keeping a staff with `remove-empty` set around for.

>   This engraver creates the following layout object(s):

>   VerticalAxisGroup.

> `Font_size_engraver`

>   Put `fontSize` into `font-size` grob property.

>   Properties (read)

>   > `fontSize` (number)

>   >   The relative size of all grobs in a context.

> `Skip_event_swallow_translator`

>   Swallow `\skip`.

> `Instrument_name_engraver`

>   Create a system start text for instrument or vocal names.

>   Properties (read)

>   > `currentCommandColumn` (layout object)

>   >   Grob that is X-parent to all current breakable (clef, key signature, etc.) items.

>   > `shortInstrumentName` (markup)

>   >   See `instrument`.

>   > `instrumentName` (markup)

>   >   The name to print left of a staff. The `instrument` property labels the staff in the first system, and the `instr` property labels following lines.

>   > `shortVocalName` (markup)

>   >   Name of a vocal line, short version.

>   > `vocalName` (markup)

>   >   Name of a vocal line.

>   This engraver creates the following layout object(s):

>   InstrumentName.

> `Stanza_number_engraver`

>   Engrave stanza numbers.

>   Properties (read)

>   > `stanza` (markup)

>   >   Stanza ‘number’ to print before the start of a verse. Use in `Lyrics` context.

>   This engraver creates the following layout object(s):

>   StanzaNumber.

> `Hyphen_engraver`

>   Create lyric hyphens and distance constraints between words.

>   Music types accepted:

>   hyphen-event

>   This engraver creates the following layout object(s):

>   LyricHyphen and LyricSpace.

> `Extender_engraver`

>   Create lyric extenders.

>   Music types accepted:

>   extender-event

>   Properties (read)

>   > `extendersOverRests` (boolean)

>   >   Whether to continue extenders as they cross a rest.

>   This engraver creates the following layout object(s):

>   LyricExtender.

> `Lyric_engraver`

>   Engrave text for lyrics.

>   Music types accepted:

>   lyric-event

>   Properties (read)

>   > `ignoreMelismata` (boolean)

>   >   Ignore melismata for this Lyrics line.

>   > `lyricMelismaAlignment` (direction)

>   >   Alignment to use for a melisma syllable.

>   This engraver creates the following layout object(s):

>   LyricText.

#### Internals Reference