9 \description "Hard coded entry point for LilyPond. Cannot be tuned."
10 \grobdescriptions #all-grob-descriptions
15 \type "Engraver_group"
18 \consists "Output_property_engraver"
20 \consists "Axis_group_engraver"
21 \consists "Fretboard_engraver"
22 \consists "Separating_line_group_engraver"
23 \consists "Font_size_engraver"
24 \consists "Instrument_name_engraver"
26 predefinedDiagramTable
= #fretboard-table
30 \type "Engraver_group"
33 \consists "Output_property_engraver"
34 \consists "Bar_engraver"
35 %% Bar_engraver must be first so default bars aren't overwritten
38 \consists "Font_size_engraver"
39 \consists "Separating_line_group_engraver"
40 \consists "Dot_column_engraver"
41 \consists "Staff_collecting_engraver"
43 %% perhaps move to Voice context?
44 \consists "Ottava_spanner_engraver"
45 \consists "Clef_engraver"
46 \consists "Key_engraver"
47 \consists "Time_signature_engraver"
48 \consists "Ledger_line_engraver"
49 \consists "Staff_symbol_engraver"
50 \consists "Collision_engraver"
51 \consists "Rest_collision_engraver"
52 \consists "Accidental_engraver"
53 \consists "Piano_pedal_engraver"
54 \consists "Piano_pedal_align_engraver"
55 \consists "Instrument_name_engraver"
56 \consists "String_number_engraver"
57 \consists "Axis_group_engraver"
58 \consists "Figured_bass_engraver"
59 \consists "Figured_bass_position_engraver"
60 \consists "Script_row_engraver"
62 localKeySignature
= #'()
64 ignoreFiguredBassRest
= ##t
65 \override VerticalAxisGroup
#'minimum-Y-extent
= #'(-
4 . 4)
67 %% explicitly set instrument, so we don't get
68 %% weird effects when doing instrument names for
72 shortInstrumentName
= #'()
78 \description "Handles clefs, bar lines, keys, accidentals. It can contain
79 @code{Voice} contexts."
85 \type "Engraver_group"
89 \remove "Accidental_engraver"
90 \remove "Ottava_spanner_engraver"
91 \remove "Key_engraver"
92 \remove "Piano_pedal_engraver"
93 \remove "String_number_engraver"
95 \description "Handles typesetting for percussion."
99 \defaultchild "DrumVoice"
101 clefGlyph
= #"clefs.percussion"
103 \override Script
#'staff-padding
= #0.75
108 \type "Engraver_group"
109 \name "InnerChoirStaff"
110 \consists "System_start_delimiter_engraver"
111 systemStartDelimiter
= #'SystemStartBracket
113 shortVocalName
= #'()
117 \accepts "RhythmicStaff"
118 \accepts "GrandStaff"
119 \accepts "PianoStaff"
121 \accepts "ChordNames"
122 \defaultchild "Staff"
129 \defaultchild "Staff"
130 \accepts "InnerChoirStaff"
131 \accepts "InnerStaffGroup"
132 \description "Identical to @code{StaffGroup} except that the
133 contained staves are not connected vertically."
138 \type "Engraver_group"
140 \override VerticalAxisGroup
#'minimum-Y-extent
= ##f
141 localKeySignature
= #'()
144 squashedPosition
= #0
148 \override BarLine
#'bar-size
= #4
149 \override VoltaBracket
#'staff-padding
= #3
150 \override StaffSymbol
#'line-count
= #1
152 \override Stem
#'neutral-direction
= #UP
153 \override Beam
#'neutral-direction
= #UP
155 \consists "Output_property_engraver"
156 \consists "Font_size_engraver"
157 \consists "Separating_line_group_engraver"
158 \consists "Dot_column_engraver"
159 \consists "Bar_engraver"
160 \consists "Staff_symbol_engraver"
161 \consists "Pitch_squash_engraver"
162 \consists "Time_signature_engraver"
163 \consists "Instrument_name_engraver"
164 \consists "Axis_group_engraver"
165 \consists "Ledger_line_engraver"
169 \defaultchild "Voice"
171 \description "A context like @code{Staff} but for printing rhythms.
172 Pitches are ignored; the notes are printed on one line."
177 \type "Engraver_group"
180 \description "Corresponds to a voice on a staff. This context
181 handles the conversion of dynamic signs, stems, beams, super- and
182 subscripts, slurs, ties, and rests.
184 You have to instantiate this explicitly if you want to have
185 multiple voices on the same staff."
187 localKeySignature
= #'()
188 \consists "Font_size_engraver"
190 \consists "Pitched_trill_engraver"
191 \consists "Output_property_engraver"
192 \consists "Arpeggio_engraver"
193 \consists "Multi_measure_rest_engraver"
194 \consists "Text_spanner_engraver"
195 \consists "Trill_spanner_engraver"
196 \consists "Grob_pq_engraver"
197 \consists "Forbid_line_break_engraver"
198 \consists "Laissez_vibrer_engraver"
199 \consists "Repeat_tie_engraver"
200 \consists "Note_head_line_engraver"
201 \consists "Glissando_engraver"
202 \consists "Ligature_bracket_engraver"
203 \consists "Breathing_sign_engraver"
204 \consists "Note_heads_engraver"
205 \consists "Dots_engraver"
206 \consists "Rest_engraver"
207 \consists "Tweak_engraver"
209 %% switch on to make stem directions interpolate for the
211 % \consists "Melody_engraver"
213 \consists "Stem_engraver"
214 \consists "Beam_engraver"
215 \consists "Grace_beam_engraver"
216 \consists "Auto_beam_engraver"
218 %% must come before Script_column_engraver.
219 \consists "New_fingering_engraver"
221 \consists "Chord_tremolo_engraver"
222 \consists "Percent_repeat_engraver"
223 \consists "Slash_repeat_engraver"
224 \consists "Part_combine_engraver"
226 \consists "Text_engraver"
227 \consists "New_dynamic_engraver"
228 \consists "Dynamic_align_engraver"
229 % \consists "Dynamic_engraver"
230 \consists "Fingering_engraver"
231 \consists "Bend_engraver"
233 \consists "Script_engraver"
234 \consists "Script_column_engraver"
235 \consists "Rhythmic_column_engraver"
236 \consists "Note_spacing_engraver"
237 \consists "Spanner_break_forbid_engraver"
238 \consists "Phrasing_slur_engraver"
239 \consists "Cluster_spanner_engraver"
240 \consists "Slur_engraver"
241 \consists "Tie_engraver"
242 \consists "Tuplet_engraver"
243 \consists "Grace_engraver"
244 \consists "Instrument_switch_engraver"
245 \consists "Skip_event_swallow_translator"
254 \override Stem
#'length-fraction
= #(magstep -
4)
255 \override Beam
#'length-fraction
= #(magstep -
4)
256 \override Beam
#'thickness
= #0.35
264 \description "A voice on a percussion staff."
265 \remove "Arpeggio_engraver"
266 \consists "Grob_pq_engraver"
268 \remove "Note_head_line_engraver"
269 \remove "Glissando_engraver"
270 \remove "Ligature_bracket_engraver"
271 \remove "Note_heads_engraver"
272 \consists "Drum_notes_engraver"
273 \remove "New_fingering_engraver"
275 \remove "Fingering_engraver"
277 \remove "Cluster_spanner_engraver"
279 \consists "Skip_event_swallow_translator"
283 \type "Engraver_group"
285 localKeySignature
= #'()
287 \description "A group of staves, with a brace on the left
288 side, grouping the staves together. The bar lines of the
289 contained staves are connected vertically."
291 \consists "Span_bar_engraver"
292 \consists "Span_arpeggio_engraver"
293 \consists "System_start_delimiter_engraver"
294 systemStartDelimiter
= #'SystemStartBrace
296 \defaultchild "Staff"
298 \accepts "FiguredBass"
306 \description "Just like @code{GrandStaff} but with support for
307 instrument names at the start of each system."
309 \consists "Instrument_name_engraver"
311 instrumentName
= #'()
312 shortInstrumentName
= #'()
316 \type "Engraver_group"
317 \name InnerStaffGroup
319 \consists "Span_bar_engraver"
320 \consists "Span_arpeggio_engraver"
321 \consists "Output_property_engraver"
322 systemStartDelimiter
= #'SystemStartBracket
324 \consists "System_start_delimiter_engraver"
326 \defaultchild "Staff"
328 \accepts "RhythmicStaff"
330 \accepts "GrandStaff"
331 \accepts "PianoStaff"
334 \accepts "ChordNames"
341 \description "Groups staves while adding a bracket on the left
342 side, grouping the staves together. The bar lines of the contained
343 staves are connected vertically. @code{StaffGroup} only consists of
344 a collection of staves, with a bracket in front and spanning bar lines."
346 \accepts "InnerChoirStaff"
347 \accepts "ChoirStaff"
348 \accepts "InnerStaffGroup"
349 \accepts "FiguredBass"
354 \type "Engraver_group"
355 \override VerticalAxisGroup
#'minimum-Y-extent
= #'(-
0.75 . 2.0)
357 \description "Corresponds to a voice with lyrics. Handles the
358 printing of a single line of lyrics."
361 instrumentName
= #'()
362 shortInstrumentName
= #'()
364 \consists "Lyric_engraver"
365 \consists "Extender_engraver"
366 \consists "Hyphen_engraver"
367 \consists "Stanza_number_engraver"
368 \consists "Instrument_name_engraver"
369 \consists "Skip_event_swallow_translator"
370 \consists "Font_size_engraver"
371 \consists "Hara_kiri_engraver"
373 \override VerticalAxisGroup
#'remove-first
= ##t
374 \override VerticalAxisGroup
#'remove-empty
= ##t
375 \override VerticalAxisGroup
#'keep-fixed-while-stretching
= ##t
376 \override SeparationItem
#'padding
= #0.2
377 \override InstrumentName
#'self-alignment-Y
= ##f
379 %% sync with define-grobs.scm ;
380 \override InstrumentName
#'font-size
= #1.0
382 %% make sure that barlines aren't collapsed, when
383 %% Bar_engraver is there.
384 \override BarLine
#'bar-size
= #0.1
389 \type "Engraver_group"
391 \consists "Axis_group_engraver"
393 \override VerticalAxisGroup
#'minimum-Y-extent
= ##f
396 \consists "Rest_swallow_translator"
397 \consists "Skip_event_swallow_translator"
398 \consists "Tie_engraver"
399 \consists "Note_name_engraver"
400 \consists "Separating_line_group_engraver"
404 \type "Engraver_group"
406 \description "Typesets chord names."
408 \consists "Rest_swallow_translator"
409 \consists "Output_property_engraver"
410 \consists "Separating_line_group_engraver"
411 \consists "Chord_name_engraver"
412 \consists "Skip_event_swallow_translator"
413 \consists "Hara_kiri_engraver"
414 % \consists "Note_spacing_engraver"
415 \override VerticalAxisGroup
#'minimum-Y-extent
= #'(0 . 2)
416 \override VerticalAxisGroup
#'remove-first
= ##t
417 \override VerticalAxisGroup
#'remove-empty
= ##t
421 RemoveEmptyStaffContext
= \context {
423 \remove "Axis_group_engraver"
424 \consists "Hara_kiri_engraver"
425 \override Beam
#'auto-knee-gap
= #'()
426 \override VerticalAxisGroup
#'remove-empty
= ##t
429 AncientRemoveEmptyStaffContext
= \context {
430 %% why not add by default?
432 \RemoveEmptyStaffContext
433 \accepts "VaticanaVoice"
434 \accepts "GregorianTranscriptionVoice"
435 \accepts "MensuralVoice"
439 \type "Score_engraver"
442 \description "This is the top level notation context. No
443 other context can contain a @code{Score} context. This context
444 handles the administration of time signatures. It also makes sure
445 that items such as clefs, time signatures, and key-signatures are
446 aligned across staves.
448 You cannot explicitly instantiate a @code{Score} context (since it
449 is not contained in any other context). It is instantiated
450 automatically when an output definition (a @code{\score} or
451 @code{\layout} block) is processed."
453 \consists "Paper_column_engraver"
454 \consists "Vertically_spaced_contexts_engraver"
455 \consists "Repeat_acknowledge_engraver"
456 \consists "Staff_collecting_engraver"
458 %% move the alias along with the engraver.
460 \consists "Timing_translator"
461 \consists "Default_bar_line_engraver"
462 \consists "Output_property_engraver"
463 \consists "System_start_delimiter_engraver"
464 \consists "Mark_engraver"
465 \consists "Volta_engraver"
466 \consists "Metronome_mark_engraver"
467 \consists "Break_align_engraver"
468 \consists "Spacing_engraver"
469 \consists "Grace_spacing_engraver"
470 \consists "Vertical_align_engraver"
471 \consists "Stanza_number_align_engraver"
472 \consists "Bar_number_engraver"
473 \consists "Parenthesis_engraver"
475 \defaultchild "Staff"
477 \accepts "FretBoards"
479 \accepts "RhythmicStaff"
481 \accepts "VaticanaStaff"
482 \accepts "GregorianTranscriptionStaff"
483 \accepts "MensuralStaff"
484 \accepts "StaffGroup"
487 \accepts "ChordNames"
488 \accepts "GrandStaff"
489 \accepts "ChoirStaff"
490 \accepts "PianoStaff"
493 \accepts "FiguredBass"
496 noteToFretFunction
= #determine-frets
498 soloIIText
= #"Solo II"
500 printPartCombineTexts
= ##t
501 systemStartDelimiter
=#'SystemStartBar
503 drumStyleTable
= #drums-style
505 melismaBusyProperties
= #default-melisma-properties
507 clefGlyph
= #"clefs.G"
509 middleCClefPosition
= #-
6
510 middleCPosition
= #-
6
513 crescendoSpanner
= #'hairpin
514 decrescendoSpanner
= #'hairpin
516 defaultBarType
= #"|"
517 doubleRepeatType
= #":|:"
518 barNumberVisibility
= #first-bar-number-invisible
521 explicitClefVisibility
= #all-visible
522 explicitKeySignatureVisibility
= #all-visible
523 implicitTimeSignatureVisibility
= #end-of-line-invisible
525 repeatCountVisibility
= #all-repeat-counts-visible
527 autoBeamSettings
= #default-auto-beam-settings
529 autoBeamCheck
= #default-auto-beam-check
530 scriptDefinitions
= #default-script-alist
532 pedalSustainStrings
= #'("Ped." "*Ped." "*")
533 pedalSustainStyle
= #'text
534 pedalUnaCordaStrings
= #'("una corda" "" "tre corde")
535 pedalUnaCordaStyle
= #'text
537 %% These are in ordinary italic font, including the *,
538 %% but they are unlikely to be used,
539 %% as the default pedal-style for SostenutoPedal is 'mixed':
540 %% i.e. Sost. Ped_____________________
541 pedalSostenutoStrings
= #'("Sost. Ped." "*Sost. Ped." "*")
542 pedalSostenutoStyle
= #'mixed
544 harmonicAccidentals
= ##t
545 fingeringOrientations
= #'(up down
)
546 stringNumberOrientations
= #'(up down
)
547 strokeFingerOrientations
= #'(right
)
549 lyricMelismaAlignment
= #LEFT
550 markFormatter
= #format-mark-letters
555 autoAccidentals
= #`
(Staff
,(make-accidental-rule
'same-octave
0))
556 autoCautionaries
= #'()
558 printKeyCancellation
= ##t
559 keyAlterationOrder
= #`
(
560 (6 . ,FLAT
) (2 . ,FLAT
) (5 . ,FLAT
) (1 . ,FLAT
) (4 . ,FLAT
) (0 . ,FLAT
) (3 . ,FLAT
)
561 (3 . ,SHARP
) (0 . ,SHARP
) (4 . ,SHARP
) (1 . ,SHARP
) (5 . ,SHARP
) (2 . ,SHARP
) (6 . ,SHARP
)
562 (6 . ,DOUBLE-FLAT
) (2 . ,DOUBLE-FLAT
) (5 . ,DOUBLE-FLAT
) (1 . ,DOUBLE-FLAT
) (4 . ,DOUBLE-FLAT
) (0 . ,DOUBLE-FLAT
) (3 . ,DOUBLE-FLAT
)
563 (3 . ,DOUBLE-SHARP
) (0 . ,DOUBLE-SHARP
) (4 . ,DOUBLE-SHARP
) (2 . ,DOUBLE-SHARP
) (5 . ,DOUBLE-SHARP
) (2 . ,DOUBLE-SHARP
) (6 . ,DOUBLE-SHARP
)
566 barCheckSynchronize
= ##f
569 chordNameFunction
= #ignatzek-chord-names
570 majorSevenSymbol
= #whiteTriangleMarkup
571 chordNameSeparator
= #(make-simple-markup
"/")
572 chordNameExceptions
= #ignatzekExceptions
573 chordNoteNamer
= #'()
574 chordRootNamer
= #note-name-
>markup
575 chordPrefixSpacer
= #0
576 chordNameExceptionsFull
= #fullJazzExceptions
577 chordNameExceptionsPartial
= #partialJazzExceptions
580 bassStaffProperties
= #'((assign clefGlyph
"clefs.F")
581 (assign clefPosition
2)
582 (assign middleCPosition
6)
583 (assign middleCClefPosition
6))
585 stringOneTopmost
= ##t
588 %% One may change the strings tuning as following :
589 %% The lenght of the list must be equal to the number of string
590 stringTunings
= #guitar-tuning
591 tablatureFormat
= #fret-number-tablature-format
594 figuredBassFormatter
= #format-bass-figure
595 metronomeMarkFormatter
= #format-metronome-markup
598 %% See also make-voice-props-set
600 (Voice Stem direction
,UP
)
601 (Voice Stem font-size -
3)
602 (Voice NoteHead font-size -
3)
603 (Voice Dots font-size -
3)
604 (Voice Stem length-fraction
0.8)
605 (Voice Stem no-stem-extend
#t
)
606 (Voice Beam thickness
0.384)
607 (Voice Beam length-fraction
0.8)
608 (Voice Accidental font-size -
4)
609 (Voice AccidentalCautionary font-size -
4)
610 (Voice Slur direction
,DOWN
)
611 (Voice Script font-size -
3)
614 keepAliveInterfaces
= #'(
615 rhythmic-grob-interface
617 percent-repeat-item-interface
618 percent-repeat-interface
620 ;; need this
, as stanza numbers are items
, and appear only once
.
621 stanza-number-interface
623 quotedEventTypes
= #'(
629 instrumentTransposition
= #(ly
:make-pitch
0 0 0)
631 verticallySpacedContexts
= #'(Staff
)
640 \type "Engraver_group"
643 \consists "Figured_bass_engraver"
644 \consists "Note_swallow_translator"
645 \consists "Skip_event_swallow_translator"
646 \consists "Separating_line_group_engraver"
647 \consists "Hara_kiri_engraver"
649 \override VerticalAxisGroup
#'remove-empty
= ##t
650 \override VerticalAxisGroup
#'remove-first
= ##t
651 \override VerticalAxisGroup
#'minimum-Y-extent
= #'(0 . 2)
656 \type "Engraver_group"
658 %% don't want to route anything out of here:
661 \consists "Swallow_engraver"
662 \description "Silently discards all musical information given to this
670 \consists "Tab_note_heads_engraver"
671 \consists "Tab_harmonic_engraver"
673 \remove "Note_heads_engraver"
674 \remove "Fingering_engraver"
675 \remove "New_fingering_engraver"
677 \description "Context for drawing notes in a Tab staff."
679 %% TabStaff increase the staff-space, which in turn
680 %% increases beam thickness and spacing; beams are
681 %% too big. We have to adjust the beam settings:
682 \override Beam
#'thickness
= #0.32
683 \override Beam
#'length-fraction
= #0.62
685 %% No accidental in tablature !
686 \remove Accidental
_engraver
688 \override Glissando
#'extra-dy
= #0.75
689 \override Glissando
#'bound-details
#'right
= #`
((attach-dir
. ,LEFT
)
691 \override Glissando
#'bound-details
#'left
= #`
((attach-dir
. ,RIGHT
)
693 \override Glissando
#'extra-dy
= #0.75
694 \override Glissando
#'gap
= #0.2
702 \consists "Tab_staff_symbol_engraver"
704 \description "Context for generating tablature. [DOCME]"
707 \defaultchild "TabVoice"
710 \override StaffSymbol
#'staff-space
= #1.5
712 %% Don't draw stems over the tablature figures !
713 \override Stem
#'avoid-note-head
= ##t
715 %% No accidental in tablature !
716 \remove "Accidental_engraver"
717 \remove "Key_engraver"
718 \remove "String_number_engraver"
719 %% Special "TAB" clef
720 clefGlyph
= #"clefs.tab"
724 %% TODO: Gregorian Chant contexts should be moved to gregorian.ly,
725 %% but this does not work (is this a bug or intended behaviour?):
727 %% If I try to do so, I get "error: unknown escaped string:
728 %% `\VaticanaStaff'" in params-init.ly. If I also move
729 %% "\context { \Vaticana*Context }" from params-init.ly to the end
730 %% of gregorian.ly, then I get "error: parse error, unexpected
731 %% TRANSLATOR: \context { \VaticanaStaff }" in
732 %% gregorian.ly. --jr
736 \name "VaticanaVoice"
738 \description "Same as @code{Voice} context, except that it is
739 accommodated for typesetting Gregorian Chant in the notational style
742 \remove "Slur_engraver"
743 \remove "Stem_engraver"
744 \remove "Ligature_bracket_engraver"
745 \consists "Vaticana_ligature_engraver"
747 %% Set default head for notes outside of \[ \].
748 \override NoteHead
#'style
= #'vaticana
.punctum
750 %% Put some space before and after divisiones.
751 %% FIXME: This does not seem to show any effect.
752 \override Script
#'padding
= #0.5
754 %% There are no beams in Gregorian Chant notation.
757 %% Prepare TextSpanner for \episem{Initium|Finis} use.
759 %% FIXME: The line @code{\override TextSpanner #'padding = #-0.1} is
760 %% required to force the articulation signs being placed vertically
761 %% tightly to the correpsonding note heads.
763 \override TextSpanner
#'style
= #'line
764 \override TextSpanner
#'padding
= #-
0.1
769 \name "VaticanaStaff"
772 \accepts "VaticanaVoice"
773 \defaultchild "VaticanaVoice"
775 \description "Same as @code{Staff} context, except that it is
776 accommodated for typesetting Gregorian Chant in the notational style
779 \remove "Time_signature_engraver"
780 \consists "Custos_engraver"
782 %% We can not remove Bar_engraver; otherwise clefs and custodes will
783 %% not show up any more among other line breaking issues.
784 %% Instead, we make the grob transparent.
785 \override BarLine
#'transparent
= ##t
787 \override StaffSymbol
#'line-count
= #4
788 \override StaffSymbol
#'thickness
= #0.6
790 %% FIXME: unit on StaffSymbol's width should be \linewidth.
791 %% \override StaffSymbol #'width = #60.0
793 %% Choose vaticana do clef on 3rd line as default.
794 clefGlyph
= #"clefs.vaticana.do"
796 middleCClefPosition
= #1
800 %% Select vaticana style font.
801 \override KeySignature
#'style
= #'vaticana
802 \override Accidental
#'glyph-name-alist
= #alteration-vaticana-glyph-name-alist
803 \override Custos
#'style
= #'vaticana
804 \override Custos
#'neutral-position
= #3
805 \override Custos
#'neutral-direction
= #DOWN
806 \override Dots
#'style
= #'vaticana
811 \name "GregorianTranscriptionVoice"
814 %% Removing ligature bracket engraver without replacing it by some
815 %% other ligature engraver would cause a "Junking event: `LigatureEvent'"
816 %% warning for every "\[" and "\]". Therefore, we make the grob
817 %% transparent instead.
818 \override LigatureBracket
#'transparent
= ##t
820 %% Put some space before and after divisiones.
821 %% FIXME: This does not seem to show any effect.
822 \override Script
#'padding
= #0.5
824 %% There are no beams in Gregorian Chant notation.
827 %% Prepare TextSpanner for \episem{Initium|Finis} use.
829 %% N.B.: dash-fraction MUST be unset; otherwise, TextSpanner will
830 %% always produce dashed lines, regardless of the style property.
832 %% FIXME: The line @code{\override TextSpanner #'padding = #-0.1} is
833 %% required to force the articulation signs being placed vertically
834 %% tightly to the correpsonding note heads.
836 \override TextSpanner
#'dash-fraction
= #'()
837 \override TextSpanner
#'style
= #'line
838 \override TextSpanner
#'padding
= #-
0.1
843 \name "GregorianTranscriptionStaff"
846 \accepts "GregorianTranscriptionVoice"
847 \defaultchild "GregorianTranscriptionVoice"
849 %% We can not remove Bar_engraver; otherwise clefs and custodes will
850 %% not show up any more among other line breaking issues.
851 %% Instead, we make the grob transparent.
852 \override BarLine
#'transparent
= ##t
857 \name "MensuralVoice"
859 \description "Same as @code{Voice} context, except that it is
860 accommodated for typesetting a piece in mensural style."
862 \remove "Slur_engraver"
863 \remove "Ligature_bracket_engraver"
864 \consists "Mensural_ligature_engraver"
866 %% Set default head for notes outside of \[ \].
867 \override NoteHead
#'style
= #'petrucci
869 %% There are no beams in mensural notation.
875 \name "MensuralStaff"
878 \defaultchild "MensuralVoice"
879 \accepts "MensuralVoice"
880 \description "Same as @code{Staff} context, except that it is
881 accommodated for typesetting a piece in mensural style."
883 \consists "Custos_engraver"
885 %% We can not remove Bar_engraver; otherwise clefs and custodes will
886 %% not show up any more among other line breaking issues.
887 %% Instead, we make the grob transparent.
888 \override BarLine
#'transparent
= ##t
890 \override StaffSymbol
#'thickness
= #0.6
892 %% FIXME: unit on StaffSymbol's width should be \linewidth.
893 %% \override StaffSymbol #'width = #60.0
895 %% Choose petrucci g clef on 2nd line as default.
896 clefGlyph
= #"clefs.petrucci.g"
897 middleCClefPosition
= #-
6
898 middleCPosition
= #-
6
902 %% Select mensural style font.
903 \override TimeSignature
#'style
= #'mensural
904 \override KeySignature
#'style
= #'mensural
905 \override Accidental
#'glyph-name-alist
= #alteration-mensural-glyph-name-alist
906 \override Custos
#'style
= #'mensural
907 \override Custos
#'neutral-position
= #3
908 \override Custos
#'neutral-direction
= #DOWN
910 %% Accidentals are valid only once (same as
911 %% #(set-accidental-style 'forget))
913 autoAccidentals
= #`
(Staff
,(make-accidental-rule
'same-octave -
1))
914 autoCautionaries
= #'()
915 printKeyCancellation
= ##f
919 RemoveEmptyRhythmicStaffContext
= \context {
921 \remove "Axis_group_engraver"
922 \override VerticalAxisGroup
#'remove-empty
= ##t
923 \consists "Hara_kiri_engraver"