Massive changes - see ChangeLog.
[lilypond.git] / input / mutopia / J.S.Bach / baerenreiter-sarabande.ly
blob41d7d9742aea85b5dd2cb6931482b52d300a24d9
1 \version "1.9.0"
3 % #(ly:set-point-and-click 'line-column)
5 forcedBreak = \notes { }
6 %%forcedBreak = \notes { \break }
7 forcedLastBreak = \notes { \break }
8 %%forcedLastBreak = \notes { }
10 %% We want this to perfectly match the Baerenreiter spacing.
11 %% If we're not using 6 systems, there's definately a problem.
12 #(define (assert-system-count smob n)
13 (let ((systems (length (ly:get-broken-into
14 (ly:get-original
15 (ly:get-system smob))))))
16 (if (not (equal? n systems))
17 (error
18 ;;(warn
19 (string-append "Got " (number->string systems)
20 " systems (expecting " (number->string n))))))
23 \header {
24 title = "Solo Cello Suite II"
25 piece ="Sarabande"
26 composer = "J.S. Bach"
27 editor = "August Wenzinger"
28 source= "B\\\"arenreiter Urtext"
30 texidoc = "The B\\\"arenreiter edition of the Cello Suites is the
31 most beautifully typeset piece of music in our collection of music (we
32 both own one. It is also lovely on French Horn). This piece does not
33 include articulation, but it does follows the same beaming and
34 linebreaking as the printed edition. This is done in order to
35 benchmark the quality of the LilyPond output.
37 As of lilypond 1.5.42, the spacing and beam quanting is almost
38 identical.
40 There are two tweaks in this file: a line-break was forced before
41 measure 25, we get back the linebreaking of Baerenreiter. The stem
42 direction is forced in measure 24. The last beam of that measure is up
43 in Baerenreiter because of context. We don't detect that yet.
45 Note that the Barenreiter edition contains a few engraving
46 mistakes. The second line begins with measure 6 (but prints 5). The |:
47 half way in measure 13 has been forgotten.
52 sarabandeA = \context Voice \notes \relative c {
53 \property Staff.NoteCollision \set #'merge-differently-dotted = ##t
56 < { d8. e16 e4.-\trill d16 e } \\
57 { d4 a2 } >
58 <<d, a' f'>>4. e'8-[ d c] |
59 bes-[ g'] f-[ e16(f] g-[ a bes d,-)] |
60 cis4.-\trill b8-[ a g] |
62 %% check spacing without accs:
63 %% c4.-\trill bes8-[ a g] |
65 < { d'8. e16 e4.-\trill d16 e |
66 f4. d8-[ e f] }
68 { <<a, f>>4 a2 <<a d,>>4. } > |
70 %%7
71 g8 bes16(a-) c(bes-) a(g-) d'8 f, |
72 < e4.-\trill
73 \\ <<c, g'>>4 >
74 d8-[ c bes]
76 %%9
77 < { f'8 g16(a-) a4. g16(f-) |
78 g8 a16(bes-) bes4. c16(d-) }
80 { a,4 <<bes d >>4. r8 bes4 <<g f'>>2 }
81 > |
82 \forcedBreak
84 %% 11
85 e,8-[ f] c,-[ g'] f'-[ e] |
86 f4 f,2 |
87 < { a'4 a4.-\trill bes8
88 c bes16 a } \\
89 { f8-[ es] es4. r8 d4 } >
91 fis8.-\trill es16 d8 c |
92 bes-[ g']
93 a,-[ fis']
94 es'-[ d] |
95 \forcedBreak
97 %%16
98 << bes d, g, >>4.-\trill a8-[ g f!] |
99 e bes a f' g a |
100 d, as g es' f g |
101 cis,-[ bes'] a-[ g16 f] e!8-[ f16 d] |
102 cis8 e16 a a,8. g'16 f8(e-) |
103 \forcedBreak
105 %%21
106 < { d e16(f-) f4. e16(d-) |
107 e8 f16(g-) g4. a16(bes-) |
108 a8 cis16 d d,8 e16 f32 g f8-\trill e16(d-) } \\
109 { bes4 g2 |
110 g4 <<bes cis,>>4. s8 |
111 <<d a f>>8 r r g, a4 } >
113 \stemUp
114 d4 d,16 a'( b cis d e f g-) |
115 \stemBoth
116 \forcedLastBreak
117 %%25
118 < { a16(b c b-) c4. b16(a-) |
119 b cis d cis d4. e16(f-) | }
121 { f,4 fis4. s8 |
122 <<d g,>>4 gis4. } >
123 \voiceOne
124 d16(cis d-) f,
125 a,8-[ e']
126 \oneVoice
127 d'-[ cis] |
128 %% d4 d,,2 |
130 \property Thread.NoteHead
131 \override #'after-line-breaking-callback
132 = #(lambda (smob) (assert-system-count smob 6))
133 d,,2 |
137 sarabandeCelloGlobal = \notes{
138 \time 3/4
139 \key f \major
140 \clef bass
141 \repeat "volta" 2 {
142 s2.*12
143 } \repeat "volta" 2 {
144 s2.*16
148 sarabandeCelloScripts = \notes{
151 sarabandeCelloStaff = \context Staff <
152 \sarabandeA
153 \sarabandeCelloGlobal
154 \sarabandeCelloScripts
157 % size perversions
158 smallerPaper = \paper {
159 \translator { \StaffContext
160 fontSize = #-1
161 StaffSymbol \override #'staff-space = #0.8
163 \translator { \ScoreContext
164 SpacingSpanner \override #'spacing-increment = #0.96
167 indent = 5.6 \mm
168 linewidth = 146.8 \mm
171 baerPaper = \paper {
172 indent = 7. \mm
173 linewidth =183.5 \mm
174 interscoreline=4.0\mm
175 \translator {
176 \ScoreContext
177 % System \override #'molecule-callback = #box-grob-molecule
182 \score{
183 \sarabandeCelloStaff
184 \paper{
185 \baerPaper
187 \midi{ \tempo 4 = 40 }
188 \header{
189 opus= ""
190 piece ="Sarabande" }
193 %%% Local variables:
194 %%% LilyPond-indent-level:2
195 %%% End: