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