]> git.donarmstrong.com Git - lilypond.git/blob - ly/engraver-init.ly
* Documentation/topdocs/NEWS.tely (Top): mention John Mandereau.
[lilypond.git] / ly / engraver-init.ly
1 \version "2.7.6"
2
3 \context {
4   \name Global
5
6   \accepts Score
7
8   \defaultchild Score
9   \description "Hard coded entry point for LilyPond. Cannot be tuned."
10   \grobdescriptions #all-grob-descriptions
11 }
12
13 \context {
14   \type "Engraver_group"
15   \name Staff
16   
17   \consists "Output_property_engraver"  
18   \consists "Bar_engraver"
19   %% Bar_engraver must be first so default bars aren't overwritten
20   %% with empty ones.
21   
22   \consists "Font_size_engraver"
23   \consists "Volta_engraver"
24   \consists "Separating_line_group_engraver"    
25   \consists "Dot_column_engraver"
26
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"
41
42   minimumVerticalExtent = #'(-4 . 4)
43   extraVerticalExtent = ##f
44   verticalExtent = ##f 
45   localKeySignature = #'()
46   createSpacing = ##t
47   
48   %% explicitly set instrument, so we don't get 
49   %% weird effects when doing instrument names for
50   %% piano staves
51
52   instrument = #'()
53   instr = #'()
54   
55   \defaultchild "Voice"
56   \accepts "Voice"
57   \accepts "CueVoice"
58   
59   \description "Handles clefs, bar lines, keys, accidentals.  It can contain
60 @code{Voice} contexts."
61
62 }
63
64 \context {
65   \Staff
66   \type "Engraver_group"
67   \name DrumStaff
68   \alias Staff
69   \remove "Accidental_engraver"
70   \remove "Ottava_spanner_engraver"
71   \remove "Key_engraver" 
72   \remove "Piano_pedal_engraver"
73   \remove "String_number_engraver"
74   
75   \description "Handles typesetting for percussion."
76
77   \denies Voice
78   \accepts DrumVoice
79   \defaultchild DrumVoice
80
81   clefGlyph = #"clefs.percussion"
82   clefPosition = #0
83   \override Script #'staff-padding = #0.75 
84 }
85
86
87 \context {
88   \type "Engraver_group"
89   \name InnerChoirStaff
90   \consists "System_start_delimiter_engraver"
91   systemStartDelimiter = #'SystemStartBracket
92
93   \accepts "Staff"
94   \accepts "DrumStaff"
95   \accepts "RhythmicStaff"
96   \accepts "GrandStaff"
97   \accepts "PianoStaff"
98   \accepts "Lyrics"
99   \accepts "ChordNames"
100   \defaultchild "Staff"
101 }
102
103 \context {
104   \InnerChoirStaff
105   \name ChoirStaff
106   
107   \defaultchild "Staff"
108   \accepts "InnerChoirStaff"
109   \accepts "InnerStaffGroup"
110   \description "Identical to @code{StaffGroup} except that the
111 contained staves are not connected vertically."
112   
113 }
114
115
116 \context{
117   \type "Engraver_group"
118   
119   minimumVerticalExtent = ##f
120   extraVerticalExtent = ##f
121   verticalExtent = ##f 
122   localKeySignature = #'()
123   createSpacing = ##t
124
125   squashedPosition = #0
126   \name RhythmicStaff
127   \alias "Staff"
128   
129   \override BarLine #'bar-size = #4
130   \override VoltaBracket #'staff-padding = #3
131   \override StaffSymbol #'line-count = #1       
132
133   \override Stem  #'neutral-direction = #UP
134   \override Beam  #'neutral-direction = #UP
135   
136   \consists "Output_property_engraver"
137   \consists "Font_size_engraver"
138   \consists "Volta_engraver"
139   \consists "Separating_line_group_engraver"    
140   \consists "Dot_column_engraver"
141   \consists "Bar_engraver"
142   \consists "Ledger_line_engraver" 
143   \consists "Staff_symbol_engraver"
144   \consists "Pitch_squash_engraver"
145   \consists "Time_signature_engraver"
146   \consists "Instrument_name_engraver"
147   \consists "Axis_group_engraver"
148   
149   \accepts "Voice"
150   \accepts "CueVoice"
151   \defaultchild "Voice"
152
153   \description  "
154     A context like @code{Staff} but for printing rhythms.  Pitches are
155     ignored; the notes are printed on one line.  
156 "
157 }
158
159
160 \context {
161   \type "Engraver_group"
162   \name Voice
163
164   \description "
165     Corresponds to a voice on a staff.  This context handles the
166     conversion of dynamic signs, stems, beams, super- and subscripts,
167     slurs, ties, and rests.
168
169     You have to instantiate this explicitly if you want to have
170     multiple voices on the same staff."
171
172   localKeySignature = #'()
173   \consists "Font_size_engraver"
174
175   \consists "Pitched_trill_engraver"
176   \consists "Output_property_engraver"  
177   \consists "Arpeggio_engraver"
178   \consists "Multi_measure_rest_engraver"
179   \consists "Text_spanner_engraver"
180   \consists "Trill_spanner_engraver"
181   \consists "Grob_pq_engraver"
182   \consists "Forbid_line_break_engraver"
183   \consists "Laissez_vibrer_engraver"
184   \consists "Note_head_line_engraver"
185   \consists "Glissando_engraver"
186   \consists "Ligature_bracket_engraver"
187   \consists "Breathing_sign_engraver"
188   %% \consists "Rest_engraver"
189   \consists "Note_heads_engraver"
190   \consists "Rest_engraver"
191
192   \consists "Stem_engraver"
193   \consists "Beam_engraver"
194   \consists "Grace_beam_engraver"
195   \consists "Auto_beam_engraver"
196   \consists "New_fingering_engraver"
197   \consists "Chord_tremolo_engraver"
198   \consists "Percent_repeat_engraver"
199   \consists "Slash_repeat_engraver"
200   \consists "Melisma_translator"
201   \consists "Part_combine_engraver"
202
203   \consists "Text_engraver"
204   \consists "Dynamic_engraver"
205   \consists "Fingering_engraver"
206
207   \consists "Script_engraver"
208   \consists "Script_column_engraver"
209   \consists "Rhythmic_column_engraver"
210   \consists "Phrasing_slur_engraver"
211   \consists "Cluster_spanner_engraver"
212   \consists "Slur_engraver"
213   \consists "Tie_engraver"
214   \consists "Tuplet_engraver"
215   \consists "Grace_engraver"
216
217   \consists "Skip_event_swallow_translator"
218 }
219
220 \context{
221   \Voice
222   
223   \name CueVoice
224   \alias Voice
225   fontSize = #-4
226   \override Stem #'length-fraction = #(magstep -4)
227   \override Beam #'length-fraction = #(magstep -4)
228 }
229
230 \context {
231   \Voice
232   \name DrumVoice
233   \alias Voice
234
235   \description "A voice on a percussion staff."
236   \remove "Arpeggio_engraver"
237   \consists "Multi_measure_rest_engraver"
238   \consists "Text_spanner_engraver"
239   \consists "Grob_pq_engraver"
240
241   \remove "Note_head_line_engraver"
242   \remove "Glissando_engraver"
243   \remove "Ligature_bracket_engraver"
244   \remove "Note_heads_engraver"
245   \consists "Drum_notes_engraver"
246   \remove "New_fingering_engraver"
247
248   \remove "Fingering_engraver"
249
250   \remove "Cluster_spanner_engraver"
251   \consists "Tuplet_engraver"
252
253   \consists "Skip_event_swallow_translator"
254 }
255
256 \context{
257   \type "Engraver_group"
258   \name GrandStaff
259   localKeySignature = #'()
260   
261   \description " A group of staffs, with a brace on the left
262     side, grouping the staves together.  The bar lines of the
263     contained staves are connected vertically.  "
264
265   \consists "Span_bar_engraver"
266   \consists "Span_arpeggio_engraver"
267   \consists "System_start_delimiter_engraver"
268   systemStartDelimiter = #'SystemStartBrace
269
270   \accepts "Staff"
271 }
272
273 \context{
274   \GrandStaff
275   \name "PianoStaff"
276   \alias "GrandStaff"
277
278   \description
279   "Just like @code{GrandStaff} but with a forced distance between
280     the staves, so cross staff beaming and slurring can be used."
281   
282   \override VerticalAlignment #'forced-distance = #12
283   \override VerticalAlignment #'self-alignment-Y = #0
284
285   \consists "Vertical_align_engraver"
286   \consists "Instrument_name_engraver"
287   
288   instrument = #'()
289   instr = #'()
290 }
291
292 \context {
293   \type "Engraver_group"
294   \name InnerStaffGroup
295
296   \consists "Span_bar_engraver"
297   \consists "Span_arpeggio_engraver"
298   \consists "Output_property_engraver"  
299   systemStartDelimiter = #'SystemStartBracket
300
301   \consists "System_start_delimiter_engraver"
302
303   \defaultchild "Staff"
304   \accepts "Staff"
305   \accepts "RhythmicStaff"
306   \accepts "DrumStaff"
307   \accepts "GrandStaff"
308   \accepts "PianoStaff"
309   \accepts "TabStaff"   
310   \accepts "Lyrics"
311   \accepts "ChordNames"
312 }
313
314 \context {
315   \InnerStaffGroup
316   \name StaffGroup
317   
318   \description
319
320   "Groups staffs while adding a bracket on the left side, grouping
321 the staves together.  The bar lines of the contained staves are
322 connected vertically.  "
323   
324   \accepts "InnerChoirStaff"
325   \accepts "ChoirStaff"
326   \accepts "InnerStaffGroup"
327   \accepts "FiguredBass"
328 }
329
330
331 \context{
332   \type "Engraver_group"
333   minimumVerticalExtent = #'(-1.2 . 2.4)
334   extraVerticalExtent = ##f
335   verticalExtent = ##f
336
337   \description " Corresponds to a voice with lyrics.  Handles the
338 printing of a single line of lyrics.  "
339   
340   \name Lyrics 
341   \consists "Separating_line_group_engraver"
342   \consists "Lyric_engraver"
343   \consists "Extender_engraver"
344   \consists "Hyphen_engraver"
345   \consists "Stanza_number_engraver"
346   \consists "Vocal_name_engraver"
347   \consists "Skip_event_swallow_translator"
348   \consists "Font_size_engraver"
349   \consists "Hara_kiri_engraver"
350   \override RemoveEmptyVerticalGroup #'remove-first = ##t
351   \override SeparationItem #'padding = #0.2
352 }
353
354 \context {
355   \type "Engraver_group"
356   \name NoteNames
357   \consists "Axis_group_engraver"
358
359   minimumVerticalExtent = ##f
360   extraVerticalExtent = ##f
361   verticalExtent = ##f 
362
363   
364   \consists "Rest_swallow_translator" 
365   \consists "Skip_event_swallow_translator"
366   \consists "Tie_engraver"
367   \consists "Note_name_engraver"
368   \consists "Separating_line_group_engraver"
369 }
370
371 \context {
372   \type "Engraver_group"
373   \name ChordNames
374   \description "Typesets chord names."
375
376   \consists "Volta_engraver"
377   
378   \consists "Rest_swallow_translator" 
379   \consists "Output_property_engraver"  
380   \consists "Separating_line_group_engraver"
381   \consists "Chord_name_engraver"
382   \consists "Skip_event_swallow_translator"
383   \consists "Hara_kiri_engraver"
384   
385   voltaOnThisStaff = ##f
386   minimumVerticalExtent = #'(0 . 2.5)
387   extraVerticalExtent = ##f
388   \override SeparatingGroupSpanner #'padding = #0.8
389   \override RemoveEmptyVerticalGroup #'remove-first = ##t
390   verticalExtent = ##f 
391 }
392
393
394 RemoveEmptyStaffContext= \context {
395   \Staff
396   \remove "Axis_group_engraver"
397   \consists "Hara_kiri_engraver"
398   \override Beam #'auto-knee-gap = #'()
399 }
400
401 AncientRemoveEmptyStaffContext = \context {
402 %% why not add by default?
403   
404   \RemoveEmptyStaffContext
405   \accepts "VaticanaVoice"
406   \accepts "GregorianTranscriptionVoice"
407   \accepts "MensuralVoice"
408 }
409
410 \context {
411   \type Score_engraver
412   \name "Score"
413
414   \description "This is the top level notation context.  No
415     other context can contain a @code{Score} context.  This context
416     handles the administration of time signatures.  It also makes sure
417     that items such as clefs, time signatures, and key-signatures are
418     aligned across staves.
419
420     You cannot explicitly instantiate a Score context (since it is
421     not contained in any other context).  It is instantiated
422     automatically when an output definition (a @code{\score} or
423     @code{\layout} block) is processed."
424
425
426   \consists "Paper_column_engraver"
427   \consists "Vertically_spaced_contexts_engraver"
428   \consists "Repeat_acknowledge_engraver"
429   \consists "Staff_collecting_engraver"
430
431   %% move the alias along with the engraver.
432
433   \consists "Timing_translator"
434   \consists "Default_bar_line_engraver"
435   \consists "Output_property_engraver"
436   \consists "System_start_delimiter_engraver"
437   \consists "Mark_engraver"     
438   \consists "Metronome_mark_engraver"   
439   \consists "Break_align_engraver"
440   \consists "Spacing_engraver"
441   \consists "Vertical_align_engraver"
442   \consists "Stanza_number_align_engraver"
443   \consists "Bar_number_engraver"
444   \consists "Span_arpeggio_engraver"
445
446   \defaultchild "Staff"
447   \accepts "Staff"
448   \accepts "RhythmicStaff"
449   \accepts "TabStaff"
450   \accepts "VaticanaStaff"
451   \accepts "GregorianTranscriptionStaff"
452   \accepts "MensuralStaff"
453   \accepts "StaffGroup"
454   \accepts "DrumStaff"
455   \accepts "Lyrics"
456   \accepts "ChordNames"
457   \accepts "GrandStaff"
458   \accepts "ChoirStaff"
459   \accepts "PianoStaff"
460   \accepts "Devnull"
461   \accepts "NoteNames"
462   \accepts "FiguredBass"
463
464   soloText = #"Solo"
465   soloIIText = #"Solo II"
466   aDueText = #"a2"
467   printPartCombineTexts = ##t
468   systemStartDelimiter =#'SystemStartBar
469
470   drumStyleTable = #drums-style
471   
472   melismaBusyProperties = #default-melisma-properties
473   tieWaitForNote = ##f
474   clefGlyph = #"clefs.G"
475   clefPosition = #-2
476   middleCPosition = #-6
477   firstClef = ##t
478   
479   defaultBarType = #"|"
480   barNumberVisibility = #first-bar-number-invisible
481   automaticBars = ##t
482   
483   explicitClefVisibility = #all-visible
484   explicitKeySignatureVisibility = #all-visible
485   autoBeamSettings = #default-auto-beam-settings
486   autoBeaming = ##t
487   autoBeamCheck = #default-auto-beam-check
488   scriptDefinitions = #default-script-alist
489
490   pedalSustainStrings = #'("Ped." "*Ped." "*")
491   pedalSustainStyle = #'text
492   pedalUnaCordaStrings = #'("una corda" "" "tre corde")
493   pedalUnaCordaStyle = #'text
494
495 %% These are in ordinary italic font, including the *,
496 %% but they are unlikely to be used, 
497 %% as the default pedal-style for SostenutoPedal is 'mixed':
498 %% i.e.  Sost. Ped_____________________ 
499   pedalSostenutoStrings = #'("Sost. Ped." "*Sost. Ped." "*") 
500   pedalSostenutoStyle = #'mixed
501
502
503   harmonicAccidentals = ##t 
504   fingeringOrientations = #'(up down)
505   stringNumberOrientations = #'(up down)
506   tupletNumberFormatFunction = #denominator-tuplet-formatter
507   markFormatter = #format-mark-letters
508   rehearsalMark = #1 
509   subdivideBeams = ##f
510   allowBeamBreak = ##f
511   extraNatural = ##t
512   autoAccidentals = #'(Staff (same-octave . 0))
513   autoCautionaries = #'()  
514
515   printKeyCancellation = ##t
516   keyAlterationOrder = #`(
517     (6 . ,FLAT) (2  . ,FLAT) (5 . ,FLAT ) (1  . ,FLAT) (4  . ,FLAT) (0  . ,FLAT) (3  . ,FLAT)
518     (3  . ,SHARP) (0 . ,SHARP) (4 . ,SHARP) (1 . ,SHARP) (5 . ,SHARP) (2 . ,SHARP) (6 . ,SHARP)
519     (6 . ,DOUBLE-FLAT) (2  . ,DOUBLE-FLAT) (5 . ,DOUBLE-FLAT ) (1  . ,DOUBLE-FLAT) (4  . ,DOUBLE-FLAT) (0  . ,DOUBLE-FLAT) (3 . ,DOUBLE-FLAT)
520     (3  . ,DOUBLE-SHARP) (0 . ,DOUBLE-SHARP) (4 . ,DOUBLE-SHARP) (2 . ,DOUBLE-SHARP) (5 . ,DOUBLE-SHARP) (2 . ,DOUBLE-SHARP) (6 . ,DOUBLE-SHARP)
521   )
522
523   barCheckSynchronize = ##f
524   
525 %% chord names:
526   chordNameFunction = #ignatzek-chord-names
527   majorSevenSymbol = #whiteTriangleMarkup
528   chordNameSeparator = #(make-simple-markup  "/")
529   chordNameExceptions = #ignatzekExceptions
530   chordNoteNamer = #'()
531   chordRootNamer = #note-name->markup
532   chordPrefixSpacer = #0
533   chordNameExceptionsFull = #fullJazzExceptions
534   chordNameExceptionsPartial = #partialJazzExceptions
535   
536
537   bassStaffProperties = #'((assign clefGlyph "clefs.F")
538   (assign clefPosition 2)
539   (assign middleCPosition 6))
540 %% tablature:
541   stringOneTopmost = ##t
542   highStringOne = ##t
543
544 %% One may change the strings tuning as following :
545 %% The lenght of the list must be equal to the number of string
546   stringTunings = #guitar-tuning
547   tablatureFormat = #fret-number-tablature-format
548
549 %%
550   newFiguredBassFormatter = #format-new-bass-figure
551   metronomeMarkFormatter = #format-metronome-markup
552   graceSettings = #`(
553     (Voice Stem direction 1)
554     (Voice Stem font-size -3)
555     (Voice NoteHead font-size -3)
556     (Voice Dots font-size -3)
557     (Voice Stem length-fraction 0.8)
558     (Voice Stem no-stem-extend #t)
559     (Voice Beam thickness 0.384)
560     (Voice Beam length-fraction 0.8)
561     (Voice Accidental font-size -4)
562     (Voice Slur direction -1)
563   )
564
565   keepAliveInterfaces = #'(rhythmic-grob-interface lyric-interface percent-repeat-interface)
566   quotedEventTypes = #'(note-event rest-event time-scaled-music tie-event)
567   instrumentTransposition = #(ly:make-pitch 0 0 0)
568
569   verticallySpacedContexts = #'(Staff)
570
571   timing = ##t
572 }
573
574
575
576
577 \context {
578   \type "Engraver_group"
579   \name "FiguredBass"
580
581 %%  \consists "Figured_bass_engraver"
582   \consists "New_figured_bass_engraver"
583   \consists "Note_swallow_translator"
584   \consists "Skip_event_swallow_translator"
585   \consists "Separating_line_group_engraver"
586   \consists "Hara_kiri_engraver"
587   \override RemoveEmptyVerticalGroup #'remove-first = ##t
588   minimumVerticalExtent = #'(-0.5 . 2.5)
589 }
590
591 \context {
592   \name "Devnull"
593   \type "Engraver_group"
594
595 %% don't want to route anything out of here: 
596   \alias "Staff"
597   \alias "Voice"
598   \consists "Swallow_engraver"
599   \description "Silently discards all musical information given to this context. "
600 }
601
602 \context {
603   \Voice
604   \name "TabVoice"
605   \alias "Voice"
606   \consists "Tab_note_heads_engraver"
607   \remove "Note_heads_engraver"
608   \remove "Fingering_engraver"
609   \remove "New_fingering_engraver"
610
611   \description "Context for drawing notes in a Tab staff. "
612
613   %% Draws all stems/beams out of the staff (and not in the middle of the staff !)
614   %% This feature is now disabled because most of the tab does not use it.
615   %%\override Beam #'damping = #100000
616   %%\override Stem #'up-to-staff = ##t
617
618   %% TabStaff increase the staff-space, which in turn
619   %% increases beam thickness and spacing; beams are
620   %% too big. We have to adjust the beam settings:
621   \override Beam #'thickness = #0.32
622   \override Beam #'length-fraction = #0.62
623
624   %% No accidental in tablature !
625   \remove Accidental_engraver
626 }
627
628 \context {
629   \Staff
630   \alias "Staff"
631   \name "TabStaff"
632   \denies "Voice"
633   \remove "Staff_symbol_engraver"
634   \consists "Tab_staff_symbol_engraver"
635   
636   \description "Context for generating tablature. [DOCME]"
637
638   \accepts "TabVoice"
639   \defaultchild "TabVoice"
640   
641   %% 6 strings
642   \override StaffSymbol #'staff-space = #1.5
643
644   %% Don't draw stems over the tablature figures !
645   \override Stem #'avoid-note-head = ##t
646   
647   %% No accidental in tablature !
648   \remove "Accidental_engraver"
649   \remove "Key_engraver"
650   \remove "String_number_engraver"
651   %% Special "TAB" clef
652   clefGlyph = #"clefs.tab"
653   clefPosition = #0
654 }
655
656 %% TODO: Gregorian Chant contexts should be moved to gregorian-init.ly,
657 %% but this does not work (is this a bug or intended behaviour?):
658 %%
659 %% If I try to do so, I get "error: unknown escaped string:
660 %% `\VaticanaStaff'" in params-init.ly.  If I also move
661 %% "\context { \Vaticana*Context }" from params-init.ly to the end
662 %% of gregorian-init.ly, then I get "error: parse error, unexpected
663 %% TRANSLATOR: \context { \VaticanaStaff }" in
664 %% gregorian-init.ly. --jr
665
666 \context {
667   \Voice
668   \name "VaticanaVoice"
669   \alias "Voice"
670   \description "Same as @code{Voice} context, except that it is accommodated for tyepsetting Gregorian Chant in the notational style of Editio Vaticana."
671
672   \remove "Slur_engraver"
673   \remove "Stem_engraver"
674   \remove "Ligature_bracket_engraver"
675   \consists "Vaticana_ligature_engraver"
676
677   %% Set default head for notes outside of \[ \].
678   \override NoteHead #'style = #'vaticana.punctum
679
680   %% Put some space before and after divisiones.
681   %% FIXME: This does not seem to show any effect.
682   \override Script #'padding = #0.5
683
684   %% There are no beams in Gregorian Chant notation.
685   autoBeaming = ##f
686
687   %% Prepare TextSpanner for \episem{Initium|Finis} use.
688   %%
689   %% N.B.: dash-fraction MUST be unset; otherwise, TextSpanner will
690   %% always produce dashed lines, regardless of the style property.
691   %%
692   %% FIXME: The line @code{\override TextSpanner #'padding = #-0.1} is
693   %% required to force the articulation signs being placed vertically
694   %% tightly to the correpsonding note heads.
695   %%
696   \override TextSpanner #'dash-fraction = #'()
697   \override TextSpanner #'style = #'line
698   \override TextSpanner #'edge-height = #'(0 . 0)
699   \override TextSpanner #'padding = #-0.1
700   \override TextSpanner #'enclose-bounds = #1
701   \override TextSpanner #'edge-text = #'("" . "")
702 }
703
704 %% FIXME: need something like
705 %%  \remove "Bar_number_engraver" (which lives on score level)
706 %% for vaticana and gregorian transcription staves
707
708 \context {
709   \Staff
710   \name "VaticanaStaff"
711   \alias "Staff"
712   \denies "Voice"
713   \accepts "VaticanaVoice"
714   \defaultchild "VaticanaVoice"
715
716   \description "Same as @code{Staff} context, except that it is accommodated for tyepsetting Gregorian Chant in the notational style of Editio Vaticana."
717
718   \remove "Time_signature_engraver"
719   \consists "Custos_engraver"
720
721   %% We can not remove Bar_engraver; otherwise clefs and custodes will
722   %% not show up any more among other line breaking issues.
723   %% Instead, we make the grob transparent.
724   \override BarLine #'transparent = ##t
725
726   \override StaffSymbol #'line-count = #4
727   \override StaffSymbol #'thickness = #0.6
728
729   %% FIXME: unit on StaffSymbol's width should be \linewidth.
730   %% \override StaffSymbol #'width = #60.0
731
732   %% Choose vaticana do clef on 3rd line as default.
733   clefGlyph = #"clefs.vaticana.do"
734   middleCPosition = #1
735   clefPosition = #1
736   clefOctavation = #0
737
738   %% Select vaticana style font.
739   \override KeySignature #'style = #'vaticana
740   \override Accidental #'style = #'vaticana
741   \override Custos #'style = #'vaticana
742   \override Custos #'neutral-position = #3
743   \override Custos #'neutral-direction = #DOWN
744
745   %% Score.timing = ##f
746   %% Score.barAlways = ##t
747 }
748
749 \context {
750   \Voice
751   \name "GregorianTranscriptionVoice"
752   \alias "Voice"
753
754   %% Removing ligature bracket engraver without replacing it by some
755   %% other ligature engraver would cause a "Junking event: `LigatureEvent'"
756   %% warning for every "\[" and "\]".  Therefore, we make the grob
757   %% transparent instead.
758   \override LigatureBracket #'transparent = ##t
759
760   %% Put some space before and after divisiones.
761   %% FIXME: This does not seem to show any effect.
762   \override Script #'padding = #0.5
763
764   %% There are no beams in Gregorian Chant notation.
765   autoBeaming = ##f
766
767   %% Prepare TextSpanner for \episem{Initium|Finis} use.
768   %%
769   %% N.B.: dash-fraction MUST be unset; otherwise, TextSpanner will
770   %% always produce dashed lines, regardless of the style property.
771   %%
772   %% FIXME: The line @code{\override TextSpanner #'padding = #-0.1} is
773   %% required to force the articulation signs being placed vertically
774   %% tightly to the correpsonding note heads.
775   %%
776   \override TextSpanner #'dash-fraction = #'()
777   \override TextSpanner #'style = #'line
778   \override TextSpanner #'edge-height = #'(0 . 0)
779   \override TextSpanner #'padding = #-0.1
780   \override TextSpanner #'enclose-bounds = #1
781   \override TextSpanner #'edge-text = #'("" . "")
782 }
783
784 \context {
785   \Staff
786   \name "GregorianTranscriptionStaff"
787   \alias "Staff"
788   \denies "Voice"
789   \accepts "GregorianTranscriptionVoice"
790   \defaultchild "GregorianTranscriptionVoice"
791
792   %% We can not remove Bar_engraver; otherwise clefs and custodes will
793   %% not show up any more among other line breaking issues.
794   %% Instead, we make the grob transparent.
795   \override BarLine #'transparent = ##t
796 }
797
798 \context {
799   \Voice
800   \name "MensuralVoice"
801   \alias "Voice"
802   \description "Same as @code{Voice} context, except that it is accommodated for tyepsetting a piece in mensural style."
803
804   \remove "Slur_engraver"
805   \remove "Ligature_bracket_engraver"
806   \consists "Mensural_ligature_engraver"
807
808   %% Set default head for notes outside of \[ \].
809   \override NoteHead #'style = #'petrucci
810
811   %% There are no beams in mensural notation.
812   autoBeaming = ##f
813 }
814
815 \context {
816   \Staff
817   \name "MensuralStaff"
818   \alias "Staff"
819   \denies "Voice"
820   \defaultchild "MensuralVoice"
821   \accepts "MensuralVoice"
822   \description "Same as @code{Staff} context, except that it is accommodated for tyepsetting a piece in mensural style."
823
824   \consists "Custos_engraver"
825
826   %% We can not remove Bar_engraver; otherwise clefs and custodes will
827   %% not show up any more among other line breaking issues.
828   %% Instead, we make the grob transparent.
829   \override BarLine #'transparent = ##t
830
831   \override StaffSymbol #'thickness = #0.6
832
833   %% FIXME: unit on StaffSymbol's width should be \linewidth.
834   %% \override StaffSymbol #'width = #60.0
835
836   %% Choose petrucci g clef on 2nd line as default.
837   clefGlyph = #"clefs.petrucci.g"
838   middleCPosition = #-6
839   clefPosition = #-2
840   clefOctavation = #0
841
842   %% Select mensural style font.
843   \override TimeSignature #'style = #'mensural
844   \override KeySignature #'style = #'mensural
845   \override Accidental #'style = #'mensural
846   \override Custos #'style = #'mensural
847   \override Custos #'neutral-position = #3
848   \override Custos #'neutral-direction = #DOWN
849
850   %% Score.timing = ##f
851   %% Score.barAlways = ##t
852 }
853
854
855 RemoveEmptyRhythmicStaffContext= \context {
856   \RhythmicStaff
857   \remove "Axis_group_engraver"
858   \consists "Hara_kiri_engraver"
859 }