]> git.donarmstrong.com Git - lilypond.git/blob - input/test/part-combine-score.ly
patch::: 1.3.118.jcn1
[lilypond.git] / input / test / part-combine-score.ly
1 \score{
2         <
3         \context VoiceCombineStaff = flauti <
4                 \time 4/4;
5
6                 \context VoiceCombineThread=one \skip 1*9;
7                 \context VoiceCombineThread=two \skip 1*9;
8
9                 \context VoiceCombineVoice=one \partcombine VoiceCombineVoice
10                         \context VoiceCombineThread=one \notes\relative c''
11                                 {
12                                         c4 d e f
13                                         b,4 d c d
14                                         r2 e4 f
15                                         \break
16                                         c4 d e f
17                                         c4 r e f
18                                         c4 r e f
19                                         \break
20                                         c4 r a r
21                                         a a r a
22                                         a2 \property VoiceCombineThread.soloADue = ##f a
23                                 }
24                         \context VoiceCombineThread=two \notes\relative c''
25                                 {
26                                         g4 b d f
27                                         r2 c4 d
28                                         a c c d
29                                         a4. b8 c4 d
30                                         c r e r
31                                         r2 s2
32                                         a,4 r a r
33                                         a r r a
34                                         a2 \property VoiceCombineThread.soloADue = ##f a
35                                 }
36                 >
37         \context PianoStaff = violi <
38                 \context StaffCombineStaff=oneVioli { \clef alto; \skip 1*9;}
39                 \context StaffCombineStaff=twoVioli { \clef alto; \skip 1*9;}
40                 \context StaffCombineStaff=oneVioli \partcombine StaffCombineStaff
41                         \context StaffCombineVoice=one \notes\relative c'
42                                 {
43                                         c4 d e f
44                                         c d e f
45                                         c d e f
46                                         c d e f
47                                         c d e f
48                                         c d e f
49                                         c4 d e f
50                                         a8 a a a b b b b
51                                         d1
52                                 }
53                         \context StaffCombineVoice=two \notes\relative c'
54                                 {
55                                         c4 d e f
56                                         c d e f
57                                         c d e f
58                                         c2 e2
59                                         c4 d e f
60                                         c2 e2
61                                         c,4 d e f
62                                         a8 a a a b b b b
63                                         b1
64                                 }
65                 >
66         \context PianoStaff = lower <
67                 \context StaffCombineStaff=oneBassi { \clef bass; \skip 1*9;}
68                 \context StaffCombineStaff=twoBassi { \clef bass; \skip 1*9;}
69                 \context StaffCombineStaff=oneBassi \partcombine StaffCombineStaff
70                         \context StaffCombineVoice=oneB \notes\relative c
71                                 {
72                                         \clef bass;
73                                         c1
74                                         d
75                                         e
76                                         f
77                                         c
78                                         d
79                                         e
80                                         f
81                                         c
82                                 }
83                         \context StaffCombineVoice=twoB \notes\relative c
84                                 {
85                                         \clef bass;
86                                         c1
87                                         d4 e d e
88                                         e1
89                                         f4 g f g
90                                         c1
91                                         d4 e d e
92                                         e
93                                         f4 g f g
94                                         c1
95                                 }
96                 >
97         >
98         \paper {
99
100                 textheight = 295.0\mm;
101                 linewidth = 180.0\mm;
102
103                 \translator{ \HaraKiriStaffContext }
104                 %
105                 % The Voice combine hierarchy
106                 %
107                 \translator{
108                         \ThreadContext
109                         \name "VoiceCombineThread";
110                         \consists "Rest_engraver";
111                 }
112                 \translator{
113                         \VoiceContext
114                         \name "VoiceCombineVoice";
115                         soloText = #"I."
116                         soloIIText = #"II."
117                         \remove "Rest_engraver";
118                         \accepts "VoiceCombineThread";
119                 }
120                 \translator{
121                         \HaraKiriStaffContext
122                         \consists "Mark_engraver";
123                         \name "VoiceCombineStaff";
124                         \accepts "VoiceCombineVoice";
125                 }
126
127                 %
128                 % The Staff combine hierarchy
129                 %
130                 \translator{
131                         \ThreadContext
132                         \name "StaffCombineThread";
133                 }
134                 \translator{
135                         \VoiceContext
136                         \name "StaffCombineVoice";
137                         \accepts "StaffCombineThread";
138                         \consists "Thread_devnull_engraver";
139                 }
140                 \translator {
141                         \HaraKiriStaffContext
142                         \name "StaffCombineStaff";
143                         \accepts "StaffCombineVoice";
144
145                         soloADue = ##t
146                         soloText = #""
147                         soloIIText = #""
148                         aDueText = #""
149                         splitInterval = #'(1 . 0)
150                 }
151                 \translator {
152                         \StaffGroupContext
153                         \accepts "VoiceCombineStaff";
154                         \accepts "StaffCombineStaff";
155                 }
156                 \translator{ \HaraKiriStaffContext }
157
158                 \translator {
159                         \ScoreContext
160                         \accepts "VoiceCombineStaff";
161                         \accepts "StaffCombineStaff";
162                         skipBars = ##t 
163
164                         barScriptPadding = #2.0 % dimension \pt
165                         markScriptPadding = #4.0
166
167                         %% urg: in pt?
168                         barNumberScriptPadding = #15
169                         %% URG: this changes dynamics too
170                         %%textStyle = #"italic"
171                         timeSignatureStyle = #"C"
172                         maximumRestCount = #1
173                 }
174         }
175         \midi{ 
176                 \tempo 4 = 150; 
177
178                 \translator {
179                         \ThreadContext
180                         \name "VoiceCombineThread";
181                 }
182                 \translator {
183                         \VoiceContext
184                         \name "VoiceCombineVoice";
185                         \accepts "VoiceCombineThread";
186                 }
187                 \translator {
188                         \StaffContext
189                         \name "VoiceCombineStaff";
190                         \accepts "VoiceCombineVoice";
191                 }
192
193                 \translator {
194                         \ThreadContext
195                         \name "StaffCombineThread";
196                 }
197                 \translator {
198                         \VoiceContext
199                         \name "StaffCombineVoice";
200                         \accepts "StaffCombineThread";
201                 }
202                 \translator {
203                         \StaffContext
204                         \name "StaffCombineStaff";
205                         \accepts "StaffCombineVoice";
206                 }
207                 \translator {
208                         \ScoreContext
209                         \accepts "VoiceCombineStaff";
210                         \accepts "StaffCombineStaff";
211                 }
212         }
213 }