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