9 \description "Hard coded entry point for LilyPond. Cannot be tuned."
10 \grobdescriptions #all-grob-descriptions
14 \type "Engraver_group"
17 \consists "Output_property_engraver"
18 \consists "Bar_engraver"
19 %% Bar_engraver must be first so default bars aren't overwritten
22 \consists "Font_size_engraver"
23 \consists "Volta_engraver"
24 \consists "Separating_line_group_engraver"
25 \consists "Dot_column_engraver"
27 %% perhaps move to Voice context?
28 \consists "Ottava_spanner_engraver"
29 \consists "Clef_engraver"
30 \consists "Key_engraver"
31 \consists "Time_signature_engraver"
32 \consists "Ledger_line_engraver"
33 \consists "Staff_symbol_engraver"
34 \consists "Collision_engraver"
35 \consists "Rest_collision_engraver"
36 \consists "Accidental_engraver"
37 \consists "Piano_pedal_engraver"
38 \consists "Instrument_name_engraver"
39 \consists "String_number_engraver"
40 \consists "Axis_group_engraver"
42 \override VerticalAxisGroup #'minimum-Y-extent = #'(-4 . 4)
43 extraVerticalExtent = ##f
45 localKeySignature = #'()
48 %% explicitly set instrument, so we don't get
49 %% weird effects when doing instrument names for
59 \description "Handles clefs, bar lines, keys, accidentals. It can contain
60 @code{Voice} contexts."
66 \type "Engraver_group"
70 \remove "Accidental_engraver"
71 \remove "Ottava_spanner_engraver"
72 \remove "Key_engraver"
73 \remove "Piano_pedal_engraver"
74 \remove "String_number_engraver"
76 \description "Handles typesetting for percussion."
80 \defaultchild "DrumVoice"
82 clefGlyph = #"clefs.percussion"
84 \override Script #'staff-padding = #0.75
89 \type "Engraver_group"
90 \name "InnerChoirStaff"
91 \consists "System_start_delimiter_engraver"
92 systemStartDelimiter = #'SystemStartBracket
96 \accepts "RhythmicStaff"
100 \accepts "ChordNames"
101 \defaultchild "Staff"
108 \defaultchild "Staff"
109 \accepts "InnerChoirStaff"
110 \accepts "InnerStaffGroup"
111 \description "Identical to @code{StaffGroup} except that the
112 contained staves are not connected vertically."
118 \type "Engraver_group"
120 \override VerticalAxisGroup #'minimum-Y-extent = ##f
121 extraVerticalExtent = ##f
123 localKeySignature = #'()
126 squashedPosition = #0
130 \override BarLine #'bar-size = #4
131 \override VoltaBracket #'staff-padding = #3
132 \override StaffSymbol #'line-count = #1
134 \override Stem #'neutral-direction = #UP
135 \override Beam #'neutral-direction = #UP
137 \consists "Output_property_engraver"
138 \consists "Font_size_engraver"
139 \consists "Volta_engraver"
140 \consists "Separating_line_group_engraver"
141 \consists "Dot_column_engraver"
142 \consists "Bar_engraver"
143 \consists "Ledger_line_engraver"
144 \consists "Staff_symbol_engraver"
145 \consists "Pitch_squash_engraver"
146 \consists "Time_signature_engraver"
147 \consists "Instrument_name_engraver"
148 \consists "Axis_group_engraver"
152 \defaultchild "Voice"
155 A context like @code{Staff} but for printing rhythms. Pitches are
156 ignored; the notes are printed on one line.
162 \type "Engraver_group"
166 Corresponds to a voice on a staff. This context handles the
167 conversion of dynamic signs, stems, beams, super- and subscripts,
168 slurs, ties, and rests.
170 You have to instantiate this explicitly if you want to have
171 multiple voices on the same staff."
173 localKeySignature = #'()
174 \consists "Font_size_engraver"
176 \consists "Pitched_trill_engraver"
177 \consists "Output_property_engraver"
178 \consists "Arpeggio_engraver"
179 \consists "Multi_measure_rest_engraver"
180 \consists "Text_spanner_engraver"
181 \consists "Trill_spanner_engraver"
182 \consists "Grob_pq_engraver"
183 \consists "Forbid_line_break_engraver"
184 \consists "Laissez_vibrer_engraver"
185 \consists "Note_head_line_engraver"
186 \consists "Glissando_engraver"
187 \consists "Ligature_bracket_engraver"
188 \consists "Breathing_sign_engraver"
189 \consists "Note_heads_engraver"
190 \consists "Rest_engraver"
191 \consists "Melody_engraver"
193 \consists "Stem_engraver"
194 \consists "Beam_engraver"
195 \consists "Grace_beam_engraver"
196 \consists "Auto_beam_engraver"
197 \consists "New_fingering_engraver"
198 \consists "Chord_tremolo_engraver"
199 \consists "Percent_repeat_engraver"
200 \consists "Slash_repeat_engraver"
201 \consists "Melisma_translator"
202 \consists "Part_combine_engraver"
204 \consists "Text_engraver"
205 \consists "Dynamic_engraver"
206 \consists "Fingering_engraver"
208 \consists "Script_engraver"
209 \consists "Script_column_engraver"
210 \consists "Rhythmic_column_engraver"
211 \consists "Phrasing_slur_engraver"
212 \consists "Cluster_spanner_engraver"
213 \consists "Slur_engraver"
214 \consists "Tie_engraver"
215 \consists "Tuplet_engraver"
216 \consists "Grace_engraver"
218 \consists "Skip_event_swallow_translator"
227 \override Stem #'length-fraction = #(magstep -4)
228 \override Beam #'length-fraction = #(magstep -4)
236 \description "A voice on a percussion staff."
237 \remove "Arpeggio_engraver"
238 \consists "Multi_measure_rest_engraver"
239 \consists "Text_spanner_engraver"
240 \consists "Grob_pq_engraver"
242 \remove "Note_head_line_engraver"
243 \remove "Glissando_engraver"
244 \remove "Ligature_bracket_engraver"
245 \remove "Note_heads_engraver"
246 \consists "Drum_notes_engraver"
247 \remove "New_fingering_engraver"
249 \remove "Fingering_engraver"
251 \remove "Cluster_spanner_engraver"
252 \consists "Tuplet_engraver"
254 \consists "Skip_event_swallow_translator"
258 \type "Engraver_group"
260 localKeySignature = #'()
262 \description " A group of staffs, with a brace on the left
263 side, grouping the staves together. The bar lines of the
264 contained staves are connected vertically. "
266 \consists "Span_bar_engraver"
267 \consists "Span_arpeggio_engraver"
268 \consists "System_start_delimiter_engraver"
269 systemStartDelimiter = #'SystemStartBrace
280 "Just like @code{GrandStaff} but with a forced distance between
281 the staves, so cross staff beaming and slurring can be used."
283 \override VerticalAlignment #'forced-distance = #12
284 \override VerticalAlignment #'self-alignment-Y = #0
286 \consists "Vertical_align_engraver"
287 \consists "Instrument_name_engraver"
294 \type "Engraver_group"
295 \name InnerStaffGroup
297 \consists "Span_bar_engraver"
298 \consists "Span_arpeggio_engraver"
299 \consists "Output_property_engraver"
300 systemStartDelimiter = #'SystemStartBracket
302 \consists "System_start_delimiter_engraver"
304 \defaultchild "Staff"
306 \accepts "RhythmicStaff"
308 \accepts "GrandStaff"
309 \accepts "PianoStaff"
312 \accepts "ChordNames"
321 "Groups staffs while adding a bracket on the left side, grouping
322 the staves together. The bar lines of the contained staves are
323 connected vertically. "
325 \accepts "InnerChoirStaff"
326 \accepts "ChoirStaff"
327 \accepts "InnerStaffGroup"
328 \accepts "FiguredBass"
333 \type "Engraver_group"
334 \override VerticalAxisGroup #'minimum-Y-extent = #'(-1.2 . 2.4)
335 extraVerticalExtent = ##f
338 \description " Corresponds to a voice with lyrics. Handles the
339 printing of a single line of lyrics. "
342 \consists "Lyric_engraver"
343 \consists "Extender_engraver"
344 \consists "Hyphen_engraver"
345 \consists "Stanza_number_engraver"
346 \consists "Instrument_name_engraver"
347 \consists "Skip_event_swallow_translator"
348 \consists "Font_size_engraver"
349 \consists "Hara_kiri_engraver"
350 \override VerticalAxisGroup #'remove-first = ##t
351 \override VerticalAxisGroup #'remove-empty = ##t
352 \override SeparationItem #'padding = #0.2
353 \override InstrumentName #'self-alignment-Y = ##f
355 %% sync with define-grobs.scm ;
356 \override InstrumentName #'font-size = #1.0
358 %% make sure that barlines aren't collapsed, when
359 %% Bar_engraver is there.
360 \override BarLine #'bar-size = #0.1
365 \type "Engraver_group"
367 \consists "Axis_group_engraver"
369 \override VerticalAxisGroup #'minimum-Y-extent = ##f
370 extraVerticalExtent = ##f
374 \consists "Rest_swallow_translator"
375 \consists "Skip_event_swallow_translator"
376 \consists "Tie_engraver"
377 \consists "Note_name_engraver"
378 \consists "Separating_line_group_engraver"
382 \type "Engraver_group"
384 \description "Typesets chord names."
386 \consists "Volta_engraver"
388 \consists "Rest_swallow_translator"
389 \consists "Output_property_engraver"
390 \consists "Separating_line_group_engraver"
391 \consists "Chord_name_engraver"
392 \consists "Skip_event_swallow_translator"
393 \consists "Hara_kiri_engraver"
395 voltaOnThisStaff = ##f
396 \override VerticalAxisGroup #'minimum-Y-extent = #'(0 . 2.5)
397 extraVerticalExtent = ##f
398 \override SeparatingGroupSpanner #'padding = #0.8
399 \override VerticalAxisGroup #'remove-first = ##t
400 \override VerticalAxisGroup #'remove-empty = ##t
405 RemoveEmptyStaffContext= \context {
407 \remove "Axis_group_engraver"
408 \consists "Hara_kiri_engraver"
409 \override Beam #'auto-knee-gap = #'()
410 \override VerticalAxisGroup #'remove-empty = ##t
413 AncientRemoveEmptyStaffContext = \context {
414 %% why not add by default?
416 \RemoveEmptyStaffContext
417 \accepts "VaticanaVoice"
418 \accepts "GregorianTranscriptionVoice"
419 \accepts "MensuralVoice"
423 \type "Score_engraver"
426 \description "This is the top level notation context. No
427 other context can contain a @code{Score} context. This context
428 handles the administration of time signatures. It also makes sure
429 that items such as clefs, time signatures, and key-signatures are
430 aligned across staves.
432 You cannot explicitly instantiate a Score context (since it is
433 not contained in any other context). It is instantiated
434 automatically when an output definition (a @code{\score} or
435 @code{\layout} block) is processed."
438 \consists "Paper_column_engraver"
439 \consists "Vertically_spaced_contexts_engraver"
440 \consists "Repeat_acknowledge_engraver"
441 \consists "Staff_collecting_engraver"
443 %% move the alias along with the engraver.
445 \consists "Timing_translator"
446 \consists "Default_bar_line_engraver"
447 \consists "Output_property_engraver"
448 \consists "System_start_delimiter_engraver"
449 \consists "Mark_engraver"
450 \consists "Metronome_mark_engraver"
451 \consists "Break_align_engraver"
452 \consists "Spacing_engraver"
453 \consists "Vertical_align_engraver"
454 \consists "Stanza_number_align_engraver"
455 \consists "Bar_number_engraver"
456 \consists "Tweak_engraver"
457 \consists "Parenthesis_engraver"
459 \defaultchild "Staff"
462 \accepts "RhythmicStaff"
464 \accepts "VaticanaStaff"
465 \accepts "GregorianTranscriptionStaff"
466 \accepts "MensuralStaff"
467 \accepts "StaffGroup"
470 \accepts "ChordNames"
471 \accepts "GrandStaff"
472 \accepts "ChoirStaff"
473 \accepts "PianoStaff"
476 \accepts "FiguredBass"
479 soloIIText = #"Solo II"
481 printPartCombineTexts = ##t
482 systemStartDelimiter =#'SystemStartBar
484 drumStyleTable = #drums-style
486 melismaBusyProperties = #default-melisma-properties
488 clefGlyph = #"clefs.G"
490 middleCPosition = #-6
493 defaultBarType = #"|"
494 barNumberVisibility = #first-bar-number-invisible
497 explicitClefVisibility = #all-visible
498 explicitKeySignatureVisibility = #all-visible
499 autoBeamSettings = #default-auto-beam-settings
501 autoBeamCheck = #default-auto-beam-check
502 scriptDefinitions = #default-script-alist
504 pedalSustainStrings = #'("Ped." "*Ped." "*")
505 pedalSustainStyle = #'text
506 pedalUnaCordaStrings = #'("una corda" "" "tre corde")
507 pedalUnaCordaStyle = #'text
509 %% These are in ordinary italic font, including the *,
510 %% but they are unlikely to be used,
511 %% as the default pedal-style for SostenutoPedal is 'mixed':
512 %% i.e. Sost. Ped_____________________
513 pedalSostenutoStrings = #'("Sost. Ped." "*Sost. Ped." "*")
514 pedalSostenutoStyle = #'mixed
517 harmonicAccidentals = ##t
518 fingeringOrientations = #'(up down)
519 stringNumberOrientations = #'(up down)
520 tupletNumberFormatFunction = #denominator-tuplet-formatter
521 markFormatter = #format-mark-letters
526 autoAccidentals = #'(Staff (same-octave . 0))
527 autoCautionaries = #'()
529 printKeyCancellation = ##t
530 keyAlterationOrder = #`(
531 (6 . ,FLAT) (2 . ,FLAT) (5 . ,FLAT ) (1 . ,FLAT) (4 . ,FLAT) (0 . ,FLAT) (3 . ,FLAT)
532 (3 . ,SHARP) (0 . ,SHARP) (4 . ,SHARP) (1 . ,SHARP) (5 . ,SHARP) (2 . ,SHARP) (6 . ,SHARP)
533 (6 . ,DOUBLE-FLAT) (2 . ,DOUBLE-FLAT) (5 . ,DOUBLE-FLAT ) (1 . ,DOUBLE-FLAT) (4 . ,DOUBLE-FLAT) (0 . ,DOUBLE-FLAT) (3 . ,DOUBLE-FLAT)
534 (3 . ,DOUBLE-SHARP) (0 . ,DOUBLE-SHARP) (4 . ,DOUBLE-SHARP) (2 . ,DOUBLE-SHARP) (5 . ,DOUBLE-SHARP) (2 . ,DOUBLE-SHARP) (6 . ,DOUBLE-SHARP)
537 barCheckSynchronize = ##f
540 chordNameFunction = #ignatzek-chord-names
541 majorSevenSymbol = #whiteTriangleMarkup
542 chordNameSeparator = #(make-simple-markup "/")
543 chordNameExceptions = #ignatzekExceptions
544 chordNoteNamer = #'()
545 chordRootNamer = #note-name->markup
546 chordPrefixSpacer = #0
547 chordNameExceptionsFull = #fullJazzExceptions
548 chordNameExceptionsPartial = #partialJazzExceptions
551 bassStaffProperties = #'((assign clefGlyph "clefs.F")
552 (assign clefPosition 2)
553 (assign middleCPosition 6))
555 stringOneTopmost = ##t
558 %% One may change the strings tuning as following :
559 %% The lenght of the list must be equal to the number of string
560 stringTunings = #guitar-tuning
561 tablatureFormat = #fret-number-tablature-format
564 figuredBassFormatter = #format-bass-figure
565 metronomeMarkFormatter = #format-metronome-markup
567 (Voice Stem direction ,UP)
568 (Voice Stem font-size -3)
569 (Voice NoteHead font-size -3)
570 (Voice Dots font-size -3)
571 (Voice Stem length-fraction 0.8)
572 (Voice Stem no-stem-extend #t)
573 (Voice Beam thickness 0.384)
574 (Voice Beam length-fraction 0.8)
575 (Voice Accidental font-size -4)
576 (Voice Slur direction ,DOWN)
579 keepAliveInterfaces = #'(rhythmic-grob-interface lyric-interface percent-repeat-interface)
580 quotedEventTypes = #'(note-event rest-event time-scaled-music tie-event)
581 instrumentTransposition = #(ly:make-pitch 0 0 0)
583 verticallySpacedContexts = #'(Staff)
592 \type "Engraver_group"
595 \consists "Figured_bass_engraver"
596 \consists "Note_swallow_translator"
597 \consists "Skip_event_swallow_translator"
598 \consists "Separating_line_group_engraver"
599 \consists "Hara_kiri_engraver"
601 \override VerticalAxisGroup #'remove-empty = ##t
602 \override VerticalAxisGroup #'remove-first = ##t
603 \override VerticalAxisGroup #'minimum-Y-extent = #'(-0.5 . 2.5)
608 \type "Engraver_group"
610 %% don't want to route anything out of here:
613 \consists "Swallow_engraver"
614 \description "Silently discards all musical information given to this context. "
621 \consists "Tab_note_heads_engraver"
622 \remove "Note_heads_engraver"
623 \remove "Fingering_engraver"
624 \remove "New_fingering_engraver"
626 \description "Context for drawing notes in a Tab staff. "
628 %% Draws all stems/beams out of the staff (and not in the middle of the staff !)
629 %% This feature is now disabled because most of the tab does not use it.
630 %%\override Beam #'damping = #100000
631 %%\override Stem #'up-to-staff = ##t
633 %% TabStaff increase the staff-space, which in turn
634 %% increases beam thickness and spacing; beams are
635 %% too big. We have to adjust the beam settings:
636 \override Beam #'thickness = #0.32
637 \override Beam #'length-fraction = #0.62
639 %% No accidental in tablature !
640 \remove Accidental_engraver
648 \remove "Staff_symbol_engraver"
649 \consists "Tab_staff_symbol_engraver"
651 \description "Context for generating tablature. [DOCME]"
654 \defaultchild "TabVoice"
657 \override StaffSymbol #'staff-space = #1.5
659 %% Don't draw stems over the tablature figures !
660 \override Stem #'avoid-note-head = ##t
662 %% No accidental in tablature !
663 \remove "Accidental_engraver"
664 \remove "Key_engraver"
665 \remove "String_number_engraver"
666 %% Special "TAB" clef
667 clefGlyph = #"clefs.tab"
671 %% TODO: Gregorian Chant contexts should be moved to gregorian-init.ly,
672 %% but this does not work (is this a bug or intended behaviour?):
674 %% If I try to do so, I get "error: unknown escaped string:
675 %% `\VaticanaStaff'" in params-init.ly. If I also move
676 %% "\context { \Vaticana*Context }" from params-init.ly to the end
677 %% of gregorian-init.ly, then I get "error: parse error, unexpected
678 %% TRANSLATOR: \context { \VaticanaStaff }" in
679 %% gregorian-init.ly. --jr
683 \name "VaticanaVoice"
685 \description "Same as @code{Voice} context, except that it is accommodated for tyepsetting Gregorian Chant in the notational style of Editio Vaticana."
687 \remove "Slur_engraver"
688 \remove "Stem_engraver"
689 \remove "Ligature_bracket_engraver"
690 \consists "Vaticana_ligature_engraver"
692 %% Set default head for notes outside of \[ \].
693 \override NoteHead #'style = #'vaticana.punctum
695 %% Put some space before and after divisiones.
696 %% FIXME: This does not seem to show any effect.
697 \override Script #'padding = #0.5
699 %% There are no beams in Gregorian Chant notation.
702 %% Prepare TextSpanner for \episem{Initium|Finis} use.
704 %% N.B.: dash-fraction MUST be unset; otherwise, TextSpanner will
705 %% always produce dashed lines, regardless of the style property.
707 %% FIXME: The line @code{\override TextSpanner #'padding = #-0.1} is
708 %% required to force the articulation signs being placed vertically
709 %% tightly to the correpsonding note heads.
711 \override TextSpanner #'dash-fraction = #'()
712 \override TextSpanner #'style = #'line
713 \override TextSpanner #'edge-height = #'(0 . 0)
714 \override TextSpanner #'padding = #-0.1
715 \override TextSpanner #'enclose-bounds = #1
716 \override TextSpanner #'edge-text = #'("" . "")
719 %% FIXME: need something like
720 %% \remove "Bar_number_engraver" (which lives on score level)
721 %% for vaticana and gregorian transcription staves
725 \name "VaticanaStaff"
728 \accepts "VaticanaVoice"
729 \defaultchild "VaticanaVoice"
731 \description "Same as @code{Staff} context, except that it is accommodated for tyepsetting Gregorian Chant in the notational style of Editio Vaticana."
733 \remove "Time_signature_engraver"
734 \consists "Custos_engraver"
736 %% We can not remove Bar_engraver; otherwise clefs and custodes will
737 %% not show up any more among other line breaking issues.
738 %% Instead, we make the grob transparent.
739 \override BarLine #'transparent = ##t
741 \override StaffSymbol #'line-count = #4
742 \override StaffSymbol #'thickness = #0.6
744 %% FIXME: unit on StaffSymbol's width should be \linewidth.
745 %% \override StaffSymbol #'width = #60.0
747 %% Choose vaticana do clef on 3rd line as default.
748 clefGlyph = #"clefs.vaticana.do"
753 %% Select vaticana style font.
754 \override KeySignature #'style = #'vaticana
755 \override Accidental #'style = #'vaticana
756 \override Custos #'style = #'vaticana
757 \override Custos #'neutral-position = #3
758 \override Custos #'neutral-direction = #DOWN
760 %% Score.timing = ##f
761 %% Score.barAlways = ##t
766 \name "GregorianTranscriptionVoice"
769 %% Removing ligature bracket engraver without replacing it by some
770 %% other ligature engraver would cause a "Junking event: `LigatureEvent'"
771 %% warning for every "\[" and "\]". Therefore, we make the grob
772 %% transparent instead.
773 \override LigatureBracket #'transparent = ##t
775 %% Put some space before and after divisiones.
776 %% FIXME: This does not seem to show any effect.
777 \override Script #'padding = #0.5
779 %% There are no beams in Gregorian Chant notation.
782 %% Prepare TextSpanner for \episem{Initium|Finis} use.
784 %% N.B.: dash-fraction MUST be unset; otherwise, TextSpanner will
785 %% always produce dashed lines, regardless of the style property.
787 %% FIXME: The line @code{\override TextSpanner #'padding = #-0.1} is
788 %% required to force the articulation signs being placed vertically
789 %% tightly to the correpsonding note heads.
791 \override TextSpanner #'dash-fraction = #'()
792 \override TextSpanner #'style = #'line
793 \override TextSpanner #'edge-height = #'(0 . 0)
794 \override TextSpanner #'padding = #-0.1
795 \override TextSpanner #'enclose-bounds = #1
796 \override TextSpanner #'edge-text = #'("" . "")
801 \name "GregorianTranscriptionStaff"
804 \accepts "GregorianTranscriptionVoice"
805 \defaultchild "GregorianTranscriptionVoice"
807 %% We can not remove Bar_engraver; otherwise clefs and custodes will
808 %% not show up any more among other line breaking issues.
809 %% Instead, we make the grob transparent.
810 \override BarLine #'transparent = ##t
815 \name "MensuralVoice"
817 \description "Same as @code{Voice} context, except that it is accommodated for tyepsetting a piece in mensural style."
819 \remove "Slur_engraver"
820 \remove "Ligature_bracket_engraver"
821 \consists "Mensural_ligature_engraver"
823 %% Set default head for notes outside of \[ \].
824 \override NoteHead #'style = #'petrucci
826 %% There are no beams in mensural notation.
832 \name "MensuralStaff"
835 \defaultchild "MensuralVoice"
836 \accepts "MensuralVoice"
837 \description "Same as @code{Staff} context, except that it is accommodated for tyepsetting a piece in mensural style."
839 \consists "Custos_engraver"
841 %% We can not remove Bar_engraver; otherwise clefs and custodes will
842 %% not show up any more among other line breaking issues.
843 %% Instead, we make the grob transparent.
844 \override BarLine #'transparent = ##t
846 \override StaffSymbol #'thickness = #0.6
848 %% FIXME: unit on StaffSymbol's width should be \linewidth.
849 %% \override StaffSymbol #'width = #60.0
851 %% Choose petrucci g clef on 2nd line as default.
852 clefGlyph = #"clefs.petrucci.g"
853 middleCPosition = #-6
857 %% Select mensural style font.
858 \override TimeSignature #'style = #'mensural
859 \override KeySignature #'style = #'mensural
860 \override Accidental #'style = #'mensural
861 \override Custos #'style = #'mensural
862 \override Custos #'neutral-position = #3
863 \override Custos #'neutral-direction = #DOWN
865 %% Score.timing = ##f
866 %% Score.barAlways = ##t
870 RemoveEmptyRhythmicStaffContext= \context {
872 \remove "Axis_group_engraver"
873 \override VerticalAxisGroup #'remove-empty = ##t
874 \consists "Hara_kiri_engraver"