2 % setup for Request->Element conversion. Guru-only
5 StaffContext=\translator {
6 \type "Engraver_group_engraver";
11 \consists "Multi_measure_rest_engraver";
12 \consists "Repeat_engraver";
13 \consists "Bar_engraver";
14 \consists "Clef_engraver";
15 \consists "Key_engraver";
16 \consists "Time_signature_engraver";
17 \consists "Staff_symbol_engraver";
18 \consists "Collision_engraver";
19 \consists "Rest_collision_engraver";
20 \consistsend "Axis_group_engraver";
23 Uncomment to get bar numbers on single staff systems:
25 The Bar_number_engraver puts a number over a staff created
26 at the same level of hierarchy. This why you have to add it
27 here separately if you want to have numbers on single staff
28 systems: The Bar_number_engraver in Score_engraver will only
29 put numbers on bars that are Score ("system") wide. Such
30 bars are only created when the toplevel system has multiple
35 \consists "Bar_number_engraver";
39 The Staff_margin_engraver puts the name of the instrument
40 (\property Staff.instrument; Staff.instr for subsequent lines)
41 to the left of a staff.
44 \consists "Staff_margin_engraver";
48 marginBreakPriority = "-5";
51 \consists "Separating_line_group_engraver";
52 \consists "Font_size_engraver";
55 dynamicStyle = "dynamic";
58 \translator{\StaffContext }
60 \type "Engraver_group_engraver";
62 alignmentReference = \center;
63 \consists "Staff_group_bar_engraver";
67 \accepts "RhythmicStaff";
68 \accepts "GrandStaff";
69 \accepts "PianoStaff";
73 \accepts "ChordNames";
77 RhythmicStaffContext=\translator{
78 \type "Engraver_group_engraver";
79 numberOfStaffLines = "1";
80 \consists "Pitch_squash_engraver";
81 \consists "Separating_line_group_engraver";
84 \consists "Repeat_engraver";
85 \consists "Bar_engraver";
86 \consists "Time_signature_engraver";
87 \consists "Staff_symbol_engraver";
88 \consistsend "Axis_group_engraver";
91 \translator{\RhythmicStaffContext}
92 VoiceContext = \translator {
93 \type "Engraver_group_engraver";
94 \consists "Dynamic_engraver"; % must come before text_engraver.
97 \consists "Local_key_engraver";
99 \consists "Breathing_sign_engraver";
100 \consists "Rest_engraver";
101 \consists "Dot_column_engraver";
102 \consists "Stem_engraver";
103 \consists "Beam_engraver";
104 \consists "Auto_beam_engraver";
105 \include "auto-beam-settings.ly";
106 % \consists "Abbreviation_beam_engraver";
107 % \consists "Multi_measure_rest_engraver";
109 % ugh. Order matters here.
110 \consists "Text_engraver";
111 \consists "Script_engraver";
112 \consists "Script_column_engraver";
113 \consists "Rhythmic_column_engraver";
114 \consists "Font_size_engraver";
115 \consists "Slur_engraver";
116 \consists "Tie_engraver";
117 \consists "Tuplet_engraver";
118 \consists "Grace_position_engraver";
119 \consists "Skip_req_swallow_translator";
120 \accepts Thread; % bug if you leave out this!
124 GraceContext=\translator {
125 \type "Grace_engraver_group";
127 \consists "Note_heads_engraver";
128 \consists "Stem_engraver";
129 \consists "Slur_engraver";
130 \consists "Timing_engraver"; %UGH.
131 \consists "Beam_engraver";
132 \consists "Align_note_column_engraver";
133 \consists "Font_size_engraver";
134 \consists "Rhythmic_column_engraver";
138 verticalDirection = "1";
140 \translator{\GraceContext}
141 \translator {\VoiceContext}
143 ThreadContext = \translator{
144 \type Engraver_group_engraver;
145 \consists "Note_heads_engraver" ;
149 \translator{\ThreadContext}
150 GrandStaffContext=\translator{
151 \type "Engraver_group_engraver";
153 \consists "Span_bar_engraver";
154 \consists "Piano_bar_engraver";
160 \translator{\GrandStaffContext}
162 PianoStaffContext = \translator{\GrandStaffContext
163 alignmentReference = \center;
165 \consists "Vertical_align_engraver";
166 minVerticalAlign = 3.0*\staffheight;
167 maxVerticalAlign = 3.0*\staffheight;
169 % \consistsend "Axis_group_engraver";
173 \translator{\PianoStaffContext}
174 StaffGroupContext= \translator {
175 \type "Engraver_group_engraver";
176 \consists "Span_bar_engraver";
179 \consists "Staff_group_bar_engraver";
182 \accepts "RhythmicStaff";
183 \accepts "GrandStaff";
184 \accepts "PianoStaff";
187 \accepts "ChordNames";
189 \translator { \StaffGroupContext }
192 \type "Engraver_group_engraver";
193 \consistsend "Axis_group_engraver";
196 \consists "Separating_line_group_engraver";
197 \consists "Lyric_engraver";
198 \consists "Extender_engraver";
202 \type "Engraver_group_engraver";
204 \consists Vertical_align_engraver;%need this for getting folded repeats right.
206 \consistsend "Axis_group_engraver";
208 \accepts "LyricVoice";
212 \type "Engraver_group_engraver";
214 \consistsend "Axis_group_engraver";
215 \name ChordNameVoice ;
216 \consists "Separating_line_group_engraver";
217 \consists "Chord_name_engraver";
221 ChordNameContext = \translator {
222 \type "Engraver_group_engraver";
224 \accepts "ChordNameVoice";
225 \consistsend "Axis_group_engraver";
227 \translator { \ChordNameContext }
230 ScoreWithNumbers = \translator {
231 \type "Score_engraver";
233 % uncomment to bar numbers on a whole system.
234 \consists "Bar_number_engraver";
237 StupidScore = \translator {
238 \type "Score_engraver";
240 \consists "Note_heads_engraver";
245 BarNumberingStaffContext = \translator {
247 barColumnPriority = "0";
248 marginBreakPriority = "-4";
249 \consists "Mark_engraver";
250 \consists "Bar_number_engraver";
253 HaraKiriStaffContext = \translator {
255 \remove "Axis_group_engraver";
256 \consistsend "Hara_kiri_engraver";
260 OrchestralPartStaffContext = \translator {
262 barColumnPriority = "0";
263 marginBreakPriority = "-4";
264 \consists "Mark_engraver";
265 \consists "Bar_number_engraver";
268 ScoreContext = \translator {
269 \type Score_engraver;
272 \consists "Timing_engraver";
273 \consists "Span_score_bar_engraver";
274 \consists "Score_priority_engraver";
275 \consists "Spacing_engraver";
276 \consists "Vertical_align_engraver";
277 alignmentReference = \down;
278 defaultClef = treble;
281 \accepts "StaffGroup";
282 \accepts "RhythmicStaff";
284 \accepts "ChordNames";
285 \accepts "GrandStaff";
286 \accepts "ChoirStaff";
287 \accepts "PianoStaff";
290 \translator { \ScoreContext }
292 OrchestralScoreContext= \translator {
295 barScriptPadding = "2.0"; % dimension \pt
296 markScriptPadding = "4.0";
298 \consists "Bar_number_engraver";
299 \consists "Mark_engraver";
301 \accepts "HaraKiriStaff";