]> git.donarmstrong.com Git - lilypond.git/blob - input/template/jazz-combo.ly
Massive changes - see ChangeLog.
[lilypond.git] / input / template / jazz-combo.ly
1 #(ly:set-option 'old-relative)
2 \version "1.9.0"
3 \header {
4         title = "Song"
5         subtitle = "(tune)"
6         composer = "Me"
7         meter = "moderato"
8         piece = "Swing"
9         tagline = "LilyPond example file by Amelie Zapf, Berlin 07/07/2003"
10         texidoc = "Jazz tune for combo (horns, piano, drums, bass, guitar)."
11 }
12
13 \include "paper16.ly"
14 \include "english.ly"
15
16 %%%%%%%%%%%% Some macros %%%%%%%%%%%%%%%%%%%
17
18 sl = {
19           \property Voice.NoteHead \override #'style = #'slash
20           \property Voice.Stem \override #'length = #0 }
21 nsl = {
22          \property Voice.NoteHead \revert #'style
23          \property Voice.Stem \revert #'length }
24 cr = \property Voice.NoteHead \override #'style = #'cross
25 ncr = \property Voice.NoteHead \revert #'style
26
27 %% insert chord name style stuff here.
28
29 jzchords = { } 
30
31 %%%%%%%%%%%% Keys'n'thangs %%%%%%%%%%%%%%%%%
32
33 global = \notes {
34         \time 4/4
35 }
36
37 Key = \notes \key c \major
38
39 % ############ Horns ############
40 % ------ Trumpet ------
41 trpt = \notes \transpose c d \relative c'' {
42         \Key
43         c1 c c
44 }
45
46 trpharmony = \chords \transpose c' d { \jzchords }
47 trumpet = {
48         \global 
49         \property Staff.instrument = #"Trumpet"
50         \clef treble
51         \context Staff <
52                 \trpt
53         >
54 }
55
56 % ------ Alto Saxophone ------
57 alto = \notes \transpose c a \relative c' {
58         \Key
59         c1 c c
60 }
61
62 altoharmony = \chords \transpose c' a { \jzchords }
63 altosax = {
64         \global
65         \property Staff.instrument = #"Alto Sax"
66         \clef treble
67         \context Staff <
68                 \alto
69         >
70 }
71
72 % ------ Baritone Saxophone ------
73 bari = \notes \transpose c a' \relative c {
74         \Key
75         c1 c \sl d4^"Solo" d d d \nsl
76 }
77
78 bariharmony = \chords \transpose c' a { \jzchords s1 s d2:maj e:m7 }
79 barisax = {
80         \global
81         \property Staff.instrument = #"Bari Sax"
82         \clef treble
83         \context Staff <
84                 \bari
85         >
86 }
87 % ------ Trombone ------
88 tbone = \notes \relative c {
89         \Key
90         c1 c c
91 }
92
93 tboneharmony = \chords { \jzchords }
94 trombone = {
95         \global
96         \property Staff.instrument = #"Trombone"
97         \clef bass
98         \context Staff <
99                 \tbone
100         >
101 }
102 % ############ Rhythm Section #############
103 % ------ Guitar ------
104 gtr = \notes \relative c'' {
105         \Key
106         c1 \sl b4 b b b \nsl c1
107 }
108
109 gtrharmony = \chords { \jzchords
110         s1 c2:min7+ d2:maj9
111 }
112
113 guitar = {
114         \global
115         \property Staff.instrument = #"Guitar"
116         \clef treble
117         \context Staff <
118                 \gtr
119         >
120 }
121
122 %% ------ Piano ------
123 rhUpper = \notes \relative c'' {
124         \voiceOne
125         \Key
126         c1 c c
127 }
128
129 rhLower = \notes \relative c' {
130         \voiceTwo
131         \Key
132         e1 e e
133 }
134
135 lhUpper = \notes \relative c' {
136         \voiceOne
137         \Key
138         g1 g g
139 }
140
141 lhLower = \notes \relative c {
142         \voiceTwo
143         \Key
144         c1 c c
145 }
146
147 PianoRH = {
148         \clef treble
149         \global
150         \property Staff.midiInstrument = "acoustic grand"
151         \context Staff <
152                 \context Voice = one \rhUpper
153                 \context Voice = two \rhLower
154         >
155 }
156
157 PianoLH = {
158         \clef bass
159         \global
160         \property Staff.midiInstrument = "acoustic grand"
161         \context Staff <
162                 \context Voice = one \lhUpper
163                 \context Voice = two \lhLower
164         >
165 }
166
167 piano = {
168         \context PianoStaff <
169                 \property PianoStaff.instrument = #"Piano"
170                 \context Staff = upper \PianoRH
171                 \context Staff = lower \PianoLH
172         >
173 }
174
175 % ------ Bass Guitar ------
176 bass = \notes \relative c {
177         \Key
178         c1 c c
179 }
180
181 bass = {
182         \global
183         \property Staff.instrument = #"Bass"
184         \clef bass
185         \context Staff <
186                 \bass
187         >
188 }
189
190 % ------ Drums ------
191 \include "drumpitch-init.ly"
192 up = \notes {
193         hh4 <hh4 sn> hh4 <hh4 sn> hh4 <hh4 sn> hh4 <hh4 sn>
194         hh4 <hh4 sn> hh4 <hh4 sn>
195 }
196 down = \notes {
197         bd4 s bd s bd s bd s bd s bd s
198 }
199
200 drums = \context Staff = drums {
201         \global
202         \property Staff.instrument = #"Drums"
203         \clef percussion
204         <
205                 \context Voice = first { \voiceOne \up }
206                 \context Voice = second { \voiceTwo \down }
207         >
208 }
209
210 %%%%%%%%% It All Goes Together Here %%%%%%%%%%%%%%%%%%%%%%
211
212 \score {
213 <
214         \context StaffGroup = horns <
215                 \context Staff = trumpet \trumpet
216
217                 \context Staff = altosax \altosax
218
219                 \context ChordNames = barichords \bariharmony
220
221                 \context Staff = barisax \barisax
222
223                 \context Staff = trombone \trombone
224         >
225
226         \context StaffGroup = rhythm <
227                 \context ChordNames = chords \gtrharmony
228                 \context Staff = guitar \guitar
229                 \context PianoStaff = piano \piano
230                 
231                 \context Staff = bass \bass
232                 
233                 \apply #(drums->paper 'drums) \drums
234         >
235 >
236         \midi { \tempo 4 = 75 }
237         \paper {
238                 linewidth = 15.0 \cm
239                 \translator { \RemoveEmptyStaffContext }
240                 \translator {
241                         \StaffContext
242                         \consists Instrument_name_engraver
243                 }
244                 \translator {
245                         \ScoreContext
246                         BarNumber \override #'padding = #3
247                         RehearsalMark \override #'padding = #2
248                         skipBars = ##t
249                 }
250         }
251 }
252