]> git.donarmstrong.com Git - lilypond.git/blob - init/engraver.ly
release: 0.1.65
[lilypond.git] / init / engraver.ly
1 %
2 % setup for Request->Element conversion. Guru-only
3 %
4
5 Staff = \translator {
6         \type "Engraver_group_engraver";
7         defaultclef = violin;
8
9         \consists "Bar_engraver";
10         \consists "Clef_engraver";
11         \consists "Key_engraver";
12         \consists "Meter_engraver";
13         \consists "Local_key_engraver";
14         \consists "Staff_sym_engraver";
15         \consists "Collision_engraver";
16         \consists "Rest_collision_engraver";
17 %{
18         Uncomment to get bar numbers on single staff systems:
19         
20         The Bar_number_engraver puts a number over a staff created
21         at the same level of hierarchy.  This why you have to add it
22         here separately if you want to have numbers on single staff
23         systems: The Bar_number_engraver in Score_engraver will only
24         put numbers on bars that are Score ("system") wide.  Such
25         bars are only created when the toplevel system has multiple
26         children-staffs.
27
28 %}
29 %{
30         \consists "Bar_column_engraver";
31         \consists "Bar_number_engraver";
32 %}
33         \consists "Separating_line_group_engraver";
34         \consists "Line_group_engraver";
35 %       \consists "Hara_kiri_line_group_engraver";
36           
37         \accepts "Voice";
38 }
39
40 Rhythmic_staff = \translator
41 {
42         \type "Engraver_group_engraver";
43         nolines  = "1";
44         \consists "Pitch_squash_engraver";
45
46         \consists "Bar_engraver";
47         \consists "Meter_engraver";
48         \consists "Staff_sym_engraver";
49         \consists "Line_group_engraver";
50         \accepts "Voice";
51 }
52
53 Voice = \translator {
54         \type "Engraver_group_engraver";
55         \consists "Dynamic_engraver";
56         \consists "Rest_engraver";
57         \consists "Stem_engraver";
58         \consists "Plet_engraver";
59         \consists "Beam_engraver";
60         \consists "Abbreviation_beam_engraver";
61         \consists "Multi_measure_rest_engraver";
62         \consists "Script_engraver";
63         \consists "Rhythmic_column_engraver";
64         \consists "Slur_engraver";
65         \accepts "Thread";
66 }
67
68 Thread = \translator {
69         \type "Engraver_group_engraver";
70         \consists "Skip_req_swallow_translator";
71         \consists "Note_head_engraver" ;
72         \consists "Tie_engraver";
73 }
74
75 Grand_staff = \translator {
76         \type "Engraver_group_engraver";
77
78         \consists "Span_bar_engraver";
79         \consists "Vertical_align_engraver";
80         \consists "Piano_bar_engraver";
81
82         % This should come last
83         \consists "Line_group_engraver";
84         \accepts "Staff";
85 }
86
87 Staff_group = \translator {
88         \type "Engraver_group_engraver";
89         \consists "Span_bar_engraver";
90         \consists "Vertical_align_engraver";
91         \consists "Staff_group_bar_engraver";
92         \consists "Line_group_engraver";
93 %       \consists "Hara_kiri_line_group_engraver";
94         \accepts "Staff";
95         \accepts "Rhythmic_staff";
96         \accepts "Grand_staff";
97         \accepts "Lyrics";
98 }
99
100 Lyric_voice = 
101 \translator{
102         \type "Engraver_group_engraver";
103
104         \consists "Separating_line_group_engraver";
105         \consists "Lyric_engraver";
106         \consists "Line_group_engraver";
107         \consists "Beam_req_swallow_translator";
108         \consists "Plet_swallow_engraver";
109 }
110
111 Lyrics = \translator {
112         \type "Engraver_group_engraver";
113         \consists "Vertical_align_engraver";
114         \consists "Line_group_engraver";
115         \accepts "Lyric_voice";
116 }
117
118 Score = \translator {
119         \type Score_engraver;
120
121         \consists "Timing_engraver";
122         % uncomment to bar numbers on a whole system.
123 %{
124         \consists "Bar_column_engraver";
125         \consists "Bar_number_engraver";
126 %}
127         \consists "Span_score_bar_engraver";
128         \consists "Score_priority_engraver";
129         \consists "Priority_horizontal_align_engraver";
130         \consists "Vertical_align_engraver";
131
132
133         \accepts "Staff_group";
134         \accepts "Staff";
135         \accepts "Rhythmic_staff";      
136         \accepts "Lyrics";
137         \accepts "Grand_staff";
138 }
139
140 Stupid_score = \translator {
141         \type Score_engraver;
142         \consists "Staff_sym_engraver";
143 }
144
145
146