3 % toccata and fuga in E-major
4 % Johann Sebastian Bach (1685-1750)
7 % toccata: 3 bar excerpt
8 % 2nd fuga: transposed subject --- 4 bar except
10 % purpose of this file is testing:
11 % * real-life collisions
12 % * multi-voice input --- splitting?
18 toccata_commands = \melodic{
20 \key fis cis gis dis; % E-major
23 %toccata_right = \melodic \$toccata_commands {
24 toccata_right = \melodic{
26 % 13 -- how to type -- where to split -- this more neatly ?
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 }
36 toccata_left = \melodic{
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 > }
49 toccata_pedal = \melodic{
54 r4 'fis4-\ltoe 'e4.-\lheel e8-\rheel |
56 fis4.-\rtoe fis8-.-\rtoe fis4-\rtoe [e8-\ltoe ais8-\rtoe] |
58 dis4-\ltoe gis4-\rtoe [cis8-\ltoe 'b8-\lheel 'ais8-\rtoe 'gis8-\ltoe] |
62 fuga2_commands = \melodic{
64 \key fis cis gis dis; % E-major
67 fuga2_right = \melodic{
72 { \stem 1; b8 fis8 b4 }
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 }
90 fuga2_left = \melodic{
97 { \stem 1; ais4 | bes2. }
98 { \stem -1; e4 | fis2 fis4 }
106 fuga2_pedal = \melodic{
111 dis4.-\ltoe e8-\rtoe cis4 |
113 'b4.-\lheel [c8-\ltoe dis8-\rtoe e8-\rheel] |
115 fis4.-\rtoe [e8-\rheel dis8-\rtoe cis8-\ltoe] |
117 dis4-\rtoe e4-\rheel 'e4-\ltoe |
120 break = \melodic{ \meter 4/4; r1 }
122 % these should be two separate scores...
125 % why the extra "\melodic" (silly)
126 % let "[ x ]" be "dimension of x":
127 % [ melodic ++ melodic ] == [ simple-mudela ]
128 % [ \melodic{ melodic ++ melodic } ] == [ melodic ]
131 \$toccata_right ++ \break ++ \$fuga2_right
136 \$toccata_left ++ \break ++ \$fuga2_left