]> git.donarmstrong.com Git - lilypond.git/blob - input/tutorial/orchestral-score.ly
patch::: 1.3.127.jcn4
[lilypond.git] / input / tutorial / orchestral-score.ly
1 \version "1.3.120";
2
3 \include "paper16.ly";
4
5 % #(set! point-and-click #t)
6 #(define text-flat '((font-relative-size . -2) (music "accidentals--1")))
7
8
9 % Coriolan 218-222
10 flautoI = \notes\relative c'' {
11   \property Score.currentBarNumber = #218
12   des2.()c4|e(f e)f|\break
13   r2 des4\sf()c|r2 des4\sf()c|
14 }
15 flautoII = \notes\relative c'' {
16  g2.()as4|bes(as bes)as|
17  R1*2
18 }
19 oboeI = \notes\relative c'' {
20  e2.()f4|e(f e)f|
21  r2 as|r as\sf|
22 }
23 oboeII = \notes\relative c'' {
24  g2.()as4|bes(as bes)as|
25  r2 as'|r as\sf|
26 }
27 clarinettoI = \notes\relative c' {
28   es2.()d4|c(bis c)bes|
29 % r2 es4\sf()d|r2 es4\sf()d|
30 }
31 clarinettoII = \notes\relative c' {
32   es2.()d4|c(bes c)bes|
33 % r2 es'4\sf()d|r2 es4\sf()d|
34 }
35 fagottoI = \notes\relative c' {
36   bes2.()as4|g(f g)f|
37   r r8 des' des4\sf()es|r r8 des des4\sf()es|
38 }
39 fagottoII = \notes\relative c' {
40   bes2.()as4 | g(f g)f|
41   f4 r r2 | f4 r r2|
42 }
43 cornoI = \notes\relative c''' {
44   g2. f4|g f g f|
45 % r4 r8 f f2|r4 r8 f f2|
46 }
47 cornoII = \notes\relative c''' {
48   g,2. d'4|g, d' g, d'|
49   r4 r8 d d4\sf()es|r4 r8 d d4\sf()es|
50 }
51 tromboI = \notes\relative c'' {
52   c2. c4|c c c c|
53   R1*2|
54 }
55 tromboII = \notes\relative c' {
56   c2. c4|c c c c|
57   R1*2|
58 }
59 timpani = \notes\relative c {
60   c2:16 c4 c|c c c c |
61   R1*2|
62 }
63 violinoI = \notes\relative c' {
64  des'2:16\ff des4: c:|e,: f: e: f:|
65  r8 as des,4\sf~des()c |r8 as' des,4\sf~des()c|
66 }
67 violinoII = \notes\relative c' {
68   des2:16\ff des4: c: |  bes: as: bes: as:|
69 % r8 as des,4\sf ~ des()c| r8 as' des,4\sf ~ des()c|
70 }
71 violaI = \notes\relative c' {
72   e2:16\ff e4: f:|b,: c: b: c:|
73   r4 r8 as as2\sf|r4 r8 as as2\sf|
74 }
75 violaII = \notes\relative c' {
76   bes2:16\ff bes4: as:|g: f: g: f: |
77   r4 r8 f f4\sf()ges|r4 r8 f f4\sf()ges|
78 }
79 violoncello = \notes\relative c {
80   bes2.\ff()as4|g( f g )f |
81   r4 r8 f' f4\sf()ges |r4 r8 f f4\sf()ges |
82 }
83 contrabasso = \notes\relative c {
84   bes2.\ff()as4|g( f g )f|
85   f4 r r2 |f'4 r r2|
86 }
87
88
89
90 %%
91 %% Hmm, can't we move this to a `template.ly'
92 %%
93 \score {
94   < 
95     \context StaffGroup = wood <
96       \context Staff = flauti <
97         \property Staff.midiInstrument = #"flute"
98         \property Staff.instrument = "2 Flauti"
99         \property Staff.instr = "Fl."
100         \context Voice=one \partcombine Voice
101           \context Thread=one \flautoI
102           \context Thread=two \flautoII
103       >
104       \context Staff = oboes <
105         \property Staff.midiInstrument = #"oboe"
106         \property Staff.instrument = "2 Oboi"
107         \property Staff.instr = "Ob."
108         \context Voice=one \partcombine Voice
109           \context Thread=one \oboeI
110           \context Thread=two \oboeII
111       >
112       \context Staff = clarinets <
113         \property Staff.midiInstrument = #"clarinet"
114         \property Staff.instrument = #`((kern . 0.5)
115           (lines "2 Clarinetti" (rows "(B" ,text-flat ")")))
116         \property Staff.instr = #`((kern . 0.5)
117           (lines "Cl."  (rows "(B" ,text-flat ")")))
118         \property Staff.transposing = #-2
119         \notes \key f \major;
120         \context Voice=one \partcombine Voice
121           \context Thread=one \clarinettoI
122           \context Thread=two \clarinettoII
123       >
124       \context Staff = bassoons <
125         \property Staff.midiInstrument = #"bassoon"
126         \property Staff.instrument = "2 Fagotti"
127         \property Staff.instr = "Fg."
128         \clef bass;
129         \context Voice=one \partcombine Voice
130           \context Thread=one \fagottoI
131           \context Thread=two \fagottoII
132       >
133     >
134     \context StaffGroup = brass <
135       \context Staff = frenshHorns <
136         \property Staff.midiInstrument = #"french horn"
137         \property Staff.instrument = #`((kern . 0.5)
138           (lines "2 Corni" (rows "(E" ,text-flat ")")))
139         \property Staff.instr = #`((kern . 0.5)
140           (lines "Cor."  (rows "(E" ,text-flat ")")))
141         \property Staff.transposing = #3
142         \notes \key c \major;
143         \context Voice=one \partcombine Voice
144           \context Thread=one \cornoI
145           \context Thread=two \cornoII
146       >
147       \context Staff = trumpets <
148         \property Staff.midiInstrument = #"clarinet"
149         \property Staff.instrument = #`((kern . 0.5)
150           (lines "2 Trombe" (rows "(C)")))
151         \property Staff.instr = #`((kern . 0.5)
152           (lines "Tbe." (rows "(C)")))
153         \context Voice=one \partcombine Voice
154           \context Thread=one \tromboI
155           \context Thread=two \tromboII
156       >
157     >
158     \context StaffGroup = timpani <
159       \context Staff = timpani <
160         \property Staff.midiInstrument = #"timpani"
161         \property Staff.instrument = #'((kern . 0.5)
162           (lines "2 Timpani" "(C-G)"))
163         \property Staff.instr = #"Timp."
164         \clef bass;
165         \timpani
166       >
167     >
168     \context StaffGroup = strings <
169       \context GrandStaff = violins <
170         \context Staff = viI <
171           \property Staff.midiInstrument = #"violin"
172           \property Staff.instrument = "Violino I"
173           \property Staff.instr = "Vi. I"
174           \violinoI       
175         >
176         \context Staff = viII <
177           \property Staff.midiInstrument = #"violin"
178           \property Staff.instrument = "Violino II"
179           \property Staff.instr = "Vi. II"
180           \violinoII
181         >
182       >
183       \context Staff = vla <
184         \property Staff.midiInstrument = #"viola"
185         \property Staff.instrument = "Viola"
186         \property Staff.instr = "Vla."
187         \clef alto;
188         \context Voice=one \partcombine Voice
189           \context Thread=one \violaI
190           \context Thread=two \violaII
191       >
192       \context GrandStaff=bass <
193         \property GrandStaff.soloADue = ##t
194         \property GrandStaff.soloText = #""
195         \property GrandStaff.soloIIText = #""
196         % This is non-conventional, but currently it is
197         % the only way to tell the difference.
198         \property GrandStaff.aDueText = #"\\`a2"
199         \property GrandStaff.splitInterval = #'(1 . 0)
200         \property GrandStaff.changeMoment =
201           #`(,(make-moment 1 1) . ,(make-moment 1 1))
202
203         \context Staff=one <
204           \property Staff.midiInstrument = #"cello"
205           \property Staff.instrument = #'((kern . 0.5)
206             (lines "Violoncello" (rows "    e") (rows "Contrabasso")))
207           \property Staff.instr = "Vc."
208           \clef bass;
209         >
210         \context Staff=two <
211           \property Staff.midiInstrument = #"contrabass"
212           \property Staff.instrument = "Contrabasso"
213           \property Staff.instr = "C.B."
214           \clef bass;
215           \skip 1*4; % sustain clef
216         >
217         \context Staff=one \partcombine Staff
218           \context Voice=one \violoncello
219           \context Voice=two \contrabasso
220       >
221     >
222   >
223   \paper {
224     \paperSixteen
225     linewidth = 80 * \staffspace;
226     textheight = 200 * \staffspace;
227     \translator{
228       \ThreadContext
229       \consists "Rest_engraver";
230     }
231     \translator{
232       \VoiceContext
233       \remove "Rest_engraver";    
234       soloText = #"I."
235       soloIIText = #"II."
236       soloADue = ##f
237       % We must override the settings for Staff level
238       % with the default values, here.
239       aDueText = #"\\`a2"
240       splitInterval = #'(0 . 1)
241       changeMoment = #`(,(make-moment 0 0) . ,(make-moment 1 512))
242     }
243     \translator{
244       \HaraKiriStaffContext
245       \consists "Mark_engraver";
246       soloADue = ##t
247       soloText = #""
248       soloIIText = #""
249       % This is non-conventional, but currently it is
250       % the only way to tell the difference.
251       aDueText = #"\\`a2"
252       splitInterval = #'(1 . 0)
253       changeMoment = #`(,(make-moment 1 1) . ,(make-moment 1 1))
254     }
255     \translator {
256       \OrchestralScoreContext
257       skipBars = ##t
258       % Hmm
259       currentBarNumber = #218
260       BarNumber \override #'padding = #3
261       RestCollision \override #'maximum-rest-count = #1
262       marginScriptHorizontalAlignment = #1
263       TimeSignature \override #'style = #'C
264     }
265     \translator { \HaraKiriStaffContext }
266   }
267 }
268