9 \description "Hard coded entry point for LilyPond. Cannot be tuned."
10 \grobdescriptions #all-grob-descriptions
15 \type "Engraver_group"
17 \description "A context for displaying fret diagrams."
19 \consists "Fretboard_engraver"
20 \consists "Rest_swallow_translator"
21 \consists "Output_property_engraver"
22 \consists "Skip_event_swallow_translator"
23 \consists "Hara_kiri_engraver"
24 \consists "Separating_line_group_engraver"
25 \consists "Font_size_engraver"
26 \consists "Instrument_name_engraver"
28 predefinedDiagramTable = #fretboard-table
32 \type "Engraver_group"
35 \consists "Output_property_engraver"
36 \consists "Bar_engraver"
37 %% Bar_engraver must be first so default bars aren't overwritten
40 \consists "Font_size_engraver"
41 \consists "Separating_line_group_engraver"
42 \consists "Dot_column_engraver"
43 \consists "Staff_collecting_engraver"
45 %% perhaps move to Voice context?
46 \consists "Ottava_spanner_engraver"
47 \consists "Clef_engraver"
48 \consists "Key_engraver"
49 \consists "Time_signature_engraver"
50 \consists "Ledger_line_engraver"
51 \consists "Staff_symbol_engraver"
52 \consists "Collision_engraver"
53 \consists "Grob_pq_engraver"
54 \consists "Rest_collision_engraver"
55 \consists "Accidental_engraver"
56 \consists "Piano_pedal_engraver"
57 \consists "Piano_pedal_align_engraver"
58 \consists "Instrument_name_engraver"
59 \consists "String_number_engraver"
60 \consists "Axis_group_engraver"
61 \consists "Figured_bass_engraver"
62 \consists "Figured_bass_position_engraver"
63 \consists "Script_row_engraver"
65 localKeySignature = #'()
67 ignoreFiguredBassRest = ##t
68 \override VerticalAxisGroup #'minimum-Y-extent = #'(-4 . 4)
70 %% explicitly set instrument, so we don't get
71 %% weird effects when doing instrument names for
75 shortInstrumentName = #'()
81 \description "Handles clefs, bar lines, keys, accidentals. It can contain
82 @code{Voice} contexts."
88 \type "Engraver_group"
92 \remove "Accidental_engraver"
93 \remove "Ottava_spanner_engraver"
94 \remove "Key_engraver"
95 \remove "Piano_pedal_engraver"
96 \remove "String_number_engraver"
98 \description "Handles typesetting for percussion."
102 \defaultchild "DrumVoice"
104 clefGlyph = #"clefs.percussion"
106 \override Script #'staff-padding = #0.75
111 \type "Engraver_group"
113 \consists "System_start_delimiter_engraver"
114 systemStartDelimiter = #'SystemStartBracket
116 shortVocalName = #'()
120 \accepts "RhythmicStaff"
121 \accepts "GrandStaff"
122 \accepts "PianoStaff"
124 \accepts "ChordNames"
125 \accepts "ChoirStaff"
126 \accepts "StaffGroup"
127 \defaultchild "Staff"
128 \description "Identical to @code{StaffGroup} except that the
129 contained staves are not connected vertically."
133 \type "Engraver_group"
135 \override VerticalAxisGroup #'minimum-Y-extent = ##f
136 localKeySignature = #'()
139 squashedPosition = #0
143 \override BarLine #'bar-size = #4
144 \override VoltaBracket #'staff-padding = #3
145 \override StaffSymbol #'line-count = #1
147 \override Stem #'neutral-direction = #UP
148 \override Beam #'neutral-direction = #UP
150 \consists "Output_property_engraver"
151 \consists "Font_size_engraver"
152 \consists "Separating_line_group_engraver"
153 \consists "Dot_column_engraver"
154 \consists "Bar_engraver"
155 \consists "Staff_symbol_engraver"
156 \consists "Pitch_squash_engraver"
157 \consists "Time_signature_engraver"
158 \consists "Instrument_name_engraver"
159 \consists "Axis_group_engraver"
160 \consists "Ledger_line_engraver"
164 \defaultchild "Voice"
166 \description "A context like @code{Staff} but for printing rhythms.
167 Pitches are ignored; the notes are printed on one line."
172 \type "Engraver_group"
175 \description "Corresponds to a voice on a staff. This context
176 handles the conversion of dynamic signs, stems, beams, super- and
177 subscripts, slurs, ties, and rests.
179 You have to instantiate this explicitly if you want to have
180 multiple voices on the same staff."
182 localKeySignature = #'()
183 \consists "Font_size_engraver"
185 \consists "Pitched_trill_engraver"
186 \consists "Output_property_engraver"
187 \consists "Arpeggio_engraver"
188 \consists "Multi_measure_rest_engraver"
189 \consists "Text_spanner_engraver"
190 \consists "Trill_spanner_engraver"
191 \consists "Grob_pq_engraver"
192 \consists "Forbid_line_break_engraver"
193 \consists "Laissez_vibrer_engraver"
194 \consists "Repeat_tie_engraver"
195 \consists "Note_head_line_engraver"
196 \consists "Glissando_engraver"
197 \consists "Ligature_bracket_engraver"
198 \consists "Breathing_sign_engraver"
199 \consists "Note_heads_engraver"
200 \consists "Dots_engraver"
201 \consists "Rest_engraver"
202 \consists "Tweak_engraver"
204 %% switch on to make stem directions interpolate for the
206 % \consists "Melody_engraver"
208 \consists "Stem_engraver"
209 \consists "Beam_engraver"
210 \consists "Grace_beam_engraver"
211 \consists "Auto_beam_engraver"
213 %% must come before Script_column_engraver.
214 \consists "New_fingering_engraver"
216 \consists "Chord_tremolo_engraver"
217 \consists "Percent_repeat_engraver"
218 \consists "Slash_repeat_engraver"
219 \consists "Part_combine_engraver"
221 \consists "Text_engraver"
222 \consists "New_dynamic_engraver"
223 \consists "Dynamic_align_engraver"
224 % \consists "Dynamic_engraver"
225 \consists "Fingering_engraver"
226 \consists "Bend_engraver"
228 \consists "Script_engraver"
229 \consists "Script_column_engraver"
230 \consists "Rhythmic_column_engraver"
231 \consists "Note_spacing_engraver"
232 \consists "Spanner_break_forbid_engraver"
233 \consists "Phrasing_slur_engraver"
234 \consists "Cluster_spanner_engraver"
235 \consists "Slur_engraver"
236 \consists "Tie_engraver"
237 \consists "Tuplet_engraver"
238 \consists "Grace_engraver"
239 \consists "Instrument_switch_engraver"
240 \consists "Skip_event_swallow_translator"
249 \override Stem #'length-fraction = #(magstep -4)
250 \override Beam #'length-fraction = #(magstep -4)
251 \override Beam #'thickness = #0.35
259 \description "A voice on a percussion staff."
260 \remove "Arpeggio_engraver"
261 \consists "Grob_pq_engraver"
263 \remove "Note_head_line_engraver"
264 \remove "Glissando_engraver"
265 \remove "Ligature_bracket_engraver"
266 \remove "Note_heads_engraver"
267 \consists "Drum_notes_engraver"
268 \remove "New_fingering_engraver"
270 \remove "Fingering_engraver"
272 \remove "Cluster_spanner_engraver"
274 \consists "Skip_event_swallow_translator"
278 \type "Engraver_group"
280 localKeySignature = #'()
282 \description "A group of staves, with a brace on the left
283 side, grouping the staves together. The bar lines of the
284 contained staves are connected vertically."
286 \consists "Span_bar_engraver"
287 \consists "Span_arpeggio_engraver"
288 \consists "System_start_delimiter_engraver"
289 systemStartDelimiter = #'SystemStartBrace
291 \defaultchild "Staff"
293 \accepts "FiguredBass"
301 \description "Just like @code{GrandStaff} but with support for
302 instrument names at the start of each system."
304 \consists "Instrument_name_engraver"
306 instrumentName = #'()
307 shortInstrumentName = #'()
311 \type "Engraver_group"
314 \consists "Span_bar_engraver"
315 \consists "Span_arpeggio_engraver"
316 \consists "Output_property_engraver"
317 systemStartDelimiter = #'SystemStartBracket
319 \consists "System_start_delimiter_engraver"
321 \defaultchild "Staff"
323 \accepts "RhythmicStaff"
325 \accepts "GrandStaff"
326 \accepts "PianoStaff"
329 \accepts "ChordNames"
330 \accepts "FiguredBass"
331 \accepts "ChoirStaff"
332 \accepts "StaffGroup"
334 \description "Groups staves while adding a bracket on the left
335 side, grouping the staves together. The bar lines of the contained
336 staves are connected vertically. @code{StaffGroup} only consists of
337 a collection of staves, with a bracket in front and spanning bar lines."
341 \type "Engraver_group"
342 \override VerticalAxisGroup #'minimum-Y-extent = #'(-0.75 . 2.0)
344 \description "Corresponds to a voice with lyrics. Handles the
345 printing of a single line of lyrics."
348 instrumentName = #'()
349 shortInstrumentName = #'()
351 \consists "Lyric_engraver"
352 \consists "Extender_engraver"
353 \consists "Hyphen_engraver"
354 \consists "Stanza_number_engraver"
355 \consists "Instrument_name_engraver"
356 \consists "Skip_event_swallow_translator"
357 \consists "Font_size_engraver"
358 \consists "Hara_kiri_engraver"
360 \override VerticalAxisGroup #'remove-first = ##t
361 \override VerticalAxisGroup #'remove-empty = ##t
362 \override VerticalAxisGroup #'keep-fixed-while-stretching = ##t
363 \override SeparationItem #'padding = #0.2
364 \override InstrumentName #'self-alignment-Y = ##f
366 %% sync with define-grobs.scm ;
367 \override InstrumentName #'font-size = #1.0
369 %% make sure that barlines aren't collapsed, when
370 %% Bar_engraver is there.
371 \override BarLine #'bar-size = #0.1
376 \type "Engraver_group"
378 \description "A context for printing the names of notes."
379 \consists "Axis_group_engraver"
381 \override VerticalAxisGroup #'minimum-Y-extent = ##f
384 \consists "Rest_swallow_translator"
385 \consists "Skip_event_swallow_translator"
386 \consists "Tie_engraver"
387 \consists "Note_name_engraver"
388 \consists "Separating_line_group_engraver"
392 \type "Engraver_group"
394 \description "Typesets chord names."
396 \consists "Rest_swallow_translator"
397 \consists "Output_property_engraver"
398 \consists "Separating_line_group_engraver"
399 \consists "Chord_name_engraver"
400 \consists "Skip_event_swallow_translator"
401 \consists "Hara_kiri_engraver"
402 % \consists "Note_spacing_engraver"
403 \override VerticalAxisGroup #'minimum-Y-extent = #'(0 . 2)
404 \override VerticalAxisGroup #'remove-first = ##t
405 \override VerticalAxisGroup #'remove-empty = ##t
409 RemoveEmptyStaffContext= \context {
411 \remove "Axis_group_engraver"
412 \consists "Hara_kiri_engraver"
413 \override Beam #'auto-knee-gap = #'()
414 \override VerticalAxisGroup #'remove-empty = ##t
417 AncientRemoveEmptyStaffContext = \context {
418 %% why not add by default?
420 \RemoveEmptyStaffContext
421 \accepts "VaticanaVoice"
422 \accepts "GregorianTranscriptionVoice"
423 \accepts "MensuralVoice"
427 \type "Score_engraver"
430 \description "This is the top level notation context. No
431 other context can contain a @code{Score} context. This context
432 handles the administration of time signatures. It also makes sure
433 that items such as clefs, time signatures, and key-signatures are
434 aligned across staves.
436 You cannot explicitly instantiate a @code{Score} context (since it
437 is not contained in any other context). It is instantiated
438 automatically when an output definition (a @code{\score} or
439 @code{\layout} block) is processed."
441 \consists "Paper_column_engraver"
442 \consists "Vertically_spaced_contexts_engraver"
443 \consists "Repeat_acknowledge_engraver"
444 \consists "Staff_collecting_engraver"
446 %% move the alias along with the engraver.
448 \consists "Timing_translator"
449 \consists "Default_bar_line_engraver"
450 \consists "Output_property_engraver"
451 \consists "System_start_delimiter_engraver"
452 \consists "Mark_engraver"
453 \consists "Volta_engraver"
454 \consists "Metronome_mark_engraver"
455 \consists "Break_align_engraver"
456 \consists "Spacing_engraver"
457 \consists "Grace_spacing_engraver"
458 \consists "Vertical_align_engraver"
459 \consists "Stanza_number_align_engraver"
460 \consists "Bar_number_engraver"
461 \consists "Parenthesis_engraver"
463 \defaultchild "Staff"
465 \accepts "FretBoards"
467 \accepts "RhythmicStaff"
469 \accepts "VaticanaStaff"
470 \accepts "GregorianTranscriptionStaff"
471 \accepts "MensuralStaff"
472 \accepts "StaffGroup"
475 \accepts "ChordNames"
476 \accepts "GrandStaff"
477 \accepts "ChoirStaff"
478 \accepts "PianoStaff"
481 \accepts "FiguredBass"
484 noteToFretFunction = #determine-frets
486 soloIIText = #"Solo II"
488 printPartCombineTexts = ##t
489 systemStartDelimiter =#'SystemStartBar
491 drumStyleTable = #drums-style
493 melismaBusyProperties = #default-melisma-properties
495 clefGlyph = #"clefs.G"
497 middleCClefPosition = #-6
498 middleCPosition = #-6
501 crescendoSpanner = #'hairpin
502 decrescendoSpanner = #'hairpin
504 defaultBarType = #"|"
505 doubleRepeatType = #":|:"
506 barNumberVisibility = #first-bar-number-invisible
509 explicitClefVisibility = #all-visible
510 explicitKeySignatureVisibility = #all-visible
511 implicitTimeSignatureVisibility = #end-of-line-invisible
513 repeatCountVisibility = #all-repeat-counts-visible
515 autoBeamSettings = #default-auto-beam-settings
517 autoBeamCheck = #default-auto-beam-check
518 scriptDefinitions = #default-script-alist
520 pedalSustainStrings = #'("Ped." "*Ped." "*")
521 pedalSustainStyle = #'text
522 pedalUnaCordaStrings = #'("una corda" "" "tre corde")
523 pedalUnaCordaStyle = #'text
525 %% These are in ordinary italic font, including the *,
526 %% but they are unlikely to be used,
527 %% as the default pedal-style for SostenutoPedal is 'mixed':
528 %% i.e. Sost. Ped_____________________
529 pedalSostenutoStrings = #'("Sost. Ped." "*Sost. Ped." "*")
530 pedalSostenutoStyle = #'mixed
532 harmonicAccidentals = ##t
533 fingeringOrientations = #'(up down)
534 stringNumberOrientations = #'(up down)
535 strokeFingerOrientations = #'(right)
537 lyricMelismaAlignment = #LEFT
538 markFormatter = #format-mark-letters
542 autoAccidentals = #`(Staff ,(make-accidental-rule 'same-octave 0))
543 autoCautionaries = #'()
545 printKeyCancellation = ##t
546 keyAlterationOrder = #`(
547 (6 . ,FLAT) (2 . ,FLAT) (5 . ,FLAT ) (1 . ,FLAT) (4 . ,FLAT) (0 . ,FLAT) (3 . ,FLAT)
548 (3 . ,SHARP) (0 . ,SHARP) (4 . ,SHARP) (1 . ,SHARP) (5 . ,SHARP) (2 . ,SHARP) (6 . ,SHARP)
549 (6 . ,DOUBLE-FLAT) (2 . ,DOUBLE-FLAT) (5 . ,DOUBLE-FLAT ) (1 . ,DOUBLE-FLAT) (4 . ,DOUBLE-FLAT) (0 . ,DOUBLE-FLAT) (3 . ,DOUBLE-FLAT)
550 (3 . ,DOUBLE-SHARP) (0 . ,DOUBLE-SHARP) (4 . ,DOUBLE-SHARP) (2 . ,DOUBLE-SHARP) (5 . ,DOUBLE-SHARP) (2 . ,DOUBLE-SHARP) (6 . ,DOUBLE-SHARP)
553 barCheckSynchronize = ##f
556 chordNameFunction = #ignatzek-chord-names
557 majorSevenSymbol = #whiteTriangleMarkup
558 chordNameSeparator = #(make-simple-markup "/")
559 chordNameExceptions = #ignatzekExceptions
560 chordNoteNamer = #'()
561 chordRootNamer = #note-name->markup
562 chordPrefixSpacer = #0
563 chordNameExceptionsFull = #fullJazzExceptions
564 chordNameExceptionsPartial = #partialJazzExceptions
565 noChordSymbol = #(make-simple-markup "N.C.")
567 bassStaffProperties = #'((assign clefGlyph "clefs.F")
568 (assign clefPosition 2)
569 (assign middleCPosition 6)
570 (assign middleCClefPosition 6))
572 stringOneTopmost = ##t
575 %% One may change the strings tuning as following :
576 %% The lenght of the list must be equal to the number of string
577 stringTunings = #guitar-tuning
578 tablatureFormat = #fret-number-tablature-format
581 figuredBassFormatter = #format-bass-figure
582 metronomeMarkFormatter = #format-metronome-markup
585 %% See also make-voice-props-set
587 (Voice Stem direction ,UP)
588 (Voice Stem font-size -3)
589 (Voice NoteHead font-size -3)
590 (Voice Dots font-size -3)
591 (Voice Stem length-fraction 0.8)
592 (Voice Stem no-stem-extend #t)
593 (Voice Beam thickness 0.384)
594 (Voice Beam length-fraction 0.8)
595 (Voice Accidental font-size -4)
596 (Voice AccidentalCautionary font-size -4)
597 (Voice Slur direction ,DOWN)
598 (Voice Script font-size -3)
599 (Voice Fingering font-size -8)
600 (Voice StringNumber font-size -8)
603 keepAliveInterfaces = #'(
604 rhythmic-grob-interface
606 percent-repeat-item-interface
607 percent-repeat-interface
609 ;; need this, as stanza numbers are items, and appear only once.
610 stanza-number-interface
612 quotedEventTypes = #'(
618 instrumentTransposition = #(ly:make-pitch 0 0 0)
620 verticallySpacedContexts = #'(Staff)
629 \type "Engraver_group"
631 \description "A context for printing a figured bass line."
633 \consists "Figured_bass_engraver"
634 \consists "Note_swallow_translator"
635 \consists "Skip_event_swallow_translator"
636 \consists "Separating_line_group_engraver"
637 \consists "Hara_kiri_engraver"
639 \override VerticalAxisGroup #'remove-empty = ##t
640 \override VerticalAxisGroup #'remove-first = ##t
641 \override VerticalAxisGroup #'minimum-Y-extent = #'(0 . 2)
646 \type "Engraver_group"
648 %% don't want to route anything out of here:
651 \consists "Swallow_engraver"
652 \description "Silently discards all musical information given to this
660 \consists "Tab_note_heads_engraver"
661 \consists "Tab_harmonic_engraver"
663 \remove "Note_heads_engraver"
664 \remove "Fingering_engraver"
665 \remove "New_fingering_engraver"
667 \description "Context for drawing notes in a Tab staff."
669 %% TabStaff increase the staff-space, which in turn
670 %% increases beam thickness and spacing; beams are
671 %% too big. We have to adjust the beam settings:
672 \override Beam #'thickness = #0.32
673 \override Beam #'length-fraction = #0.62
675 %% No accidental in tablature !
676 \remove "Accidental_engraver"
678 \override Glissando #'extra-dy = #0.75
679 \override Glissando #'bound-details #'right = #`((attach-dir . ,LEFT)
681 \override Glissando #'bound-details #'left = #`((attach-dir . ,RIGHT)
690 \consists "Tab_staff_symbol_engraver"
692 \description "Context for generating tablature. [DOCME]"
695 \defaultchild "TabVoice"
698 \override StaffSymbol #'staff-space = #1.5
700 %% Don't draw stems over the tablature figures !
701 \override Stem #'avoid-note-head = ##t
703 %% No accidental in tablature !
704 \remove "Accidental_engraver"
705 \remove "Key_engraver"
706 \remove "String_number_engraver"
707 %% Special "TAB" clef
708 clefGlyph = #"clefs.tab"
712 %% TODO: Gregorian Chant contexts should be moved to gregorian.ly,
713 %% but this does not work (is this a bug or intended behaviour?):
715 %% If I try to do so, I get "error: unknown escaped string:
716 %% `\VaticanaStaff'" in params-init.ly. If I also move
717 %% "\context { \Vaticana*Context }" from params-init.ly to the end
718 %% of gregorian.ly, then I get "error: parse error, unexpected
719 %% TRANSLATOR: \context { \VaticanaStaff }" in
720 %% gregorian.ly. --jr
724 \name "VaticanaVoice"
726 \description "Same as @code{Voice} context, except that it is
727 accommodated for typesetting Gregorian Chant in the notational style
730 \remove "Slur_engraver"
731 \remove "Stem_engraver"
732 \remove "Ligature_bracket_engraver"
733 \consists "Vaticana_ligature_engraver"
735 %% Set default head for notes outside of \[ \].
736 \override NoteHead #'style = #'vaticana.punctum
738 %% Put some space before and after divisiones.
739 %% FIXME: This does not seem to show any effect.
740 \override Script #'padding = #0.5
742 %% There are no beams in Gregorian Chant notation.
745 %% Prepare TextSpanner for \episem{Initium|Finis} use.
747 %% FIXME: The line @code{\override TextSpanner #'padding = #-0.1} is
748 %% required to force the articulation signs being placed vertically
749 %% tightly to the correpsonding note heads.
751 \override TextSpanner #'style = #'line
752 \override TextSpanner #'padding = #-0.1
757 \name "VaticanaStaff"
760 \accepts "VaticanaVoice"
761 \defaultchild "VaticanaVoice"
763 \description "Same as @code{Staff} context, except that it is
764 accommodated for typesetting Gregorian Chant in the notational style
767 \remove "Time_signature_engraver"
768 \consists "Custos_engraver"
770 %% We can not remove Bar_engraver; otherwise clefs and custodes will
771 %% not show up any more among other line breaking issues.
772 %% Instead, we make the grob transparent.
773 \override BarLine #'transparent = ##t
775 \override StaffSymbol #'line-count = #4
776 \override StaffSymbol #'thickness = #0.6
778 %% FIXME: unit on StaffSymbol's width should be \linewidth.
779 %% \override StaffSymbol #'width = #60.0
781 %% Choose vaticana do clef on 3rd line as default.
782 clefGlyph = #"clefs.vaticana.do"
784 middleCClefPosition = #1
788 %% Select vaticana style font.
789 \override KeySignature #'glyph-name-alist = #alteration-vaticana-glyph-name-alist
790 \override Accidental #'glyph-name-alist = #alteration-vaticana-glyph-name-alist
791 \override Custos #'style = #'vaticana
792 \override Custos #'neutral-position = #3
793 \override Custos #'neutral-direction = #DOWN
794 \override Dots #'style = #'vaticana
799 \name "GregorianTranscriptionVoice"
802 %% Removing ligature bracket engraver without replacing it by some
803 %% other ligature engraver would cause a "Junking event: `LigatureEvent'"
804 %% warning for every "\[" and "\]". Therefore, we make the grob
805 %% transparent instead.
806 \override LigatureBracket #'transparent = ##t
808 %% Put some space before and after divisiones.
809 %% FIXME: This does not seem to show any effect.
810 \override Script #'padding = #0.5
812 %% There are no beams in Gregorian Chant notation.
815 %% Prepare TextSpanner for \episem{Initium|Finis} use.
817 %% N.B.: dash-fraction MUST be unset; otherwise, TextSpanner will
818 %% always produce dashed lines, regardless of the style property.
820 %% FIXME: The line @code{\override TextSpanner #'padding = #-0.1} is
821 %% required to force the articulation signs being placed vertically
822 %% tightly to the correpsonding note heads.
824 \override TextSpanner #'dash-fraction = #'()
825 \override TextSpanner #'style = #'line
826 \override TextSpanner #'padding = #-0.1
831 \name "GregorianTranscriptionStaff"
834 \accepts "GregorianTranscriptionVoice"
835 \defaultchild "GregorianTranscriptionVoice"
837 %% We can not remove Bar_engraver; otherwise clefs and custodes will
838 %% not show up any more among other line breaking issues.
839 %% Instead, we make the grob transparent.
840 \override BarLine #'transparent = ##t
845 \name "MensuralVoice"
847 \description "Same as @code{Voice} context, except that it is
848 accommodated for typesetting a piece in mensural style."
850 \remove "Slur_engraver"
851 \remove "Ligature_bracket_engraver"
852 \consists "Mensural_ligature_engraver"
854 %% Set default head for notes outside of \[ \].
855 \override NoteHead #'style = #'mensural
856 \override Rest #'style = #'mensural
858 %% There are no beams in mensural notation.
864 \name "MensuralStaff"
867 \defaultchild "MensuralVoice"
868 \accepts "MensuralVoice"
869 \description "Same as @code{Staff} context, except that it is
870 accommodated for typesetting a piece in mensural style."
872 \consists "Custos_engraver"
874 %% We can not remove Bar_engraver; otherwise clefs and custodes will
875 %% not show up any more among other line breaking issues.
876 %% Instead, we make the grob transparent.
877 \override BarLine #'transparent = ##t
879 \override StaffSymbol #'thickness = #0.6
881 %% FIXME: unit on StaffSymbol's width should be \linewidth.
882 %% \override StaffSymbol #'width = #60.0
884 %% Choose mensural g clef on 2nd line as default.
885 clefGlyph = #"clefs.mensural.g"
886 middleCClefPosition = #-6
887 middleCPosition = #-6
891 %% Select mensural style font.
892 \override TimeSignature #'style = #'mensural
893 \override KeySignature #'glyph-name-alist = #alteration-mensural-glyph-name-alist
894 \override Accidental #'glyph-name-alist = #alteration-mensural-glyph-name-alist
895 \override Custos #'style = #'mensural
896 \override Custos #'neutral-position = #3
897 \override Custos #'neutral-direction = #DOWN
899 %% Accidentals are valid only once (same as
900 %% #(set-accidental-style 'forget))
902 autoAccidentals = #`(Staff ,(make-accidental-rule 'same-octave -1))
903 autoCautionaries = #'()
904 printKeyCancellation = ##f
908 RemoveEmptyRhythmicStaffContext= \context {
910 \remove "Axis_group_engraver"
911 \override VerticalAxisGroup #'remove-empty = ##t
912 \consists "Hara_kiri_engraver"