9 \description "Hard coded entry point for LilyPond. Cannot be tuned."
10 \grobdescriptions #all-grob-descriptions
14 \type "Engraver_group_engraver"
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 minimumVerticalExtent = #'(-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_engraver"
69 \remove "Accidental_engraver"
70 \remove "Ottava_spanner_engraver"
71 \remove "Key_engraver"
72 \remove "Piano_pedal_engraver"
73 \remove "String_number_engraver"
75 \description "Handles typesetting for percussion."
79 \defaultchild DrumVoice
81 clefGlyph = #"clefs.percussion"
83 \override Script #'staff-padding = #0.75
88 \type "Engraver_group_engraver"
90 \consists "System_start_delimiter_engraver"
91 systemStartDelimiter = #'SystemStartBracket
95 \accepts "RhythmicStaff"
100 \defaultchild "Staff"
107 \defaultchild "InnerChoirStaff"
108 \accepts "InnerChoirStaff"
109 \accepts "InnerStaffGroup"
110 \description "Identical to @code{StaffGroup} except that the
111 contained staves are not connected vertically."
117 \type "Engraver_group_engraver"
119 \consists "Output_property_engraver"
121 minimumVerticalExtent = ##f
122 extraVerticalExtent = ##f
124 localKeySignature = #'()
126 \consists "Pitch_squash_engraver"
127 squashedPosition = #0
128 \consists "Separating_line_group_engraver"
132 \override BarLine #'bar-size = #4
133 \override VoltaBracket #'minimum-space = #15
134 \override VoltaBracket #'padding = #5
135 \override StaffSymbol #'line-count = #1
137 \override Stem #'neutral-direction = #1
138 \override Beam #'neutral-direction = #1
139 %% \consists "Repeat_engraver"
140 \consists "Dot_column_engraver"
141 \consists "Volta_engraver"
142 \consists "Bar_engraver"
143 \consists "Time_signature_engraver"
144 \consists "Staff_symbol_engraver"
145 \consists "Ledger_line_engraver"
146 \consists "Instrument_name_engraver"
147 \consists "Axis_group_engraver"
150 \defaultchild "Voice"
152 A context like @code{Staff} but for printing rhythms. Pitches are
153 ignored; the notes are printed on one line.
159 \type "Engraver_group_engraver"
163 Corresponds to a voice on a staff. This context handles the
164 conversion of dynamic signs, stems, beams, super- and subscripts,
165 slurs, ties, and rests.
167 You have to instantiate this explicitly if you want to have
168 multiple voices on the same staff."
170 localKeySignature = #'()
171 \consists "Font_size_engraver"
173 \consists "Output_property_engraver"
174 \consists "Arpeggio_engraver"
175 \consists "Multi_measure_rest_engraver"
176 \consists "Text_spanner_engraver"
177 \consists "Trill_spanner_engraver"
178 \consists "Grob_pq_engraver"
179 \consists "Forbid_line_break_engraver"
181 \consists "Note_head_line_engraver"
182 \consists "Glissando_engraver"
183 \consists "Ligature_bracket_engraver"
184 \consists "Breathing_sign_engraver"
185 %% \consists "Rest_engraver"
186 \consists "Note_heads_engraver"
187 \consists "Rest_engraver"
189 \consists "Stem_engraver"
190 \consists "Beam_engraver"
191 \consists "Grace_beam_engraver"
192 \consists "Auto_beam_engraver"
193 \consists "New_fingering_engraver"
194 \consists "Chord_tremolo_engraver"
195 \consists "Percent_repeat_engraver"
196 \consists "Slash_repeat_engraver"
197 \consists "Melisma_translator"
198 \consists "Part_combine_engraver"
200 \consists "Text_engraver"
201 \consists "Dynamic_engraver"
202 \consists "Fingering_engraver"
204 \consists "Script_engraver"
205 \consists "Script_column_engraver"
206 \consists "Rhythmic_column_engraver"
207 \consists "Phrasing_slur_engraver"
208 \consists "Cluster_spanner_engraver"
209 \consists "Slur_engraver"
210 \consists "Tie_engraver"
211 \consists "Tuplet_engraver"
212 \consists "Grace_engraver"
214 \consists "Skip_event_swallow_translator"
223 \override Stem #'lengths = #'(2.5 2.5 3.0 3.0)
231 \description "A voice on a percussion staff."
232 \remove "Arpeggio_engraver"
233 \consists "Multi_measure_rest_engraver"
234 \consists "Text_spanner_engraver"
235 \consists "Grob_pq_engraver"
237 \remove "Note_head_line_engraver"
238 \remove "Glissando_engraver"
239 \remove "Ligature_bracket_engraver"
240 \remove "Note_heads_engraver"
241 \consists "Rest_engraver"
242 \consists "Drum_notes_engraver"
243 \remove "New_fingering_engraver"
245 \remove "Fingering_engraver"
247 \remove "Cluster_spanner_engraver"
248 \consists "Tuplet_engraver"
250 \consists "Skip_event_swallow_translator"
254 \type "Engraver_group_engraver"
256 localKeySignature = #'()
258 \description " A group of staffs, with a brace on the left
259 side, grouping the staves together. The bar lines of the
260 contained staves are connected vertically. "
262 \consists "Span_bar_engraver"
263 \consists "Span_arpeggio_engraver"
264 \consists "System_start_delimiter_engraver"
265 systemStartDelimiter = #'SystemStartBrace
276 "Just like @code{GrandStaff} but with a forced distance between
277 the staves, so cross staff beaming and slurring can be used."
279 verticalAlignmentChildCallback = #Align_interface::fixed_distance_alignment_callback
280 \override VerticalAlignment #'forced-distance = #12
281 \override VerticalAlignment #'self-alignment-Y = #0
283 \consists "Vertical_align_engraver"
284 \consists "Instrument_name_engraver"
291 \type "Engraver_group_engraver"
292 \name InnerStaffGroup
294 \consists "Span_bar_engraver"
295 \consists "Span_arpeggio_engraver"
296 \consists "Output_property_engraver"
297 systemStartDelimiter = #'SystemStartBracket
299 \consists "System_start_delimiter_engraver"
301 \accepts "RhythmicStaff"
303 \accepts "GrandStaff"
304 \accepts "PianoStaff"
307 \accepts "ChordNames"
316 "Groups staffs while adding a bracket on the left side, grouping
317 the staves together. The bar lines of the contained staves are
318 connected vertically. "
320 \accepts "InnerChoirStaff"
321 \accepts "ChoirStaff"
322 \accepts "InnerStaffGroup"
323 \accepts "FiguredBass"
328 \type "Engraver_group_engraver"
329 minimumVerticalExtent = #'(-1.2 . 2.4)
330 extraVerticalExtent = ##f
333 \description " Corresponds to a voice with lyrics. Handles the
334 printing of a single line of lyrics. "
337 \consists "Separating_line_group_engraver"
338 \consists "Lyric_engraver"
339 \consists "Extender_engraver"
340 \consists "Hyphen_engraver"
341 \consists "Stanza_number_engraver"
342 \consists "Vocal_name_engraver"
343 \consists "Skip_event_swallow_translator"
344 \consists "Font_size_engraver"
345 \consists "Hara_kiri_engraver"
346 \override SeparationItem #'padding = #0.2
350 \type "Engraver_group_engraver"
352 \consists "Axis_group_engraver"
354 minimumVerticalExtent = ##f
355 extraVerticalExtent = ##f
359 \consists "Rest_swallow_translator"
360 \consists "Skip_event_swallow_translator"
361 \consists "Tie_engraver"
362 \consists "Note_name_engraver"
363 \consists "Separating_line_group_engraver"
367 \type "Engraver_group_engraver"
369 \description "Typesets chord names."
371 \consists "Volta_engraver"
373 \consists "Rest_swallow_translator"
374 \consists "Output_property_engraver"
375 \consists "Separating_line_group_engraver"
376 \consists "Chord_name_engraver"
377 \consists "Skip_event_swallow_translator"
378 \consists "Hara_kiri_engraver"
380 voltaOnThisStaff = ##f
381 minimumVerticalExtent = #'(0 . 2.5)
382 extraVerticalExtent = ##f
383 \override SeparatingGroupSpanner #'padding = #0.8
388 RemoveEmptyStaffContext= \context {
390 \remove "Axis_group_engraver"
391 \consists "Hara_kiri_engraver"
392 \override Beam #'auto-knee-gap = #'()
395 AncientRemoveEmptyStaffContext = \context {
396 %% why not add by default?
398 \RemoveEmptyStaffContext
399 \accepts "VaticanaVoice"
400 \accepts "GregorianTranscriptionVoice"
401 \accepts "MensuralVoice"
408 \description "This is the top level notation context. No
409 other context can contain a @code{Score} context. This context
410 handles the administration of time signatures. It also makes sure
411 that items such as clefs, time signatures, and key-signatures are
412 aligned across staves.
414 You cannot explicitly instantiate a Score context (since it is
415 not contained in any other context). It is instantiated
416 automatically when an output definition (a @code{\score} or
417 @code{\layout} block) is processed."
419 \consists "Repeat_acknowledge_engraver"
420 \consists "Staff_collecting_engraver"
422 %% move the alias along with the engraver.
424 \consists "Timing_engraver"
426 \consists "Output_property_engraver"
427 \consists "System_start_delimiter_engraver"
428 \consists "Mark_engraver"
429 \consists "Metronome_mark_engraver"
430 \consists "Break_align_engraver"
431 \consists "Spacing_engraver"
432 \consists "Vertical_align_engraver"
433 \consists "Stanza_number_align_engraver"
434 \consists "Bar_number_engraver"
435 \consists "Span_arpeggio_engraver"
437 \defaultchild "Staff"
439 \accepts "RhythmicStaff"
441 \accepts "VaticanaStaff"
442 \accepts "GregorianTranscriptionStaff"
443 \accepts "MensuralStaff"
444 \accepts "StaffGroup"
447 \accepts "ChordNames"
448 \accepts "GrandStaff"
449 \accepts "ChoirStaff"
450 \accepts "PianoStaff"
453 \accepts "FiguredBass"
456 soloIIText = #"Solo II"
458 printPartCombineTexts = ##t
459 systemStartDelimiter =#'SystemStartBar
461 drumStyleTable = #drums-style
463 melismaBusyProperties = #default-melisma-properties
465 clefGlyph = #"clefs.G"
467 middleCPosition = #-6
470 defaultBarType = #"|"
471 barNumberVisibility = #default-bar-number-visibility
474 explicitClefVisibility = #all-visible
475 explicitKeySignatureVisibility = #all-visible
476 autoBeamSettings = #default-auto-beam-settings
478 autoBeamCheck = #default-auto-beam-check
479 scriptDefinitions = #default-script-alist
481 verticalAlignmentChildCallback = #Align_interface::alignment_callback
483 pedalSustainStrings = #'("Ped." "*Ped." "*")
484 pedalSustainStyle = #'text
485 pedalUnaCordaStrings = #'("una corda" "" "tre corde")
486 pedalUnaCordaStyle = #'text
488 %% These are in ordinary italic font, including the *,
489 %% but they are unlikely to be used,
490 %% as the default pedal-style for SostenutoPedal is 'mixed':
491 %% i.e. Sost. Ped_____________________
492 pedalSostenutoStrings = #'("Sost. Ped." "*Sost. Ped." "*")
493 pedalSostenutoStyle = #'mixed
496 harmonicAccidentals = ##t
497 fingeringOrientations = #'(up down)
498 stringNumberOrientations = #'(up down)
499 tupletNumberFormatFunction = #denominator-tuplet-formatter
500 markFormatter = #format-mark-letters
505 autoAccidentals = #'(Staff (same-octave . 0))
506 autoCautionaries = #'()
508 printKeyCancellation = ##t
509 keyAccidentalOrder = #`(
510 (6 . ,FLAT) (2 . ,FLAT) (5 . ,FLAT ) (1 . ,FLAT) (4 . ,FLAT) (0 . ,FLAT) (3 . ,FLAT)
511 (3 . ,SHARP) (0 . ,SHARP) (4 . ,SHARP) (1 . ,SHARP) (5 . ,SHARP) (2 . ,SHARP) (6 . ,SHARP)
512 (6 . ,DOUBLE-FLAT) (2 . ,DOUBLE-FLAT) (5 . ,DOUBLE-FLAT ) (1 . ,DOUBLE-FLAT) (4 . ,DOUBLE-FLAT) (0 . ,DOUBLE-FLAT) (3 . ,DOUBLE-FLAT)
513 (3 . ,DOUBLE-SHARP) (0 . ,DOUBLE-SHARP) (4 . ,DOUBLE-SHARP) (2 . ,DOUBLE-SHARP) (5 . ,DOUBLE-SHARP) (2 . ,DOUBLE-SHARP) (6 . ,DOUBLE-SHARP)
516 barCheckSynchronize = ##f
519 chordNameFunction = #ignatzek-chord-names
520 majorSevenSymbol = #whiteTriangleMarkup
521 chordNameSeparator = #(make-simple-markup "/")
522 chordNameExceptions = #ignatzekExceptions
523 chordNoteNamer = #'()
524 chordRootNamer = #note-name->markup
525 chordPrefixSpacer = #0
526 chordNameExceptionsFull = #fullJazzExceptions
527 chordNameExceptionsPartial = #partialJazzExceptions
530 bassStaffProperties = #'((assign clefGlyph "clefs.F")
531 (assign clefPosition 2)
532 (assign middleCPosition 6))
534 stringOneTopmost = ##t
537 %% One may change the strings tuning as following :
538 %% The lenght of the list must be equal to the number of string
539 stringTunings = #guitar-tuning
540 tablatureFormat = #fret-number-tablature-format
543 bassFigureFormatFunction = #format-bass-figure
544 metronomeMarkFormatter = #format-metronome-markup
546 (Voice Stem direction 1)
547 ;; TODO: should take from existing definition.
548 ;; c&p from define-grobs.scm
550 (Voice Stem lengths ,(map (lambda (x) (* 0.8 x)) '(3.5 3.5 3.5 4.5 5.0)))
551 (Voice Stem stem-shorten (0.4 0.4))
552 (Voice Stem font-size -3)
553 (Voice NoteHead font-size -3)
554 (Voice Dots font-size -3)
555 (Voice Stem beamed-lengths
556 ,(map (lambda (x) (* 0.8 x)) '(3.3 3.3 4.0)))
557 (Voice Stem beamed-minimum-free-lengths
558 ,(map (lambda (x) (* 0.8 x)) '(2.5 2.0 1.5)))
559 (Voice Stem beamed-extreme-minimum-free-lengths
560 ,(map (lambda (x) (* 0.8 x)) '(1.83 1.5)))
562 (Voice Stem no-stem-extend #t)
563 (Voice Beam thickness 0.384)
564 (Voice Beam space-function ,(lambda (beam mult)
565 (* 0.8 (Beam::space_function
567 (Voice Accidental font-size -4)
568 (Voice Slur direction -1)
571 keepAliveInterfaces = #'(rhythmic-grob-interface lyric-interface percent-repeat-interface)
572 quotedEventTypes = #'(note-event rest-event time-scaled-music tie-event)
573 instrumentTransposition = #(ly:make-pitch 0 0 0)
575 verticallySpacedContexts = #'(Staff)
582 \type "Engraver_group_engraver"
585 \consists "Figured_bass_engraver"
586 \consists "Rest_swallow_translator"
587 \consists "Note_swallow_translator"
588 \consists "Skip_event_swallow_translator"
589 \consists "Separating_line_group_engraver"
590 \consists "Hara_kiri_engraver"
595 \type "Engraver_group_engraver"
597 %% don't want to route anything out of here:
600 \consists "Swallow_engraver"
601 \description "Silently discards all musical information given to this context. "
607 \consists "Tab_note_heads_engraver"
608 \remove "Note_heads_engraver"
609 \remove "Fingering_engraver"
610 \remove "New_fingering_engraver"
612 \description "Context for drawing notes in a Tab staff. "
613 \override Slur #'font-family = #'roman
614 \override Slur #'print-function = #hammer-print-function
615 \override Slur #'direction = #-1
617 %% Draws all stems/beams out of the staff (and not in the middle of the staff !)
618 %% This feature is now disabled because most of the tab does not use it.
619 %%\override Beam #'damping = #100000
620 %%\override Stem #'up-to-staff = ##t
622 %% TabStaff increase the staff-space, which in turn
623 %% increases beam thickness and spacing; beams are
624 %% too big. We have to adjust the beam settings:
625 \override Beam #'thickness = #0.32
626 \override Beam #'space-function =
627 #(lambda (beam mult) (* 0.62 (Beam::space_function beam mult)))
629 %% No accidental in tablature !
630 \remove Accidental_engraver
638 \remove "Staff_symbol_engraver"
639 \consists "Tab_staff_symbol_engraver"
641 \description "Context for generating tablature. [DOCME]"
644 \defaultchild "TabVoice"
647 \override StaffSymbol #'staff-space = #1.5
649 %% Don't draw stems over the tablature figures !
650 \override Stem #'avoid-note-head = ##t
652 %% No accidental in tablature !
653 \remove "Accidental_engraver"
654 \remove "Key_engraver"
655 \remove "String_number_engraver"
656 %% Special "TAB" clef
657 clefGlyph = #"clefs.tab"
661 %% TODO: Gregorian Chant contexts should be moved to gregorian-init.ly,
662 %% but this does not work (is this a bug or intended behaviour?):
664 %% If I try to do so, I get "error: unknown escaped string:
665 %% `\VaticanaStaff'" in params-init.ly. If I also move
666 %% "\context { \Vaticana*Context }" from params-init.ly to the end
667 %% of gregorian-init.ly, then I get "error: parse error, unexpected
668 %% TRANSLATOR: \context { \VaticanaStaff }" in
669 %% gregorian-init.ly. --jr
673 \name "VaticanaVoice"
675 \description "Same as @code{Voice} context, except that it is accommodated for tyepsetting Gregorian Chant in the notational style of Editio Vaticana."
677 \remove "Slur_engraver"
678 \remove "Stem_engraver"
679 \remove "Ligature_bracket_engraver"
680 \consists "Vaticana_ligature_engraver"
682 %% Set default head for notes outside of \[ \].
683 \override NoteHead #'style = #'vaticana.punctum
685 %% Put some space before and after divisiones.
686 %% FIXME: This does not seem to show any effect.
687 \override Script #'padding = #0.5
689 %% There are no beams in Gregorian Chant notation.
692 %% Prepare TextSpanner for \episem{Initium|Finis} use.
694 %% N.B.: dash-fraction MUST be unset; otherwise, TextSpanner will
695 %% always produce dashed lines, regardless of the style property.
697 %% FIXME: The line @code{\override TextSpanner #'padding = #-0.1} is
698 %% required to force the articulation signs being placed vertically
699 %% tightly to the correpsonding note heads.
701 \override TextSpanner #'dash-fraction = #'()
702 \override TextSpanner #'style = #'line
703 \override TextSpanner #'edge-height = #'(0 . 0)
704 \override TextSpanner #'padding = #-0.1
705 \override TextSpanner #'enclose-bounds = #1
706 \override TextSpanner #'edge-text = #'("" . "")
709 %% FIXME: need something like
710 %% \remove "Bar_number_engraver" (which lives on score level)
711 %% for vaticana and gregorian transcription staves
715 \name "VaticanaStaff"
718 \accepts "VaticanaVoice"
719 \defaultchild "VaticanaVoice"
721 \description "Same as @code{Staff} context, except that it is accommodated for tyepsetting Gregorian Chant in the notational style of Editio Vaticana."
723 \remove "Time_signature_engraver"
724 \consists "Custos_engraver"
726 %% We can not remove Bar_engraver; otherwise clefs and custodes will
727 %% not show up any more among other line breaking issues.
728 %% Instead, we make the grob transparent.
729 \override BarLine #'transparent = ##t
731 \override StaffSymbol #'line-count = #4
732 \override StaffSymbol #'thickness = #0.6
734 %% FIXME: unit on StaffSymbol's width should be \linewidth.
735 %% \override StaffSymbol #'width = #60.0
737 %% Choose vaticana do clef on 3rd line as default.
738 clefGlyph = #"clefs.vaticana.do"
743 %% Select vaticana style font.
744 \override KeySignature #'style = #'vaticana
745 \override Accidental #'style = #'vaticana
746 \override Custos #'style = #'vaticana
747 \override Custos #'neutral-position = #3
748 \override Custos #'neutral-direction = #-1
750 %% Score.timing = ##f
751 %% Score.barAlways = ##t
756 \name "GregorianTranscriptionVoice"
759 %% Removing ligature bracket engraver without replacing it by some
760 %% other ligature engraver would cause a "Junking event: `LigatureEvent'"
761 %% warning for every "\[" and "\]". Therefore, we make the grob
762 %% transparent instead.
763 \override LigatureBracket #'transparent = ##t
765 %% Put some space before and after divisiones.
766 %% FIXME: This does not seem to show any effect.
767 \override Script #'padding = #0.5
769 %% There are no beams in Gregorian Chant notation.
772 %% Prepare TextSpanner for \episem{Initium|Finis} use.
774 %% N.B.: dash-fraction MUST be unset; otherwise, TextSpanner will
775 %% always produce dashed lines, regardless of the style property.
777 %% FIXME: The line @code{\override TextSpanner #'padding = #-0.1} is
778 %% required to force the articulation signs being placed vertically
779 %% tightly to the correpsonding note heads.
781 \override TextSpanner #'dash-fraction = #'()
782 \override TextSpanner #'style = #'line
783 \override TextSpanner #'edge-height = #'(0 . 0)
784 \override TextSpanner #'padding = #-0.1
785 \override TextSpanner #'enclose-bounds = #1
786 \override TextSpanner #'edge-text = #'("" . "")
791 \name "GregorianTranscriptionStaff"
794 \accepts "GregorianTranscriptionVoice"
795 \defaultchild "GregorianTranscriptionVoice"
797 %% We can not remove Bar_engraver; otherwise clefs and custodes will
798 %% not show up any more among other line breaking issues.
799 %% Instead, we make the grob transparent.
800 \override BarLine #'transparent = ##t
805 \name "MensuralVoice"
807 \description "Same as @code{Voice} context, except that it is accommodated for tyepsetting a piece in mensural style."
809 \remove "Slur_engraver"
810 \remove "Ligature_bracket_engraver"
811 \consists "Mensural_ligature_engraver"
813 %% Set default head for notes outside of \[ \].
814 \override NoteHead #'style = #'petrucci
816 %% There are no beams in mensural notation.
822 \name "MensuralStaff"
825 \defaultchild "MensuralVoice"
826 \accepts "MensuralVoice"
827 \description "Same as @code{Staff} context, except that it is accommodated for tyepsetting a piece in mensural style."
829 \consists "Custos_engraver"
831 %% We can not remove Bar_engraver; otherwise clefs and custodes will
832 %% not show up any more among other line breaking issues.
833 %% Instead, we make the grob transparent.
834 \override BarLine #'transparent = ##t
836 \override StaffSymbol #'thickness = #0.6
838 %% FIXME: unit on StaffSymbol's width should be \linewidth.
839 %% \override StaffSymbol #'width = #60.0
841 %% Choose petrucci g clef on 2nd line as default.
842 clefGlyph = #"clefs.petrucci.g"
843 middleCPosition = #-6
847 %% Select mensural style font.
848 \override TimeSignature #'style = #'mensural
849 \override KeySignature #'style = #'mensural
850 \override Accidental #'style = #'mensural
851 \override Custos #'style = #'mensural
852 \override Custos #'neutral-position = #3
853 \override Custos #'neutral-direction = #-1
855 %% Score.timing = ##f
856 %% Score.barAlways = ##t
860 RemoveEmptyRhythmicStaffContext= \context {
862 \remove "Axis_group_engraver"
863 \consists "Hara_kiri_engraver"