2 % setup for Request->Element conversion. Guru-only
5 StaffContext=\translator {
6 \type "Line_group_engraver_group";
12 The Hara_kiri_line_group_engraver is a Line_group_engraver
13 that will not typeset an empty line of staff, i.e., a line
14 of staff with only rests in it. This is needed for orchestral
15 scores. Comment-out Line_group_engraver_group, and uncomment
16 Hara_kiri_line_group_engraver.
18 % \type "Hara_kiri_line_group_engraver";
20 \consists "Multi_measure_rest_engraver";
21 \consists "Repeat_engraver";
22 \consists "Bar_engraver";
23 \consists "Clef_engraver";
24 \consists "Key_engraver";
25 \consists "Local_key_engraver";
26 \consists "Time_signature_engraver";
27 \consists "Staff_symbol_engraver";
28 \consists "Collision_engraver";
29 \consists "Rest_collision_engraver";
32 Uncomment to get bar numbers on single staff systems:
34 The Bar_number_engraver puts a number over a staff created
35 at the same level of hierarchy. This why you have to add it
36 here separately if you want to have numbers on single staff
37 systems: The Bar_number_engraver in Score_engraver will only
38 put numbers on bars that are Score ("system") wide. Such
39 bars are only created when the toplevel system has multiple
44 \consists "Bar_number_engraver";
47 The Staff_margin_engraver puts the name of the instrument
48 (\property Staff.instrument; Staff.instr for subsequent lines)
49 to the left of a staff.
53 marginBreakPriority = "-5";
56 \consists "Staff_margin_engraver";
58 \consists "Separating_line_group_engraver";
61 dynamicStyle = "dynamic";
64 \translator{\StaffContext }
66 \type "Line_group_engraver_group";
68 \consists "Vertical_align_engraver";
69 alignmentReference = \center;
70 \consists "Staff_group_bar_engraver";
72 \accepts "RhythmicStaff";
73 \accepts "GrandStaff";
74 \accepts "PianoStaff";
77 \accepts "ChordNames";
81 RhythmicStaffContext=\translator{
82 \type "Line_group_engraver_group";
83 numberOfStaffLines = "1";
84 \consists "Pitch_squash_engraver";
85 \consists "Separating_line_group_engraver";
88 \consists "Repeat_engraver";
89 \consists "Bar_engraver";
90 \consists "Time_signature_engraver";
91 \consists "Staff_symbol_engraver";
94 \translator{\RhythmicStaffContext}
95 VoiceContext = \translator {
96 \type "Engraver_group_engraver";
97 \consists "Dynamic_engraver";
101 \consists "Rest_engraver";
102 \consists "Dot_column_engraver";
103 \consists "Stem_engraver";
104 \consists "Beam_engraver";
105 \consists "Auto_beam_engraver";
106 \include "auto-beam-settings.ly";
107 \consists "Abbreviation_beam_engraver";
108 % \consists "Multi_measure_rest_engraver";
110 % ugh. Order matters here.
111 \consists "Text_engraver";
112 % \consists "Script_engraver";
113 \consists "G_script_engraver";
114 \consists "Rhythmic_column_engraver";
115 \consists "Font_size_engraver";
116 \consists "Slur_engraver";
117 \consists "Tie_engraver";
118 \consists "Tuplet_engraver";
119 \consists "Note_heads_engraver" ;
120 \consists "Skip_req_swallow_translator";
123 \translator {\VoiceContext}
125 GrandStaffContext=\translator{
126 \type "Line_group_engraver_group";
128 \consists "Span_bar_engraver";
129 \consists "Vertical_align_engraver";
130 \consists "Piano_bar_engraver";
131 alignmentReference = \center;
132 minVerticalAlign = 1.5*\staffheight;
136 \translator{\GrandStaffContext}
137 \translator{\GrandStaffContext
138 minVerticalAlign = 3.0*\staffheight;
139 maxVerticalAlign = 3.0*\staffheight;
145 StaffGroupContext= \translator {
146 % \type "Hara_kiri_line_group_engraver";
147 % \type "Line_group_engraver_group";
148 \type "Engraver_group_engraver";
149 \consists "Span_bar_engraver";
150 \consists "Vertical_align_engraver";
151 alignmentReference = \center;
153 \consists "Staff_group_bar_engraver";
156 \accepts "RhythmicStaff";
157 \accepts "GrandStaff";
158 \accepts "PianoStaff";
161 \accepts "ChordNames";
163 \translator { \StaffGroupContext }
166 \type "Line_group_engraver_group";
169 \consists "Separating_line_group_engraver";
170 \consists "Lyric_engraver";
171 \consists "Extender_engraver";
172 \consists "Beam_req_swallow_translator";
176 \type "Line_group_engraver_group";
178 \consists "Vertical_align_engraver";
179 \accepts "LyricVoice";
183 \type "Line_group_engraver_group";
185 \name ChordNameVoice ;
186 \consists "Separating_line_group_engraver";
187 \consists "Chord_name_engraver";
191 ChordNameContext = \translator {
192 \type "Line_group_engraver_group";
194 \consists "Vertical_align_engraver";
195 \accepts "ChordNameVoice";
197 \translator { \ChordNameContext }
200 ScoreWithNumbers = \translator {
201 \type "Score_engraver";
203 % uncomment to bar numbers on a whole system.
204 \consists "Bar_number_engraver";
208 StupidScore = \translator {
209 \type "Score_engraver";
211 \consists "Note_heads_engraver";
216 BarNumberingStaffContext = \translator {
218 barColumnPriority = "0";
219 marginBreakPriority = "-4";
220 \consists "Mark_engraver";
221 \consists "Bar_number_engraver";
225 HaraKiriStaffContext = \translator {
226 \type "Hara_kiri_line_group_engraver";
228 barColumnPriority = "0";
229 marginBreakPriority = "-4";
231 \consists "Repeat_engraver";
232 \consists "Bar_engraver";
233 \consists "Clef_engraver";
234 \consists "Key_engraver";
235 \consists "Time_signature_engraver";
236 \consists "Local_key_engraver";
237 \consists "Staff_symbol_engraver";
238 \consists "Collision_engraver";
239 \consists "Rest_collision_engraver";
240 \consists "Staff_margin_engraver";
241 \consists "Separating_line_group_engraver";
246 OrchestralPartStaffContext = \translator {
248 barColumnPriority = "0";
249 marginBreakPriority = "-4";
250 \consists "Mark_engraver";
251 \consists "Bar_number_engraver";
255 ScoreContext = \translator {
256 \type Score_engraver;
259 \consists "Timing_engraver";
261 \consists "Span_score_bar_engraver";
262 \consists "Score_priority_engraver";
263 \consists "Vertical_align_engraver";
264 alignmentReference = \down;
265 defaultClef = treble;
268 \accepts "StaffGroup";
269 \accepts "RhythmicStaff";
271 \accepts "ChordNames";
272 \accepts "GrandStaff";
273 \accepts "ChoirStaff";
274 \accepts "PianoStaff";
277 \translator { \ScoreContext }
279 OrchestralScoreContext= \translator {
282 barScriptPadding = "2.0"; % dimension \pt
283 markScriptPadding = "4.0";
287 \consists "Bar_number_engraver";
288 \consists "Mark_engraver";
290 \accepts "HaraKiriStaff";