4 % setup for Request->Element conversion. Guru-only
7 StaffContext=\translator {
8 \type "Engraver_group_engraver"
10 \consists "Output_property_engraver"
12 \consists "Bar_engraver"
13 % Bar_engraver must be first so default bars aren't overwritten
15 \consists "Font_size_engraver"
17 % \consists "Repeat_engraver"
18 \consists "Volta_engraver"
19 \consists "Separating_line_group_engraver"
20 SeparatingGroupSpanner \override #'spacing-procedure
21 = #Separating_group_spanner::set_spacing_rods_and_seqs
22 \consists "Dot_column_engraver"
24 \consists "Clef_engraver"
25 \consists "Key_engraver"
26 \consists "Time_signature_engraver"
27 \consists "Staff_symbol_engraver"
28 \consists "Collision_engraver"
29 \consists "Rest_collision_engraver"
30 \consists "Accidental_engraver"
31 \consists "Piano_pedal_engraver"
32 \consists "Instrument_name_engraver"
33 \consists "Grob_pq_engraver"
34 \consists "Forbid_line_break_engraver"
35 \consistsend "Axis_group_engraver"
37 minimumVerticalExtent = #'(-6 . 6)
38 extraVerticalExtent = ##f
40 localKeySignature = #'()
42 % explicitly set instrument, so we don't get
43 % weird effects when doing instrument names for
53 StaffContainerContext = \translator {
54 \type Engraver_group_engraver
55 \consists "Axis_group_engraver"
56 minimumVerticalExtent = ##f
57 extraVerticalExtent = ##f
59 localKeySignature = #'()
65 InnerChoirStaffContext = \translator {
66 \type "Engraver_group_engraver"
68 %% alignmentReference = #0 FIXME
69 \consists "System_start_delimiter_engraver"
70 systemStartDelimiter = #'SystemStartBracket
71 localKeySignature = #'()
74 \accepts "RhythmicStaff"
80 ChoirStaffContext = \translator {
81 \InnerChoirStaffContext
83 \accepts "InnerChoirStaff"
84 \accepts "InnerStaffGroup"
88 RhythmicStaffContext=\translator{
89 \type "Engraver_group_engraver"
91 \consists "Output_property_engraver"
94 minimumVerticalExtent = ##f
95 extraVerticalExtent = ##f
97 localKeySignature = #'()
99 \consists "Pitch_squash_engraver"
100 \consists "Separating_line_group_engraver"
104 BarLine \override #'bar-size = #4
105 VoltaBracket \override #'minimum-space = #15 % urg, in \pt
106 VoltaBracket \override #'padding = #5 % urg, in \pt
107 StaffSymbol \override #'line-count = #1
109 Stem \override #'neutral-direction = #1
110 Beam \override #'neutral-direction = #1
111 % \consists "Repeat_engraver"
112 \consists "Dot_column_engraver"
113 \consists "Volta_engraver"
114 \consists "Bar_engraver"
115 \consists "Time_signature_engraver"
116 \consists "Staff_symbol_engraver"
117 \consists "Instrument_name_engraver"
118 \consistsend "Axis_group_engraver"
123 VoiceContext = \translator {
124 \type "Engraver_group_engraver"
128 localKeySignature = #'()
129 \consists "Font_size_engraver"
131 % must come before all
132 \consists "Voice_devnull_engraver"
133 \consists "Output_property_engraver"
134 \consists "Arpeggio_engraver"
135 \consists "Multi_measure_rest_engraver"
136 \consists "Text_spanner_engraver"
137 \consists "Grob_pq_engraver"
139 \consists "Ligature_bracket_engraver"
140 \consists "Breathing_sign_engraver"
141 % \consists "Rest_engraver"
142 \consists "Stem_engraver"
143 \consists "Beam_engraver"
144 \consists "Grace_beam_engraver"
145 \consists "Auto_beam_engraver"
146 \consists "New_fingering_engraver"
147 \consists "Chord_tremolo_engraver"
148 \consists "Percent_repeat_engraver"
149 \consists "Melisma_engraver"
152 Must come before text_engraver, but after note_column engraver.
155 \consists "Text_engraver"
156 \consists "Dynamic_engraver"
157 \consists "Fingering_engraver"
159 \consists "Script_engraver"
160 \consists "Script_column_engraver"
161 \consists "Rhythmic_column_engraver"
162 \consists "Phrasing_slur_engraver"
163 \consists "Cluster_engraver"
164 \consists "Slur_engraver"
165 \consists "Tie_engraver"
166 \consists "New_tie_engraver"
167 \consists "Porrectus_engraver"
168 \consists "Tuplet_engraver"
169 \consists "A2_engraver"
171 \consists "Skip_req_swallow_translator"
172 \accepts Thread % bug if you leave out this!
175 ThreadContext = \translator{
176 \type Engraver_group_engraver
178 localKeySignature = #'()
180 \consists "Font_size_engraver"
181 \consists "Thread_devnull_engraver"
182 \consists "Note_heads_engraver"
183 \consists "Rest_engraver"
186 \consists "Note_head_line_engraver"
187 \consists "Output_property_engraver"
193 GrandStaffContext=\translator{
194 \type "Engraver_group_engraver"
196 localKeySignature = #'()
197 \consists "Span_bar_engraver"
198 \consists "Span_arpeggio_engraver"
199 \consists "System_start_delimiter_engraver"
200 systemStartDelimiter = #'SystemStartBrace
205 PianoStaffContext = \translator{
210 verticalAlignmentChildCallback = #Align_interface::fixed_distance_alignment_callback
211 VerticalAlignment \override #'forced-distance = #12
212 VerticalAlignment \override #'self-alignment-Y = #0
214 \consists "Vertical_align_engraver"
215 \consists "Instrument_name_engraver"
220 % \consistsend "Axis_group_engraver"
223 InnerStaffGroupContext= \translator {
224 \type "Engraver_group_engraver"
225 \name InnerStaffGroup
226 localKeySignature = #'()
228 \consists "Span_bar_engraver"
229 \consists "Span_arpeggio_engraver"
230 \consists "Output_property_engraver"
231 systemStartDelimiter = #'SystemStartBracket
233 \consists "System_start_delimiter_engraver"
235 \accepts "RhythmicStaff"
236 \accepts "GrandStaff"
237 \accepts "PianoStaff"
240 \accepts "ChordNames"
243 StaffGroupContext = \translator {
244 \InnerStaffGroupContext
246 \accepts "InnerChoirStaff"
247 \accepts "ChoirStaff"
248 \accepts "InnerStaffGroup"
249 \accepts "FiguredBass"
254 LyricsVoiceContext= \translator{
255 \type "Engraver_group_engraver"
256 \consistsend "Hara_kiri_engraver"
257 minimumVerticalExtent = #'(-1.2 . 1.2)
258 extraVerticalExtent = ##f
261 \consists "Separating_line_group_engraver"
262 \consists "Lyric_engraver"
263 \consists "Extender_engraver"
264 \consists "Hyphen_engraver"
265 \consists "Stanza_number_engraver"
266 \consists "Skip_req_swallow_translator"
267 phrasingPunctuation = #".,:!?\""
270 NoteNamesContext = \translator {
271 \type "Engraver_group_engraver"
273 \consistsend "Axis_group_engraver"
275 minimumVerticalExtent = ##f
276 extraVerticalExtent = ##f
280 \consists "Note_name_engraver"
281 \consists "Separating_line_group_engraver"
284 LyricsContext = \translator {
285 \type "Engraver_group_engraver"
288 %% To get folded repeats right.
289 \consists Vertical_align_engraver
291 \consistsend "Hara_kiri_engraver"
292 minimumVerticalExtent = ##f
293 extraVerticalExtent = ##f
296 \accepts "LyricsVoice"
300 ChordNamesContext = \translator {
301 \type "Engraver_group_engraver"
304 \consists "Rest_swallow_translator"
305 \consists "Output_property_engraver"
306 \consists "Separating_line_group_engraver"
307 \consists "Chord_name_engraver"
308 \consists "Skip_req_swallow_translator"
309 \consistsend "Hara_kiri_engraver"
310 minimumVerticalExtent = #'(0 . 2.5)
311 extraVerticalExtent = ##f
316 HaraKiriStaffContext = \translator {
318 \remove "Axis_group_engraver"
319 \consistsend "Hara_kiri_engraver"
320 \consists "Instrument_name_engraver"
323 % hara kiri & auto knee don't work together.
324 Beam \override #'auto-knee-gap = #'()
328 The HaraKiriStaffContexts doesn't override \name,
329 so it is still named `Staff'.
331 %\translator { \HaraKiriStaffContext }
337 ScoreContext = \translator {
340 localKeySignature = #'()
342 \consists "Repeat_acknowledge_engraver"
343 \consists "Staff_collecting_engraver"
345 % move the alias along with the engraver.
347 %% TODO? add this alias from Timing_engraver::initialize() ?
348 \consists "Timing_engraver"
351 \consists "Output_property_engraver"
352 \consists "System_start_delimiter_engraver"
353 \consists "Mark_engraver"
354 \consists "Break_align_engraver"
355 \consists "Spacing_engraver"
356 \consists "Vertical_align_engraver"
357 \consists "Lyric_phrasing_engraver"
358 \consists "Bar_number_engraver"
359 \consists "Span_arpeggio_engraver"
363 \accepts "StaffContainer"
364 \accepts "StaffGroup"
365 \accepts "RhythmicStaff"
367 \accepts "ChordNames"
368 \accepts "GrandStaff"
369 \accepts "ChoirStaff"
370 \accepts "PianoStaff"
372 \accepts "FiguredBass"
375 soloIIText = #"Solo II"
378 splitInterval = #'(0 . 1)
379 changeMoment = #`(,(ly:make-moment 0 0) . ,(ly:make-moment 1 512))
380 systemStartDelimiter =#'SystemStartBar
383 %% name, glyph id, clef position
384 %% where is c0 in this clef?
385 clefGlyph = #"clefs-G"
387 centralCPosition = #-6
389 automaticPhrasing = ##t
390 automaticMelismata = ##t
392 defaultBarType = #"|"
393 barNumberVisibility = #default-bar-number-visibility
395 explicitClefVisibility = #all-visible
396 explicitKeySignatureVisibility = #all-visible
397 autoBeamSettings = #auto-beam-settings
399 scriptDefinitions = #default-script-alist
401 verticalAlignmentChildCallback = #Align_interface::alignment_callback
403 pedalSustainStrings = #'("Ped." "*Ped." "*")
404 pedalUnaCordaStrings = #'("una corda" "" "tre corde")
406 %% These are in ordinary italic font, including the *,
407 %% but they are unlikely to be used,
408 %% as the default pedal-style for SostenutoPedal is 'mixed':
409 %% i.e. Sost. Ped_____________________
410 pedalSostenutoStrings = #'("Sost. Ped." "*Sost. Ped." "*")
412 tupletNumberFormatFunction = #denominator-tuplet-formatter
416 autoAccidentals = #'(Staff (same-octave . 0))
417 autoCautionaries = #'()
419 keyAccidentalOrder = #'(
420 (6 . -1) (2 . -1) (5 . -1 ) (1 . -1) (4 . -1) (0 . -1) (3 . -1)
421 (3 . 1) (0 . 1) (4 . 1) (1 . 1) (5 . 1) (2 . 1) (6 . 1)
422 (6 . -2) (2 . -2) (5 . -2 ) (1 . -2) (4 . -2) (0 . -2) (3 . -2)
423 (3 . 2) (0 . 2) (4 . 2) (2 . 2) (5 . 2) (2 . 2) (6 . 2)
425 breakAlignOrder = #'(
437 barCheckSynchronize = ##t
440 chordNameFunction = #ignatzek-chord-names
441 majorSevenSymbol = #whiteTriangleMarkup
442 chordNameSeparator = #(make-simple-markup "/")
443 chordNameExceptions = #ignatzekExceptions
444 chordNoteNamer = #'()
445 chordRootNamer = #note-name->markup
448 stringOneTopmost = ##t
451 %% One may change the strings tuning as following :
452 %% The lenght of the list must be equal to the number of string
454 stringTunings = #guitar-tunings
455 tablatureFormat = #fret-number-tablature-format
458 bassFigureFormatFunction = #make-bass-figure-markup
461 \grobdescriptions #all-grob-descriptions
464 OrchestralScoreContext= \translator {
467 EasyNotation = \translator {
469 NoteHead \override #'molecule-callback = #Note_head::brew_ez_molecule
472 % retain for compatibility reasons (FIXME: convert-ly)
473 GraceContext = \translator {
474 \type "Engraver_group_engraver"
477 FiguredBassContext = \translator {
478 \type "Engraver_group_engraver"
480 \consists "Figured_bass_engraver"
481 \consists "Rest_swallow_translator"
482 \consists "Note_swallow_translator"
483 \consists "Separating_line_group_engraver"
485 \consistsend "Hara_kiri_engraver"
488 TabVoiceContext = \translator {
492 \consists "Tab_note_heads_engraver"
494 Slur \override #'font-family = #'roman
495 Slur \override #'molecule-callback = #hammer-molecule-callback
496 Slur \override #'direction = #-1
498 % Draws all stems/beams out of the staff (and not in the middle of the staff !)
499 % This feature is now disabled because most of the tab does not use it.
500 %Beam \override #'damping = #100000
501 %Stem \override #'up-to-staff = ##t
503 % No accidental in tablature !
504 \remove Accidental_engraver
507 TabStaffContext = \translator {
515 StaffSymbol \override #'line-count = #6
516 StaffSymbol \override #'staff-space = #1.5
518 % Don't draw stems over the tablature figures !
519 Stem \override #'avoid-note-head = ##t
521 % No accidental in tablature !
522 \remove Accidental_engraver
526 clefGlyph = #"clefs-tab"