]> git.donarmstrong.com Git - lilypond.git/blob - ly/engraver-init.ly
Merge master into nested-bookparts
[lilypond.git] / ly / engraver-init.ly
1 \version "2.10.0"
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
14 \context {
15   \type "Engraver_group"
16   \name "FretBoards"
17
18   \consists "Output_property_engraver"  
19
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"
25
26   predefinedDiagramTable = #fretboard-table
27 }
28
29 \context {
30   \type "Engraver_group"
31   \name "Staff"
32   
33   \consists "Output_property_engraver"  
34   \consists "Bar_engraver"
35   %% Bar_engraver must be first so default bars aren't overwritten
36   %% with empty ones.
37   
38   \consists "Font_size_engraver"
39   \consists "Separating_line_group_engraver"    
40   \consists "Dot_column_engraver"
41   \consists "Staff_collecting_engraver"
42
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"
61
62   localKeySignature = #'()
63   createSpacing = ##t
64   ignoreFiguredBassRest = ##t 
65   \override VerticalAxisGroup #'minimum-Y-extent = #'(-4 . 4)
66   
67   %% explicitly set instrument, so we don't get 
68   %% weird effects when doing instrument names for
69   %% piano staves
70
71   instrumentName = #'()
72   shortInstrumentName = #'()
73   
74   \defaultchild "Voice"
75   \accepts "Voice"
76   \accepts "CueVoice"
77   
78   \description "Handles clefs, bar lines, keys, accidentals.  It can contain
79 @code{Voice} contexts."
80
81 }
82
83 \context {
84   \Staff
85   \type "Engraver_group"
86   \name "DrumStaff"
87   \alias "Staff"
88   
89   \remove "Accidental_engraver"
90   \remove "Ottava_spanner_engraver"
91   \remove "Key_engraver" 
92   \remove "Piano_pedal_engraver"
93   \remove "String_number_engraver"
94   
95   \description "Handles typesetting for percussion."
96
97   \denies "Voice"
98   \accepts "DrumVoice"
99   \defaultchild "DrumVoice"
100
101   clefGlyph = #"clefs.percussion"
102   clefPosition = #0
103   \override Script #'staff-padding = #0.75 
104 }
105
106
107 \context {
108   \type "Engraver_group"
109   \name "InnerChoirStaff"
110   \consists "System_start_delimiter_engraver"
111   systemStartDelimiter = #'SystemStartBracket
112   vocalName = #'()
113   shortVocalName = #'()
114
115   \accepts "Staff"
116   \accepts "DrumStaff"
117   \accepts "RhythmicStaff"
118   \accepts "GrandStaff"
119   \accepts "PianoStaff"
120   \accepts "Lyrics"
121   \accepts "ChordNames"
122   \defaultchild "Staff"
123 }
124
125 \context {
126   \InnerChoirStaff
127   \name ChoirStaff
128   
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."
134
135 }
136
137 \context{
138   \type "Engraver_group"
139   
140   \override VerticalAxisGroup #'minimum-Y-extent = ##f
141   localKeySignature = #'()
142   createSpacing = ##t
143
144   squashedPosition = #0
145   \name RhythmicStaff
146   \alias "Staff"
147   
148   \override BarLine #'bar-size = #4
149   \override VoltaBracket #'staff-padding = #3
150   \override StaffSymbol #'line-count = #1       
151
152   \override Stem  #'neutral-direction = #UP
153   \override Beam  #'neutral-direction = #UP
154   
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" 
166   
167   \accepts "Voice"
168   \accepts "CueVoice"
169   \defaultchild "Voice"
170
171   \description "A context like @code{Staff} but for printing rhythms.
172 Pitches are ignored; the notes are printed on one line."
173 }
174
175
176 \context {
177   \type "Engraver_group"
178   \name "Voice"
179
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.
183
184 You have to instantiate this explicitly if you want to have
185 multiple voices on the same staff."
186
187   localKeySignature = #'()
188   \consists "Font_size_engraver"
189
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"
208   
209   %% switch on to make stem directions interpolate for the
210   %% center line.
211   %  \consists "Melody_engraver"
212
213   \consists "Stem_engraver"
214   \consists "Beam_engraver"
215   \consists "Grace_beam_engraver"
216   \consists "Auto_beam_engraver"
217
218   %% must come before Script_column_engraver.
219   \consists "New_fingering_engraver"
220   
221   \consists "Chord_tremolo_engraver"
222   \consists "Percent_repeat_engraver"
223   \consists "Slash_repeat_engraver"
224   \consists "Part_combine_engraver"
225
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"
232
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"
246 }
247
248 \context{
249   \Voice
250   
251   \name CueVoice
252   \alias Voice
253   fontSize = #-4
254   \override Stem #'length-fraction = #(magstep -4)
255   \override Beam #'length-fraction = #(magstep -4)
256   \override Beam #'thickness = #0.35
257 }
258
259 \context {
260   \Voice
261   \name DrumVoice
262   \alias Voice
263
264   \description "A voice on a percussion staff."
265   \remove "Arpeggio_engraver"
266   \consists "Grob_pq_engraver"
267
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"
274
275   \remove "Fingering_engraver"
276
277   \remove "Cluster_spanner_engraver"
278
279   \consists "Skip_event_swallow_translator"
280 }
281
282 \context{
283   \type "Engraver_group"
284   \name GrandStaff
285   localKeySignature = #'()
286   
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."
290
291   \consists "Span_bar_engraver"
292   \consists "Span_arpeggio_engraver"
293   \consists "System_start_delimiter_engraver"
294   systemStartDelimiter = #'SystemStartBrace
295
296   \defaultchild "Staff"
297   \accepts "Staff"
298   \accepts "FiguredBass"
299 }
300
301 \context{
302   \GrandStaff
303   \name "PianoStaff"
304   \alias "GrandStaff"
305
306   \description "Just like @code{GrandStaff} but with support for
307 instrument names at the start of each system."
308
309   \consists "Instrument_name_engraver"
310   
311   instrumentName = #'()
312   shortInstrumentName = #'()
313 }
314
315 \context {
316   \type "Engraver_group"
317   \name InnerStaffGroup
318
319   \consists "Span_bar_engraver"
320   \consists "Span_arpeggio_engraver"
321   \consists "Output_property_engraver"  
322   systemStartDelimiter = #'SystemStartBracket
323
324   \consists "System_start_delimiter_engraver"
325
326   \defaultchild "Staff"
327   \accepts "Staff"
328   \accepts "RhythmicStaff"
329   \accepts "DrumStaff"
330   \accepts "GrandStaff"
331   \accepts "PianoStaff"
332   \accepts "TabStaff"   
333   \accepts "Lyrics"
334   \accepts "ChordNames"
335 }
336
337 \context {
338   \InnerStaffGroup
339   \name StaffGroup
340   
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."
345   
346   \accepts "InnerChoirStaff"
347   \accepts "ChoirStaff"
348   \accepts "InnerStaffGroup"
349   \accepts "FiguredBass"
350 }
351
352
353 \context{
354   \type "Engraver_group"
355   \override VerticalAxisGroup #'minimum-Y-extent = #'(-0.75 . 2.0)
356
357   \description "Corresponds to a voice with lyrics.  Handles the
358 printing of a single line of lyrics."
359   
360   \name "Lyrics"
361   instrumentName = #'()
362   shortInstrumentName = #'()
363   
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"
372
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
378
379   %% sync with define-grobs.scm ;
380   \override InstrumentName #'font-size = #1.0
381
382   %% make sure that barlines aren't collapsed, when
383   %% Bar_engraver is there.
384   \override BarLine #'bar-size = #0.1 
385   
386 }
387
388 \context {
389   \type "Engraver_group"
390   \name NoteNames
391   \consists "Axis_group_engraver"
392
393   \override VerticalAxisGroup #'minimum-Y-extent = ##f
394
395   
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"
401 }
402
403 \context {
404   \type "Engraver_group"
405   \name ChordNames
406   \description "Typesets chord names."
407   
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
418 }
419
420
421 RemoveEmptyStaffContext= \context {
422   \Staff
423   \remove "Axis_group_engraver"
424   \consists "Hara_kiri_engraver"
425   \override Beam #'auto-knee-gap = #'()
426   \override VerticalAxisGroup #'remove-empty = ##t
427 }
428
429 AncientRemoveEmptyStaffContext = \context {
430 %% why not add by default?
431   
432   \RemoveEmptyStaffContext
433   \accepts "VaticanaVoice"
434   \accepts "GregorianTranscriptionVoice"
435   \accepts "MensuralVoice"
436 }
437
438 \context {
439   \type "Score_engraver"
440   \name "Score"
441   
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.
447
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."
452
453   \consists "Paper_column_engraver"
454   \consists "Vertically_spaced_contexts_engraver"
455   \consists "Repeat_acknowledge_engraver"
456   \consists "Staff_collecting_engraver"
457
458   %% move the alias along with the engraver.
459
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"
474   
475   \defaultchild "Staff"
476
477   \accepts "FretBoards"
478   \accepts "Staff"
479   \accepts "RhythmicStaff"
480   \accepts "TabStaff"
481   \accepts "VaticanaStaff"
482   \accepts "GregorianTranscriptionStaff"
483   \accepts "MensuralStaff"
484   \accepts "StaffGroup"
485   \accepts "DrumStaff"
486   \accepts "Lyrics"
487   \accepts "ChordNames"
488   \accepts "GrandStaff"
489   \accepts "ChoirStaff"
490   \accepts "PianoStaff"
491   \accepts "Devnull"
492   \accepts "NoteNames"
493   \accepts "FiguredBass"
494
495
496   noteToFretFunction = #determine-frets
497   soloText = #"Solo"
498   soloIIText = #"Solo II"
499   aDueText = #"a2"
500   printPartCombineTexts = ##t
501   systemStartDelimiter =#'SystemStartBar
502
503   drumStyleTable = #drums-style
504   
505   melismaBusyProperties = #default-melisma-properties
506   tieWaitForNote = ##f
507   clefGlyph = #"clefs.G"
508   clefPosition = #-2
509   middleCClefPosition = #-6
510   middleCPosition = #-6
511   firstClef = ##t
512
513   crescendoSpanner = #'hairpin
514   decrescendoSpanner = #'hairpin
515   
516   defaultBarType = #"|"
517   doubleRepeatType = #":|:"
518   barNumberVisibility = #first-bar-number-invisible
519   automaticBars = ##t
520   
521   explicitClefVisibility = #all-visible
522   explicitKeySignatureVisibility = #all-visible
523   implicitTimeSignatureVisibility = #end-of-line-invisible
524   
525   autoBeamSettings = #default-auto-beam-settings
526   autoBeaming = ##t
527   autoBeamCheck = #default-auto-beam-check
528   scriptDefinitions = #default-script-alist
529
530   pedalSustainStrings = #'("Ped." "*Ped." "*")
531   pedalSustainStyle = #'text
532   pedalUnaCordaStrings = #'("una corda" "" "tre corde")
533   pedalUnaCordaStyle = #'text
534
535 %% These are in ordinary italic font, including the *,
536 %% but they are unlikely to be used, 
537 %% as the default pedal-style for SostenutoPedal is 'mixed':
538 %% i.e.  Sost. Ped_____________________ 
539   pedalSostenutoStrings = #'("Sost. Ped." "*Sost. Ped." "*") 
540   pedalSostenutoStyle = #'mixed
541
542   harmonicAccidentals = ##t 
543   fingeringOrientations = #'(up down)
544   stringNumberOrientations = #'(up down)
545   strokeFingerOrientations = #'(right)
546   
547   lyricMelismaAlignment = #LEFT
548   markFormatter = #format-mark-letters
549   rehearsalMark = #1
550   subdivideBeams = ##f
551   allowBeamBreak = ##f
552   extraNatural = ##t
553   autoAccidentals = #`(Staff ,(make-accidental-rule 'same-octave 0))
554   autoCautionaries = #'()  
555
556   printKeyCancellation = ##t
557   keyAlterationOrder = #`(
558     (6 . ,FLAT) (2  . ,FLAT) (5 . ,FLAT ) (1  . ,FLAT) (4  . ,FLAT) (0  . ,FLAT) (3  . ,FLAT)
559     (3 . ,SHARP) (0 . ,SHARP) (4 . ,SHARP) (1 . ,SHARP) (5 . ,SHARP) (2 . ,SHARP) (6 . ,SHARP)
560     (6 . ,DOUBLE-FLAT) (2 . ,DOUBLE-FLAT) (5 . ,DOUBLE-FLAT ) (1 . ,DOUBLE-FLAT) (4 . ,DOUBLE-FLAT) (0 . ,DOUBLE-FLAT) (3 . ,DOUBLE-FLAT)
561     (3  . ,DOUBLE-SHARP) (0 . ,DOUBLE-SHARP) (4 . ,DOUBLE-SHARP) (2 . ,DOUBLE-SHARP) (5 . ,DOUBLE-SHARP) (2 . ,DOUBLE-SHARP) (6 . ,DOUBLE-SHARP)
562   )
563
564   barCheckSynchronize = ##f
565   
566 %% chord names:
567   chordNameFunction = #ignatzek-chord-names
568   majorSevenSymbol = #whiteTriangleMarkup
569   chordNameSeparator = #(make-simple-markup  "/")
570   chordNameExceptions = #ignatzekExceptions
571   chordNoteNamer = #'()
572   chordRootNamer = #note-name->markup
573   chordPrefixSpacer = #0
574   chordNameExceptionsFull = #fullJazzExceptions
575   chordNameExceptionsPartial = #partialJazzExceptions
576   
577
578   bassStaffProperties = #'((assign clefGlyph "clefs.F")
579   (assign clefPosition 2)
580   (assign middleCPosition 6)
581   (assign middleCClefPosition 6))
582 %% tablature:
583   stringOneTopmost = ##t
584   highStringOne = ##t
585
586 %% One may change the strings tuning as following :
587 %% The lenght of the list must be equal to the number of string
588   stringTunings = #guitar-tuning
589   tablatureFormat = #fret-number-tablature-format
590
591 %%
592   figuredBassFormatter = #format-bass-figure
593   metronomeMarkFormatter = #format-metronome-markup
594
595
596   %% See also make-voice-props-set
597   graceSettings = #`(
598     (Voice Stem direction ,UP)
599     (Voice Stem font-size -3)
600     (Voice NoteHead font-size -3)
601     (Voice Dots font-size -3)
602     (Voice Stem length-fraction 0.8)
603     (Voice Stem no-stem-extend #t)
604     (Voice Beam thickness 0.384)
605     (Voice Beam length-fraction 0.8)
606     (Voice Accidental font-size -4)
607     (Voice AccidentalCautionary font-size -4)
608     (Voice Slur direction ,DOWN)
609     (Voice Script font-size -3)
610   )
611
612   keepAliveInterfaces = #'(
613     rhythmic-grob-interface
614     lyric-interface
615     percent-repeat-item-interface
616     percent-repeat-interface
617
618     ;; need this, as stanza numbers are items, and appear only once. 
619     stanza-number-interface
620   )
621   quotedEventTypes = #'(
622     note-event
623     rest-event
624     tie-event
625     beam-event
626     tuplet-span-event)
627   instrumentTransposition = #(ly:make-pitch 0 0 0)
628
629   verticallySpacedContexts = #'(Staff)
630   
631   timing = ##t
632 }
633
634
635
636
637 \context {
638   \type "Engraver_group"
639   \name "FiguredBass"
640
641   \consists "Figured_bass_engraver"
642   \consists "Note_swallow_translator"
643   \consists "Skip_event_swallow_translator"
644   \consists "Separating_line_group_engraver"
645   \consists "Hara_kiri_engraver"
646
647   \override VerticalAxisGroup #'remove-empty = ##t
648   \override VerticalAxisGroup #'remove-first = ##t
649   \override VerticalAxisGroup #'minimum-Y-extent = #'(0 . 2)
650 }
651
652 \context {
653   \name "Devnull"
654   \type "Engraver_group"
655
656 %% don't want to route anything out of here: 
657   \alias "Staff"
658   \alias "Voice"
659   \consists "Swallow_engraver"
660   \description "Silently discards all musical information given to this
661 context."
662 }
663
664 \context {
665   \Voice
666   \name "TabVoice"
667   \alias "Voice"
668   \consists "Tab_note_heads_engraver"
669   \consists "Tab_harmonic_engraver"
670   
671   \remove "Note_heads_engraver"
672   \remove "Fingering_engraver"
673   \remove "New_fingering_engraver"
674
675   \description "Context for drawing notes in a Tab staff."
676
677   %% TabStaff increase the staff-space, which in turn
678   %% increases beam thickness and spacing; beams are
679   %% too big. We have to adjust the beam settings:
680   \override Beam #'thickness = #0.32
681   \override Beam #'length-fraction = #0.62
682
683   %% No accidental in tablature !
684   \remove Accidental_engraver
685
686   \override Glissando #'extra-dy = #0.75
687   \override Glissando #'bound-details #'right = #`((attach-dir . ,LEFT)
688                                                    (padding . 0.3))
689   \override Glissando #'bound-details #'left = #`((attach-dir . ,RIGHT)
690                                                    (padding . 0.3))
691   \override Glissando #'extra-dy = #0.75
692   \override Glissando #'gap = #0.2
693 }
694
695 \context {
696   \Staff
697   \alias "Staff"
698   \name "TabStaff"
699   \denies "Voice"
700   \consists "Tab_staff_symbol_engraver"
701   
702   \description "Context for generating tablature. [DOCME]"
703
704   \accepts "TabVoice"
705   \defaultchild "TabVoice"
706   
707   %% 6 strings
708   \override StaffSymbol #'staff-space = #1.5
709
710   %% Don't draw stems over the tablature figures !
711   \override Stem #'avoid-note-head = ##t
712   
713   %% No accidental in tablature !
714   \remove "Accidental_engraver"
715   \remove "Key_engraver"
716   \remove "String_number_engraver"
717   %% Special "TAB" clef
718   clefGlyph = #"clefs.tab"
719   clefPosition = #0
720 }
721
722 %% TODO: Gregorian Chant contexts should be moved to gregorian.ly,
723 %% but this does not work (is this a bug or intended behaviour?):
724 %%
725 %% If I try to do so, I get "error: unknown escaped string:
726 %% `\VaticanaStaff'" in params-init.ly.  If I also move
727 %% "\context { \Vaticana*Context }" from params-init.ly to the end
728 %% of gregorian.ly, then I get "error: parse error, unexpected
729 %% TRANSLATOR: \context { \VaticanaStaff }" in
730 %% gregorian.ly. --jr
731
732 \context {
733   \Voice
734   \name "VaticanaVoice"
735   \alias "Voice"
736   \description "Same as @code{Voice} context, except that it is
737 accommodated for typesetting Gregorian Chant in the notational style
738 of Editio Vaticana."
739
740   \remove "Slur_engraver"
741   \remove "Stem_engraver"
742   \remove "Ligature_bracket_engraver"
743   \consists "Vaticana_ligature_engraver"
744
745   %% Set default head for notes outside of \[ \].
746   \override NoteHead #'style = #'vaticana.punctum
747
748   %% Put some space before and after divisiones.
749   %% FIXME: This does not seem to show any effect.
750   \override Script #'padding = #0.5
751
752   %% There are no beams in Gregorian Chant notation.
753   autoBeaming = ##f
754
755   %% Prepare TextSpanner for \episem{Initium|Finis} use.
756   %%
757   %% FIXME: The line @code{\override TextSpanner #'padding = #-0.1} is
758   %% required to force the articulation signs being placed vertically
759   %% tightly to the correpsonding note heads.
760   %%
761   \override TextSpanner #'style = #'line
762   \override TextSpanner #'padding = #-0.1
763 }
764
765 \context {
766   \Staff
767   \name "VaticanaStaff"
768   \alias "Staff"
769   \denies "Voice"
770   \accepts "VaticanaVoice"
771   \defaultchild "VaticanaVoice"
772
773   \description "Same as @code{Staff} context, except that it is
774 accommodated for typesetting Gregorian Chant in the notational style
775 of Editio Vaticana."
776
777   \remove "Time_signature_engraver"
778   \consists "Custos_engraver"
779
780   %% We can not remove Bar_engraver; otherwise clefs and custodes will
781   %% not show up any more among other line breaking issues.
782   %% Instead, we make the grob transparent.
783   \override BarLine #'transparent = ##t
784
785   \override StaffSymbol #'line-count = #4
786   \override StaffSymbol #'thickness = #0.6
787
788   %% FIXME: unit on StaffSymbol's width should be \linewidth.
789   %% \override StaffSymbol #'width = #60.0
790
791   %% Choose vaticana do clef on 3rd line as default.
792   clefGlyph = #"clefs.vaticana.do"
793   middleCPosition = #1
794   middleCClefPosition = #1
795   clefPosition = #1
796   clefOctavation = #0
797
798   %% Select vaticana style font.
799   \override KeySignature #'style = #'vaticana
800   \override Accidental #'glyph-name-alist = #alteration-vaticana-glyph-name-alist
801   \override Custos #'style = #'vaticana
802   \override Custos #'neutral-position = #3
803   \override Custos #'neutral-direction = #DOWN
804   \override Dots #'style = #'vaticana
805 }
806
807 \context {
808   \Voice
809   \name "GregorianTranscriptionVoice"
810   \alias "Voice"
811   
812   %% Removing ligature bracket engraver without replacing it by some
813   %% other ligature engraver would cause a "Junking event: `LigatureEvent'"
814   %% warning for every "\[" and "\]".  Therefore, we make the grob
815   %% transparent instead.
816   \override LigatureBracket #'transparent = ##t
817
818   %% Put some space before and after divisiones.
819   %% FIXME: This does not seem to show any effect.
820   \override Script #'padding = #0.5
821
822   %% There are no beams in Gregorian Chant notation.
823   autoBeaming = ##f
824
825   %% Prepare TextSpanner for \episem{Initium|Finis} use.
826   %%
827   %% N.B.: dash-fraction MUST be unset; otherwise, TextSpanner will
828   %% always produce dashed lines, regardless of the style property.
829   %%
830   %% FIXME: The line @code{\override TextSpanner #'padding = #-0.1} is
831   %% required to force the articulation signs being placed vertically
832   %% tightly to the correpsonding note heads.
833   %%
834   \override TextSpanner #'dash-fraction = #'()
835   \override TextSpanner #'style = #'line
836   \override TextSpanner #'padding = #-0.1
837 }
838
839 \context {
840   \Staff
841   \name "GregorianTranscriptionStaff"
842   \alias "Staff"
843   \denies "Voice"
844   \accepts "GregorianTranscriptionVoice"
845   \defaultchild "GregorianTranscriptionVoice"
846
847   %% We can not remove Bar_engraver; otherwise clefs and custodes will
848   %% not show up any more among other line breaking issues.
849   %% Instead, we make the grob transparent.
850   \override BarLine #'transparent = ##t
851 }
852
853 \context {
854   \Voice
855   \name "MensuralVoice"
856   \alias "Voice"
857   \description "Same as @code{Voice} context, except that it is
858 accommodated for typesetting a piece in mensural style."
859
860   \remove "Slur_engraver"
861   \remove "Ligature_bracket_engraver"
862   \consists "Mensural_ligature_engraver"
863
864   %% Set default head for notes outside of \[ \].
865   \override NoteHead #'style = #'petrucci
866
867   %% There are no beams in mensural notation.
868   autoBeaming = ##f
869 }
870
871 \context {
872   \Staff
873   \name "MensuralStaff"
874   \alias "Staff"
875   \denies "Voice"
876   \defaultchild "MensuralVoice"
877   \accepts "MensuralVoice"
878   \description "Same as @code{Staff} context, except that it is
879 accommodated for typesetting a piece in mensural style."
880
881   \consists "Custos_engraver"
882
883   %% We can not remove Bar_engraver; otherwise clefs and custodes will
884   %% not show up any more among other line breaking issues.
885   %% Instead, we make the grob transparent.
886   \override BarLine #'transparent = ##t
887
888   \override StaffSymbol #'thickness = #0.6
889
890   %% FIXME: unit on StaffSymbol's width should be \linewidth.
891   %% \override StaffSymbol #'width = #60.0
892
893   %% Choose petrucci g clef on 2nd line as default.
894   clefGlyph = #"clefs.petrucci.g"
895   middleCClefPosition = #-6
896   middleCPosition = #-6
897   clefPosition = #-2
898   clefOctavation = #0
899
900   %% Select mensural style font.
901   \override TimeSignature #'style = #'mensural
902   \override KeySignature #'style = #'mensural
903   \override Accidental #'glyph-name-alist = #alteration-mensural-glyph-name-alist
904   \override Custos #'style = #'mensural
905   \override Custos #'neutral-position = #3
906   \override Custos #'neutral-direction = #DOWN
907
908   %% Accidentals are valid only once (same as
909   %% #(set-accidental-style 'forget))
910   extraNatural = ##f
911   autoAccidentals = #`(Staff ,(make-accidental-rule 'same-octave -1))
912   autoCautionaries = #'()  
913   printKeyCancellation = ##f
914 }
915
916
917 RemoveEmptyRhythmicStaffContext= \context {
918   \RhythmicStaff
919   \remove "Axis_group_engraver"
920   \override VerticalAxisGroup #'remove-empty = ##t
921   \consists "Hara_kiri_engraver"
922 }