### 2.1.2 ChordGrid

Creates chord grid notation. This context is always part of a ChordGridScore context.

This context also accepts commands for the following context(s): Staff.

This context sets the following properties:

This is a ‘Bottom’ context; no contexts will be created implicitly from it.

This context cannot contain other contexts.

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

Alteration_glyph_engraver

Set the glyph-name-alist of all grobs having the accidental-switch-interface to the value of the context’s alterationGlyphs property, when defined.

alterationGlyphs (list)

Alist mapping alterations to accidental glyphs. Alterations are given as exact numbers, e.g., -1/2 for flat. This applies to all grobs that can print accidentals.

Axis_group_engraver

Group all objects created in this context in a VerticalAxisGroup spanner.

currentCommandColumn (graphical (layout) object)

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

hasAxisGroup (boolean)

True if the current context is contained in an axis group.

keepAliveInterfaces (list)

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

Properties (write)

hasAxisGroup (boolean)

True if the current context is contained in an axis group.

This engraver creates the following layout object(s): VerticalAxisGroup.

Bar_engraver

Create bar lines for various commands, including \\bar.

If forbidBreakBetweenBarLines is true, allow line breaks at bar lines only.

doubleRepeatBarType (string)

Bar line to insert where the end of one \repeat volta coincides with the start of another. The default is ‘:..:’.

doubleRepeatSegnoBarType (string)

Bar line to insert where an in-staff segno coincides with the end of one \repeat volta and the beginning of another. The default is ‘:|.S.|:’.

endRepeatBarType (string)

Bar line to insert at the end of a \repeat volta. The default is ‘:|.’.

endRepeatSegnoBarType (string)

Bar line to insert where an in-staff segno coincides with the end of a \repeat volta. The default is ‘:|.S’.

fineBarType (string)

Bar line to insert at \fine. Where there is also a repeat bar line, the repeat bar line takes precedence and this value is appended to it as an annotation. The default is ‘|.’.

fineSegnoBarType (string)

Bar line to insert where an in-staff segno coincides with \fine. The default is ‘|.S’.

fineStartRepeatSegnoBarType (string)

Bar line to insert where an in-staff segno coincides with \fine and the start of a \repeat volta. The default is ‘|.S.|:’.

forbidBreakBetweenBarLines (boolean)

If set to true, Bar_engraver forbids line breaks where there is no bar line.

measureBarType (string)

Bar line to insert at a measure boundary.

repeatCommands (list)

A list of commands related to volta-style repeats. In general, each element is a list, '(command args…), but a command with no arguments may be abbreviated to a symbol; e.g., '((start-repeat)) may be given as '(start-repeat).

end-repeat

End a repeated section.

start-repeat

Start a repeated section.

volta text

If text is markup, start a volta bracket with that label; if text is #f, end a volta bracket.

sectionBarType (string)

Bar line to insert at \section. Where there is also a repeat bar line, the repeat bar line takes precedence and this value is appended to it as an annotation. The default is ‘||’.

segnoBarType (string)

Bar line to insert at an in-staff segno. The default is ‘S’.

segnoStyle (symbol)

A symbol that indicates how to print a segno: bar-line or mark.

startRepeatBarType (string)

Bar line to insert at the start of a \repeat volta. The default is ‘.|:’.

startRepeatSegnoBarType (string)

Bar line to insert where an in-staff segno coincides with the start of a \repeat volta. The default is ‘S.|:’.

underlyingRepeatBarType (string)

Bar line to insert at points of repetition or departure where no bar line would normally appear, for example at the end of a system broken in mid measure where the next system begins with a segno. Where there is also a repeat bar line, the repeat bar line takes precedence and this value is appended to it as an annotation. The default is ‘||’.

whichBar (string)

The current bar line type, or '() if there is no bar line. Setting this explicitly in user code is deprecated. Use \bar or related commands to set it.

Properties (write)

currentBarLine (graphical (layout) object)

Set to the BarLine that Bar_engraver has created in the current timestep.

forbidBreak (boolean)

If set to #t, prevent a line break at this point, except if explicitly requested by the user.

This engraver creates the following layout object(s): BarLine.

Chord_square_engraver

Engrave chord squares in chord grids.

currentCommandColumn (graphical (layout) object)

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

This engraver creates the following layout object(s): ChordSquare.

Current_chord_text_engraver

Catch note and rest events and generate the appropriate chord text using chordNameFunction. Actually creating a chord name grob is left to other engravers.

Music types accepted: general-rest-event and note-event

chordNameExceptions (list)

An alist of chord exceptions. Contains (chord . markup) entries.

chordNameFunction (procedure)

The function that converts lists of pitches to chord names.

chordNoteNamer (procedure)

A function that converts from a pitch object to a text markup. Used for single pitches.

chordRootNamer (procedure)

A function that converts from a pitch object to a text markup. Used for chords.

majorSevenSymbol (markup)

How should the major 7th be formatted in a chord name?

noChordSymbol (markup)

Markup to be displayed for rests in a ChordNames context.

Properties (write)

currentChordCause (stream event)

Event cause of the chord that should be created in this time step (if any).

currentChordText (markup)

In contexts printing chord names, this is at any point of time the markup that will be put in the chord name.

Double_percent_repeat_engraver

Make double measure repeats.

Music types accepted: double-percent-event

countPercentRepeats (boolean)

If set, produce counters for percent repeats.

measureLength (moment)

Length of one measure in the current time signature.

repeatCountVisibility (procedure)

A procedure taking as arguments an integer and context, returning whether the corresponding percent repeat number should be printed when countPercentRepeats is set.

Properties (write)

forbidBreak (boolean)

If set to #t, prevent a line break at this point, except if explicitly requested by the user.

This engraver creates the following layout object(s): DoublePercentRepeat and DoublePercentRepeatCounter.

Grid_chord_name_engraver

Read currentChordText to create chord names adapted for typesetting within a chord grid.

currentChordCause (stream event)

Event cause of the chord that should be created in this time step (if any).

currentChordText (markup)

In contexts printing chord names, this is at any point of time the markup that will be put in the chord name.

currentCommandColumn (graphical (layout) object)

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

This engraver creates the following layout object(s): GridChordName.

Output_property_engraver

Apply a procedure to any grob acknowledged.

Music types accepted: apply-output-event

Percent_repeat_engraver

Make whole measure repeats.

Music types accepted: percent-event

countPercentRepeats (boolean)

If set, produce counters for percent repeats.

currentCommandColumn (graphical (layout) object)

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

repeatCountVisibility (procedure)

A procedure taking as arguments an integer and context, returning whether the corresponding percent repeat number should be printed when countPercentRepeats is set.

This engraver creates the following layout object(s): PercentRepeat and PercentRepeatCounter.

Staff_symbol_engraver

Create the constellation of five (default) staff lines.

Music types accepted: staff-span-event

This engraver creates the following layout object(s): StaffSymbol.

System_start_delimiter_engraver

Create a system start delimiter (i.e., a SystemStartBar, SystemStartBrace, SystemStartBracket or SystemStartSquare spanner).

currentCommandColumn (graphical (layout) object)

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

systemStartDelimiter (symbol)

Which grob to make for the start of the system/staff? Set to SystemStartBrace, SystemStartBracket or SystemStartBar.

systemStartDelimiterHierarchy (pair)

A nested list, indicating the nesting of a start delimiters.

This engraver creates the following layout object(s): SystemStartBar, SystemStartBrace, SystemStartBracket and SystemStartSquare.