More work on spacing to match lily master
[lilypond/csorensen.git] / ly / engraver-init.ly
blob480a1ad6dc8551b8a629fc0eab5602c149549ebe
1 \version "2.10.0"
3 \context {
4 \name "Global"
6 \accepts "Score"
8 \defaultchild "Score"
9 \description "Hard coded entry point for LilyPond. Cannot be tuned."
10 \grobdescriptions #all-grob-descriptions
14 \context {
15 \type "Engraver_group"
16 \name "FretBoards"
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"
27 \context {
28 \type "Engraver_group"
29 \name "Staff"
31 \consists "Output_property_engraver"
32 \consists "Bar_engraver"
33 %% Bar_engraver must be first so default bars aren't overwritten
34 %% with empty ones.
36 \consists "Font_size_engraver"
37 \consists "Separating_line_group_engraver"
38 \consists "Dot_column_engraver"
39 \consists "Staff_collecting_engraver"
41 %% perhaps move to Voice context?
42 \consists "Ottava_spanner_engraver"
43 \consists "Clef_engraver"
44 \consists "Key_engraver"
45 \consists "Time_signature_engraver"
46 \consists "Ledger_line_engraver"
47 \consists "Staff_symbol_engraver"
48 \consists "Collision_engraver"
49 \consists "Rest_collision_engraver"
50 \consists "Accidental_engraver"
51 \consists "Piano_pedal_engraver"
52 \consists "Piano_pedal_align_engraver"
53 \consists "Instrument_name_engraver"
54 \consists "String_number_engraver"
55 \consists "Axis_group_engraver"
56 \consists "Figured_bass_engraver"
57 \consists "Figured_bass_position_engraver"
58 \consists "Script_row_engraver"
60 localKeySignature = #'()
61 createSpacing = ##t
62 ignoreFiguredBassRest = ##t
63 \override VerticalAxisGroup #'minimum-Y-extent = #'(-4 . 4)
65 %% explicitly set instrument, so we don't get
66 %% weird effects when doing instrument names for
67 %% piano staves
69 instrumentName = #'()
70 shortInstrumentName = #'()
72 \defaultchild "Voice"
73 \accepts "Voice"
74 \accepts "CueVoice"
76 \description "Handles clefs, bar lines, keys, accidentals. It can contain
77 @code{Voice} contexts."
81 \context {
82 \Staff
83 \type "Engraver_group"
84 \name "DrumStaff"
85 \alias "Staff"
87 \remove "Accidental_engraver"
88 \remove "Ottava_spanner_engraver"
89 \remove "Key_engraver"
90 \remove "Piano_pedal_engraver"
91 \remove "String_number_engraver"
93 \description "Handles typesetting for percussion."
95 \denies "Voice"
96 \accepts "DrumVoice"
97 \defaultchild "DrumVoice"
99 clefGlyph = #"clefs.percussion"
100 clefPosition = #0
101 \override Script #'staff-padding = #0.75
105 \context {
106 \type "Engraver_group"
107 \name "InnerChoirStaff"
108 \consists "System_start_delimiter_engraver"
109 systemStartDelimiter = #'SystemStartBracket
110 vocalName = #'()
111 shortVocalName = #'()
113 \accepts "Staff"
114 \accepts "DrumStaff"
115 \accepts "RhythmicStaff"
116 \accepts "GrandStaff"
117 \accepts "PianoStaff"
118 \accepts "Lyrics"
119 \accepts "ChordNames"
120 \defaultchild "Staff"
123 \context {
124 \InnerChoirStaff
125 \name ChoirStaff
127 \defaultchild "Staff"
128 \accepts "InnerChoirStaff"
129 \accepts "InnerStaffGroup"
130 \description "Identical to @code{StaffGroup} except that the
131 contained staves are not connected vertically."
135 \context{
136 \type "Engraver_group"
138 \override VerticalAxisGroup #'minimum-Y-extent = ##f
139 localKeySignature = #'()
140 createSpacing = ##t
142 squashedPosition = #0
143 \name RhythmicStaff
144 \alias "Staff"
146 \override BarLine #'bar-size = #4
147 \override VoltaBracket #'staff-padding = #3
148 \override StaffSymbol #'line-count = #1
150 \override Stem #'neutral-direction = #UP
151 \override Beam #'neutral-direction = #UP
153 \consists "Output_property_engraver"
154 \consists "Font_size_engraver"
155 \consists "Separating_line_group_engraver"
156 \consists "Dot_column_engraver"
157 \consists "Bar_engraver"
158 \consists "Staff_symbol_engraver"
159 \consists "Pitch_squash_engraver"
160 \consists "Time_signature_engraver"
161 \consists "Instrument_name_engraver"
162 \consists "Axis_group_engraver"
163 \consists "Ledger_line_engraver"
165 \accepts "Voice"
166 \accepts "CueVoice"
167 \defaultchild "Voice"
169 \description "A context like @code{Staff} but for printing rhythms.
170 Pitches are ignored; the notes are printed on one line."
174 \context {
175 \type "Engraver_group"
176 \name "Voice"
178 \description "Corresponds to a voice on a staff. This context
179 handles the conversion of dynamic signs, stems, beams, super- and
180 subscripts, slurs, ties, and rests.
182 You have to instantiate this explicitly if you want to have
183 multiple voices on the same staff."
185 localKeySignature = #'()
186 \consists "Font_size_engraver"
188 \consists "Pitched_trill_engraver"
189 \consists "Output_property_engraver"
190 \consists "Arpeggio_engraver"
191 \consists "Multi_measure_rest_engraver"
192 \consists "Text_spanner_engraver"
193 \consists "Trill_spanner_engraver"
194 \consists "Grob_pq_engraver"
195 \consists "Forbid_line_break_engraver"
196 \consists "Laissez_vibrer_engraver"
197 \consists "Repeat_tie_engraver"
198 \consists "Note_head_line_engraver"
199 \consists "Glissando_engraver"
200 \consists "Ligature_bracket_engraver"
201 \consists "Breathing_sign_engraver"
202 \consists "Note_heads_engraver"
203 \consists "Dots_engraver"
204 \consists "Rest_engraver"
205 \consists "Tweak_engraver"
207 %% switch on to make stem directions interpolate for the
208 %% center line.
209 % \consists "Melody_engraver"
211 \consists "Stem_engraver"
212 \consists "Beam_engraver"
213 \consists "Grace_beam_engraver"
214 \consists "Auto_beam_engraver"
216 %% must come before Script_column_engraver.
217 \consists "New_fingering_engraver"
219 \consists "Chord_tremolo_engraver"
220 \consists "Percent_repeat_engraver"
221 \consists "Slash_repeat_engraver"
222 \consists "Part_combine_engraver"
224 \consists "Text_engraver"
225 \consists "New_dynamic_engraver"
226 \consists "Dynamic_align_engraver"
227 % \consists "Dynamic_engraver"
228 \consists "Fingering_engraver"
229 \consists "Bend_engraver"
231 \consists "Script_engraver"
232 \consists "Script_column_engraver"
233 \consists "Rhythmic_column_engraver"
234 \consists "Note_spacing_engraver"
235 \consists "Spanner_break_forbid_engraver"
236 \consists "Phrasing_slur_engraver"
237 \consists "Cluster_spanner_engraver"
238 \consists "Slur_engraver"
239 \consists "Tie_engraver"
240 \consists "Tuplet_engraver"
241 \consists "Grace_engraver"
242 \consists "Instrument_switch_engraver"
243 \consists "Skip_event_swallow_translator"
246 \context{
247 \Voice
249 \name CueVoice
250 \alias Voice
251 fontSize = #-4
252 \override Stem #'length-fraction = #(magstep -4)
253 \override Beam #'length-fraction = #(magstep -4)
256 \context {
257 \Voice
258 \name DrumVoice
259 \alias Voice
261 \description "A voice on a percussion staff."
262 \remove "Arpeggio_engraver"
263 \consists "Grob_pq_engraver"
265 \remove "Note_head_line_engraver"
266 \remove "Glissando_engraver"
267 \remove "Ligature_bracket_engraver"
268 \remove "Note_heads_engraver"
269 \consists "Drum_notes_engraver"
270 \remove "New_fingering_engraver"
272 \remove "Fingering_engraver"
274 \remove "Cluster_spanner_engraver"
276 \consists "Skip_event_swallow_translator"
279 \context{
280 \type "Engraver_group"
281 \name GrandStaff
282 localKeySignature = #'()
284 \description "A group of staves, with a brace on the left
285 side, grouping the staves together. The bar lines of the
286 contained staves are connected vertically."
288 \consists "Span_bar_engraver"
289 \consists "Span_arpeggio_engraver"
290 \consists "System_start_delimiter_engraver"
291 systemStartDelimiter = #'SystemStartBrace
293 \defaultchild "Staff"
294 \accepts "Staff"
295 \accepts "FiguredBass"
298 \context{
299 \GrandStaff
300 \name "PianoStaff"
301 \alias "GrandStaff"
303 \description "Just like @code{GrandStaff} but with a forced
304 distance between the staves, so cross staff beaming and slurring
305 can be used."
307 \consists "Instrument_name_engraver"
309 instrumentName = #'()
310 shortInstrumentName = #'()
313 \context {
314 \type "Engraver_group"
315 \name InnerStaffGroup
317 \consists "Span_bar_engraver"
318 \consists "Span_arpeggio_engraver"
319 \consists "Output_property_engraver"
320 systemStartDelimiter = #'SystemStartBracket
322 \consists "System_start_delimiter_engraver"
324 \defaultchild "Staff"
325 \accepts "Staff"
326 \accepts "RhythmicStaff"
327 \accepts "DrumStaff"
328 \accepts "GrandStaff"
329 \accepts "PianoStaff"
330 \accepts "TabStaff"
331 \accepts "Lyrics"
332 \accepts "ChordNames"
335 \context {
336 \InnerStaffGroup
337 \name StaffGroup
339 \description "Groups staves while adding a bracket on the left
340 side, grouping the staves together. The bar lines of the contained
341 staves are connected vertically. @code{StaffGroup} only consists of
342 a collection of staves, with a bracket in front and spanning bar lines."
344 \accepts "InnerChoirStaff"
345 \accepts "ChoirStaff"
346 \accepts "InnerStaffGroup"
347 \accepts "FiguredBass"
351 \context{
352 \type "Engraver_group"
353 \override VerticalAxisGroup #'minimum-Y-extent = #'(-0.75 . 2.0)
355 \description "Corresponds to a voice with lyrics. Handles the
356 printing of a single line of lyrics."
358 \name "Lyrics"
359 instrumentName = #'()
360 shortInstrumentName = #'()
362 \consists "Lyric_engraver"
363 \consists "Extender_engraver"
364 \consists "Hyphen_engraver"
365 \consists "Stanza_number_engraver"
366 \consists "Instrument_name_engraver"
367 \consists "Skip_event_swallow_translator"
368 \consists "Font_size_engraver"
369 \consists "Hara_kiri_engraver"
371 \override VerticalAxisGroup #'remove-first = ##t
372 \override VerticalAxisGroup #'remove-empty = ##t
373 \override VerticalAxisGroup #'keep-fixed-while-stretching = ##t
374 \override SeparationItem #'padding = #0.2
375 \override InstrumentName #'self-alignment-Y = ##f
377 %% sync with define-grobs.scm ;
378 \override InstrumentName #'font-size = #1.0
380 %% make sure that barlines aren't collapsed, when
381 %% Bar_engraver is there.
382 \override BarLine #'bar-size = #0.1
386 \context {
387 \type "Engraver_group"
388 \name NoteNames
389 \consists "Axis_group_engraver"
391 \override VerticalAxisGroup #'minimum-Y-extent = ##f
394 \consists "Rest_swallow_translator"
395 \consists "Skip_event_swallow_translator"
396 \consists "Tie_engraver"
397 \consists "Note_name_engraver"
398 \consists "Separating_line_group_engraver"
401 \context {
402 \type "Engraver_group"
403 \name ChordNames
404 \description "Typesets chord names."
406 \consists "Rest_swallow_translator"
407 \consists "Output_property_engraver"
408 \consists "Separating_line_group_engraver"
409 \consists "Chord_name_engraver"
410 \consists "Skip_event_swallow_translator"
411 \consists "Hara_kiri_engraver"
412 % \consists "Note_spacing_engraver"
413 \override VerticalAxisGroup #'minimum-Y-extent = #'(0 . 2)
414 \override VerticalAxisGroup #'remove-first = ##t
415 \override VerticalAxisGroup #'remove-empty = ##t
419 RemoveEmptyStaffContext= \context {
420 \Staff
421 \remove "Axis_group_engraver"
422 \consists "Hara_kiri_engraver"
423 \override Beam #'auto-knee-gap = #'()
424 \override VerticalAxisGroup #'remove-empty = ##t
427 AncientRemoveEmptyStaffContext = \context {
428 %% why not add by default?
430 \RemoveEmptyStaffContext
431 \accepts "VaticanaVoice"
432 \accepts "GregorianTranscriptionVoice"
433 \accepts "MensuralVoice"
436 \context {
437 \type "Score_engraver"
438 \name "Score"
440 \description "This is the top level notation context. No
441 other context can contain a @code{Score} context. This context
442 handles the administration of time signatures. It also makes sure
443 that items such as clefs, time signatures, and key-signatures are
444 aligned across staves.
446 You cannot explicitly instantiate a @code{Score} context (since it
447 is not contained in any other context). It is instantiated
448 automatically when an output definition (a @code{\score} or
449 @code{\layout} block) is processed."
451 \consists "Paper_column_engraver"
452 \consists "Vertically_spaced_contexts_engraver"
453 \consists "Repeat_acknowledge_engraver"
454 \consists "Staff_collecting_engraver"
456 %% move the alias along with the engraver.
458 \consists "Timing_translator"
459 \consists "Default_bar_line_engraver"
460 \consists "Output_property_engraver"
461 \consists "System_start_delimiter_engraver"
462 \consists "Mark_engraver"
463 \consists "Volta_engraver"
464 \consists "Metronome_mark_engraver"
465 \consists "Break_align_engraver"
466 \consists "Spacing_engraver"
467 \consists "Grace_spacing_engraver"
468 \consists "Vertical_align_engraver"
469 \consists "Stanza_number_align_engraver"
470 \consists "Bar_number_engraver"
471 \consists "Parenthesis_engraver"
473 \defaultchild "Staff"
475 \accepts "FretBoards"
476 \accepts "Staff"
477 \accepts "RhythmicStaff"
478 \accepts "TabStaff"
479 \accepts "VaticanaStaff"
480 \accepts "GregorianTranscriptionStaff"
481 \accepts "MensuralStaff"
482 \accepts "StaffGroup"
483 \accepts "DrumStaff"
484 \accepts "Lyrics"
485 \accepts "ChordNames"
486 \accepts "GrandStaff"
487 \accepts "ChoirStaff"
488 \accepts "PianoStaff"
489 \accepts "Devnull"
490 \accepts "NoteNames"
491 \accepts "FiguredBass"
494 noteToFretFunction = #determine-frets
495 soloText = #"Solo"
496 soloIIText = #"Solo II"
497 aDueText = #"a2"
498 printPartCombineTexts = ##t
499 systemStartDelimiter =#'SystemStartBar
501 drumStyleTable = #drums-style
503 melismaBusyProperties = #default-melisma-properties
504 tieWaitForNote = ##f
505 clefGlyph = #"clefs.G"
506 clefPosition = #-2
507 middleCClefPosition = #-6
508 middleCPosition = #-6
509 firstClef = ##t
511 crescendoSpanner = #'hairpin
512 decrescendoSpanner = #'hairpin
514 defaultBarType = #"|"
515 barNumberVisibility = #first-bar-number-invisible
516 automaticBars = ##t
518 explicitClefVisibility = #all-visible
519 explicitKeySignatureVisibility = #all-visible
520 implicitTimeSignatureVisibility = #end-of-line-invisible
522 autoBeamSettings = #default-auto-beam-settings
523 autoBeaming = ##t
524 autoBeamCheck = #default-auto-beam-check
525 scriptDefinitions = #default-script-alist
527 pedalSustainStrings = #'("Ped." "*Ped." "*")
528 pedalSustainStyle = #'text
529 pedalUnaCordaStrings = #'("una corda" "" "tre corde")
530 pedalUnaCordaStyle = #'text
532 %% These are in ordinary italic font, including the *,
533 %% but they are unlikely to be used,
534 %% as the default pedal-style for SostenutoPedal is 'mixed':
535 %% i.e. Sost. Ped_____________________
536 pedalSostenutoStrings = #'("Sost. Ped." "*Sost. Ped." "*")
537 pedalSostenutoStyle = #'mixed
539 harmonicAccidentals = ##t
540 fingeringOrientations = #'(up down)
541 stringNumberOrientations = #'(up down)
542 strokeFingerOrientations = #'(right)
544 lyricMelismaAlignment = #LEFT
545 markFormatter = #format-mark-letters
546 rehearsalMark = #1
547 subdivideBeams = ##f
548 allowBeamBreak = ##f
549 extraNatural = ##t
550 autoAccidentals = #'(Staff (same-octave . 0))
551 autoCautionaries = #'()
553 printKeyCancellation = ##t
554 keyAlterationOrder = #`(
555 (6 . ,FLAT) (2 . ,FLAT) (5 . ,FLAT ) (1 . ,FLAT) (4 . ,FLAT) (0 . ,FLAT) (3 . ,FLAT)
556 (3 . ,SHARP) (0 . ,SHARP) (4 . ,SHARP) (1 . ,SHARP) (5 . ,SHARP) (2 . ,SHARP) (6 . ,SHARP)
557 (6 . ,DOUBLE-FLAT) (2 . ,DOUBLE-FLAT) (5 . ,DOUBLE-FLAT ) (1 . ,DOUBLE-FLAT) (4 . ,DOUBLE-FLAT) (0 . ,DOUBLE-FLAT) (3 . ,DOUBLE-FLAT)
558 (3 . ,DOUBLE-SHARP) (0 . ,DOUBLE-SHARP) (4 . ,DOUBLE-SHARP) (2 . ,DOUBLE-SHARP) (5 . ,DOUBLE-SHARP) (2 . ,DOUBLE-SHARP) (6 . ,DOUBLE-SHARP)
561 barCheckSynchronize = ##f
563 %% chord names:
564 chordNameFunction = #ignatzek-chord-names
565 majorSevenSymbol = #whiteTriangleMarkup
566 chordNameSeparator = #(make-simple-markup "/")
567 chordNameExceptions = #ignatzekExceptions
568 chordNoteNamer = #'()
569 chordRootNamer = #note-name->markup
570 chordPrefixSpacer = #0
571 chordNameExceptionsFull = #fullJazzExceptions
572 chordNameExceptionsPartial = #partialJazzExceptions
575 bassStaffProperties = #'((assign clefGlyph "clefs.F")
576 (assign clefPosition 2)
577 (assign middleCPosition 6)
578 (assign middleCClefPosition 6))
579 %% tablature:
580 stringOneTopmost = ##t
581 highStringOne = ##t
583 %% One may change the strings tuning as following :
584 %% The lenght of the list must be equal to the number of string
585 stringTunings = #guitar-tuning
586 tablatureFormat = #fret-number-tablature-format
589 figuredBassFormatter = #format-bass-figure
590 metronomeMarkFormatter = #format-metronome-markup
593 %% See also make-voice-props-set
594 graceSettings = #`(
595 (Voice Stem direction ,UP)
596 (Voice Stem font-size -3)
597 (Voice NoteHead font-size -3)
598 (Voice Dots font-size -3)
599 (Voice Stem length-fraction 0.8)
600 (Voice Stem no-stem-extend #t)
601 (Voice Beam thickness 0.384)
602 (Voice Beam length-fraction 0.8)
603 (Voice Accidental font-size -4)
604 (Voice AccidentalCautionary font-size -4)
605 (Voice Slur direction ,DOWN)
606 (Voice Script font-size -3)
609 keepAliveInterfaces = #'(
610 rhythmic-grob-interface
611 lyric-interface
613 ;; need this, as stanza numbers are items, and appear only once.
614 stanza-number-interface
615 percent-repeat-interface)
616 quotedEventTypes = #'(
617 note-event
618 rest-event
619 tie-event
620 beam-event
621 tuplet-span-event)
622 instrumentTransposition = #(ly:make-pitch 0 0 0)
624 verticallySpacedContexts = #'(Staff)
626 timing = ##t
632 \context {
633 \type "Engraver_group"
634 \name "FiguredBass"
636 \consists "Figured_bass_engraver"
637 \consists "Note_swallow_translator"
638 \consists "Skip_event_swallow_translator"
639 \consists "Separating_line_group_engraver"
640 \consists "Hara_kiri_engraver"
642 \override VerticalAxisGroup #'remove-empty = ##t
643 \override VerticalAxisGroup #'remove-first = ##t
644 \override VerticalAxisGroup #'minimum-Y-extent = #'(0 . 2)
647 \context {
648 \name "Devnull"
649 \type "Engraver_group"
651 %% don't want to route anything out of here:
652 \alias "Staff"
653 \alias "Voice"
654 \consists "Swallow_engraver"
655 \description "Silently discards all musical information given to this
656 context."
659 \context {
660 \Voice
661 \name "TabVoice"
662 \alias "Voice"
663 \consists "Tab_note_heads_engraver"
664 \consists "Tab_harmonic_engraver"
666 \remove "Note_heads_engraver"
667 \remove "Fingering_engraver"
668 \remove "New_fingering_engraver"
670 \description "Context for drawing notes in a Tab staff."
672 %% TabStaff increase the staff-space, which in turn
673 %% increases beam thickness and spacing; beams are
674 %% too big. We have to adjust the beam settings:
675 \override Beam #'thickness = #0.32
676 \override Beam #'length-fraction = #0.62
678 %% No accidental in tablature !
679 \remove Accidental_engraver
681 \override Glissando #'extra-dy = #0.75
682 \override Glissando #'bound-details #'right = #`((attach-dir . ,LEFT)
683 (padding . 0.3))
684 \override Glissando #'bound-details #'left = #`((attach-dir . ,RIGHT)
685 (padding . 0.3))
686 \override Glissando #'extra-dy = #0.75
687 \override Glissando #'gap = #0.2
690 \context {
691 \Staff
692 \alias "Staff"
693 \name "TabStaff"
694 \denies "Voice"
695 \consists "Tab_staff_symbol_engraver"
697 \description "Context for generating tablature. [DOCME]"
699 \accepts "TabVoice"
700 \defaultchild "TabVoice"
702 %% 6 strings
703 \override StaffSymbol #'staff-space = #1.5
705 %% Don't draw stems over the tablature figures !
706 \override Stem #'avoid-note-head = ##t
708 %% No accidental in tablature !
709 \remove "Accidental_engraver"
710 \remove "Key_engraver"
711 \remove "String_number_engraver"
712 %% Special "TAB" clef
713 clefGlyph = #"clefs.tab"
714 clefPosition = #0
717 %% TODO: Gregorian Chant contexts should be moved to gregorian-init.ly,
718 %% but this does not work (is this a bug or intended behaviour?):
720 %% If I try to do so, I get "error: unknown escaped string:
721 %% `\VaticanaStaff'" in params-init.ly. If I also move
722 %% "\context { \Vaticana*Context }" from params-init.ly to the end
723 %% of gregorian-init.ly, then I get "error: parse error, unexpected
724 %% TRANSLATOR: \context { \VaticanaStaff }" in
725 %% gregorian-init.ly. --jr
727 \context {
728 \Voice
729 \name "VaticanaVoice"
730 \alias "Voice"
731 \description "Same as @code{Voice} context, except that it is
732 accommodated for typesetting Gregorian Chant in the notational style
733 of Editio Vaticana."
735 \remove "Slur_engraver"
736 \remove "Stem_engraver"
737 \remove "Ligature_bracket_engraver"
738 \consists "Vaticana_ligature_engraver"
740 %% Set default head for notes outside of \[ \].
741 \override NoteHead #'style = #'vaticana.punctum
743 %% Put some space before and after divisiones.
744 %% FIXME: This does not seem to show any effect.
745 \override Script #'padding = #0.5
747 %% There are no beams in Gregorian Chant notation.
748 autoBeaming = ##f
750 %% Prepare TextSpanner for \episem{Initium|Finis} use.
752 %% FIXME: The line @code{\override TextSpanner #'padding = #-0.1} is
753 %% required to force the articulation signs being placed vertically
754 %% tightly to the correpsonding note heads.
756 \override TextSpanner #'style = #'line
757 \override TextSpanner #'padding = #-0.1
760 \context {
761 \Staff
762 \name "VaticanaStaff"
763 \alias "Staff"
764 \denies "Voice"
765 \accepts "VaticanaVoice"
766 \defaultchild "VaticanaVoice"
768 \description "Same as @code{Staff} context, except that it is
769 accommodated for typesetting Gregorian Chant in the notational style
770 of Editio Vaticana."
772 \remove "Time_signature_engraver"
773 \consists "Custos_engraver"
775 %% We can not remove Bar_engraver; otherwise clefs and custodes will
776 %% not show up any more among other line breaking issues.
777 %% Instead, we make the grob transparent.
778 \override BarLine #'transparent = ##t
780 \override StaffSymbol #'line-count = #4
781 \override StaffSymbol #'thickness = #0.6
783 %% FIXME: unit on StaffSymbol's width should be \linewidth.
784 %% \override StaffSymbol #'width = #60.0
786 %% Choose vaticana do clef on 3rd line as default.
787 clefGlyph = #"clefs.vaticana.do"
788 middleCPosition = #1
789 middleCClefPosition = #1
790 clefPosition = #1
791 clefOctavation = #0
793 %% Select vaticana style font.
794 \override KeySignature #'style = #'vaticana
795 \override Accidental #'glyph-name-alist = #alteration-vaticana-glyph-name-alist
796 \override Custos #'style = #'vaticana
797 \override Custos #'neutral-position = #3
798 \override Custos #'neutral-direction = #DOWN
799 \override Dots #'style = #'vaticana
802 \context {
803 \Voice
804 \name "GregorianTranscriptionVoice"
805 \alias "Voice"
807 %% Removing ligature bracket engraver without replacing it by some
808 %% other ligature engraver would cause a "Junking event: `LigatureEvent'"
809 %% warning for every "\[" and "\]". Therefore, we make the grob
810 %% transparent instead.
811 \override LigatureBracket #'transparent = ##t
813 %% Put some space before and after divisiones.
814 %% FIXME: This does not seem to show any effect.
815 \override Script #'padding = #0.5
817 %% There are no beams in Gregorian Chant notation.
818 autoBeaming = ##f
820 %% Prepare TextSpanner for \episem{Initium|Finis} use.
822 %% N.B.: dash-fraction MUST be unset; otherwise, TextSpanner will
823 %% always produce dashed lines, regardless of the style property.
825 %% FIXME: The line @code{\override TextSpanner #'padding = #-0.1} is
826 %% required to force the articulation signs being placed vertically
827 %% tightly to the correpsonding note heads.
829 \override TextSpanner #'dash-fraction = #'()
830 \override TextSpanner #'style = #'line
831 \override TextSpanner #'padding = #-0.1
834 \context {
835 \Staff
836 \name "GregorianTranscriptionStaff"
837 \alias "Staff"
838 \denies "Voice"
839 \accepts "GregorianTranscriptionVoice"
840 \defaultchild "GregorianTranscriptionVoice"
842 %% We can not remove Bar_engraver; otherwise clefs and custodes will
843 %% not show up any more among other line breaking issues.
844 %% Instead, we make the grob transparent.
845 \override BarLine #'transparent = ##t
848 \context {
849 \Voice
850 \name "MensuralVoice"
851 \alias "Voice"
852 \description "Same as @code{Voice} context, except that it is
853 accommodated for typesetting a piece in mensural style."
855 \remove "Slur_engraver"
856 \remove "Ligature_bracket_engraver"
857 \consists "Mensural_ligature_engraver"
859 %% Set default head for notes outside of \[ \].
860 \override NoteHead #'style = #'petrucci
862 %% There are no beams in mensural notation.
863 autoBeaming = ##f
866 \context {
867 \Staff
868 \name "MensuralStaff"
869 \alias "Staff"
870 \denies "Voice"
871 \defaultchild "MensuralVoice"
872 \accepts "MensuralVoice"
873 \description "Same as @code{Staff} context, except that it is
874 accommodated for typesetting a piece in mensural style."
876 \consists "Custos_engraver"
878 %% We can not remove Bar_engraver; otherwise clefs and custodes will
879 %% not show up any more among other line breaking issues.
880 %% Instead, we make the grob transparent.
881 \override BarLine #'transparent = ##t
883 \override StaffSymbol #'thickness = #0.6
885 %% FIXME: unit on StaffSymbol's width should be \linewidth.
886 %% \override StaffSymbol #'width = #60.0
888 %% Choose petrucci g clef on 2nd line as default.
889 clefGlyph = #"clefs.petrucci.g"
890 middleCClefPosition = #-6
891 middleCPosition = #-6
892 clefPosition = #-2
893 clefOctavation = #0
895 %% Select mensural style font.
896 \override TimeSignature #'style = #'mensural
897 \override KeySignature #'style = #'mensural
898 \override Accidental #'glyph-name-alist = #alteration-mensural-glyph-name-alist
899 \override Custos #'style = #'mensural
900 \override Custos #'neutral-position = #3
901 \override Custos #'neutral-direction = #DOWN
903 %% Accidentals are valid only once (same as
904 %% #(set-accidental-style 'forget))
905 extraNatural = ##f
906 autoAccidentals = #'(Staff (same-octave . -1))
907 autoCautionaries = #'()
908 printKeyCancellation = ##f
912 RemoveEmptyRhythmicStaffContext= \context {
913 \RhythmicStaff
914 \remove "Axis_group_engraver"
915 \override VerticalAxisGroup #'remove-empty = ##t
916 \consists "Hara_kiri_engraver"