]> git.donarmstrong.com Git - lilypond.git/blob - input/toccata-fuga-E.ly
release: 0.0.59
[lilypond.git] / input / toccata-fuga-E.ly
1 % toccata-fuga-E.ly
2
3 % toccata and fuga in E-major
4 % Johann Sebastian Bach (1685-1750)
5 % bwv 566
6 %
7 % toccata: 3 bar excerpt
8 % 2nd fuga: transposed subject --- 4 bar except
9 %
10 % purpose of this file is testing: 
11 %     * real-life collisions
12 %     * multi-voice input --- splitting?
13 %     * organ staff...
14 %
15
16 \version "0.0.57";
17
18 toccata_commands = \melodic{
19         \meter 4/4;
20         \key fis cis gis dis; % E-major
21 }
22
23 %toccata_right = \melodic \$toccata_commands { 
24 toccata_right = \melodic{ 
25         \$toccata_commands ++
26         % 13 -- how to type -- where to split -- this more neatly ?
27         \octave c';
28         <\multivoice 
29                 { \stem 1; \hshift 1; r4 dis'4 e'4.-. e'8~  e'4 [d'8 fis'8] gis'4 [gis'8 fis'16 e'16] | fis'4~  [fis'8 e'16 dis'16] e'4 r8 e'8 }
30                 { \stem 1; r4 bis4 cis'4-. cis'4 | ais'4~  [ais'16 gis'16 ais'16 b'16] dis'4 cis'4~  [cis'8 dis'16 ais16] bis4 cis'4 r8 b8 }
31                 { \stem -1; r4 < gis4 fis4 dis4 > gis4-. gis4 | ais4. cis'8 gis2 | fis4 gis4 gis4 r8 e8 }
32         > |
33         % 16
34 }
35
36 toccata_left = \melodic{ 
37         \$toccata_commands ++
38         \octave c;
39         \clef bass;
40         % 13
41         <\multivoice
42                 { \stem 1; bis2 cis'4-. cis'4~  [cis'8 ais'8 d'8 cis'8] [bis8 gis8] cis'4 | dis'2 cis'4 r8 cis'8 }
43                 { \stem 1; \hshift 1; r4 gis4. gis8~  gis4 | \stem -1; \hshift 0; ais4. fis8 gis4. ais8~  ais4 gis4-. gis4 r8 gis8 }
44                 { \stem -1; r4 < dis4 fis4 > < cis4 e4 > }
45         > |
46         % 16
47 }
48
49 toccata_pedal = \melodic{
50         \$toccata_commands ++
51         \octave c;
52         \clef bass;
53         % 13
54         r4 'fis4-\ltoe 'e4.-\lheel e8-\rheel | 
55         % 14
56         fis4.-\rtoe fis8-.-\rtoe fis4-\rtoe [e8-\ltoe ais8-\rtoe] | 
57         % 15
58         dis4-\ltoe gis4-\rtoe [cis8-\ltoe 'b8-\lheel 'ais8-\rtoe 'gis8-\ltoe] |
59         % 16
60 }
61
62 fuga2_commands = \melodic{
63         \meter 3/4;
64         \key fis cis gis dis; % E-major
65 }
66
67 fuga2_right = \melodic{
68         \$fuga2_commands ++
69         % 15
70         \octave c';
71         <\multivoice
72                 { \stem 1; b8 fis8 b4 }
73                 { \stem -1; fis2 }
74         >
75         <% \multivoice % heu?
76                 { e'4 }
77                 { cis'4 }
78                 { ais4 }
79                 { fis4 }
80         > |
81         % 16
82         <\multivoice
83                 { \stem 1; dis'2 dis'4 | cis'2 cis'4 | b4~  [b8 cis'8 dis'8 e'8] }
84                 { \stem 1; \hshift 1; b8 fis8 b2~  [b8 a16 g16] a2 | a4 gis2 }
85                 { \stem -1; fis2.~  fis2.~  fis4 e2 }
86         > |
87         % 19
88 }
89
90 fuga2_left = \melodic{
91         \$fuga2_commands ++
92         \octave c;
93         \clef bass;
94         % 15
95         b2 
96         <\multivoice 
97                 { \stem 1; ais4 | bes2. }
98                 { \stem -1; e4  | fis2 fis4 }
99         >
100         % 17
101         cis'2 e'4 |
102         % 18
103         b4. b8 b4 |
104 }
105
106 fuga2_pedal = \melodic{
107         \$fuga2_commands ++
108         \octave c;
109         \clef bass;
110         % 15
111         dis4.-\ltoe e8-\rtoe cis4 |
112         % 16
113         'b4.-\lheel [c8-\ltoe dis8-\rtoe e8-\rheel] |
114         % 17
115         fis4.-\rtoe [e8-\rheel dis8-\rtoe cis8-\ltoe] |
116         % 18
117         dis4-\rtoe e4-\rheel 'e4-\ltoe |
118 }
119
120 break = \melodic{ \meter 4/4; r1 }
121
122 % these should be two separate scores...
123 \score{
124         \staff{ melodicregs 
125                 % why the extra "\melodic" (silly)
126                 % let "[ x ]" be "dimension of x":
127                 %     [ melodic ++ melodic ] == [ simple-mudela ]
128                 %     [ \melodic{ melodic ++ melodic } ] == [ melodic ]
129                 % ?
130                 \melodic{ 
131                         \$toccata_right ++ \break ++ \$fuga2_right 
132                 }
133         }
134         \staff{ melodicregs 
135                 \melodic{ 
136                         \$toccata_left ++ \break ++ \$fuga2_left 
137                 }
138         }
139         \staff{ melodicregs 
140                 \melodic{ 
141                         \$toccata_pedal 
142                         ++ \break 
143                         ++ \$fuga2_pedal 
144                 }
145         }
146         \paper{}
147         \midi{
148                 \tempo 4:96
149         }
150 }
151