Massive changes - see ChangeLog.
[lilypond.git] / input / les-nereides.ly
blobb802151a81a59ce67c38d94cce4724874f450215
1 #(ly:set-option 'old-relative)
2 \version "1.9.0"
4 \header {
5 composer = "ARTHUR GRAY"
6 title = "LES N\\'ER\\'EIDES"
7 subtitle = "THE NEREIDS"
8 enteredby = "JCN"
9 piece = "Allegretto scherzando"
10 copyright = "public domain"
15 Nastiest piece of competition at
16 http://www.orphee.com/comparison/study.html, see
17 http://www.orphee.com/comparison/gray.pdf
20 lines that contain tweaks (17 currently, not counting reverts) are
21 marked with %tweak
23 possibly more impressive to render without tweaks?
25 grep -v tweak input/les-nereides.ly > lnnt.ly
26 ly2dvi lnnt.ly
30 #(ly:set-point-and-click 'line-column)
31 #(define (make-text-checker text)
32 (lambda (elt) (equal? text (ly:get-grob-property elt 'text))))
35 treble = \context Voice=treble \notes\relative c''{
36 \key a \major
38 | %2
39 \stemUp
40 r4 <<cis eis a cis>>-\arpeggio r2
41 | %3
42 r4 <<cis fis a cis>>-\arpeggio r8.
44 \translator Staff=bass
46 \once\property Voice.TextScript \set #'extra-offset = #'(-3 . -4) %tweak
48 cis,16^2-(^\markup {\small \italic "m.d." }
49 <<fis fis,>>8 <<e! e,!>>
50 | %4
51 <<dis, a' dis>>4-)
53 \translator Staff=treble
55 \slurUp
56 \property PianoStaff.connectArpeggios = ##t
58 #(set-octavation 1)
60 \once\property Voice.TextScript \set #'extra-offset = #'(-3 . -2) %tweak
62 \tieUp
63 cis''''4^\markup { \small \italic "m.g." }-\arpeggio-~
64 \grace {
65 cis8
67 %\stemBoth Hmm
68 \property Voice.Stem \set #'direction = #0
70 a16-[-5( fis dis-]
71 #(set-octavation 0)
73 cis32-[ a-1 fis-4 dis] cis-[ a fis-)-2]
74 % the small grace in lower staff comes after us
75 s32
78 \stemUp
79 cis'4( bis-)
81 | %5
82 r8 <<a' a,>>8-(-\mf <<gis gis,>> <<fis fis,>>
84 % \fingerUp
85 \property Voice.Fingering \set #'direction = #1
87 % Manual fix for collision with slur
88 \property Voice.Fingering \set #'extra-offset = #'(0 . 1) %tweak
89 <<gis gis,>> <<fis fis,>> e-)-1-4-5 r
91 | %6
92 r <<a a,>>8-(-\mf <<gis gis,>> <<fis fis,>>
93 <<gis gis,>> <<fis fis,>> e-) r
95 | %7
96 \bar "||"
99 trebleTwo = \context Voice=trebleTwo \notes\relative c''{
100 \stemDown
101 \slurDown
102 % \fingerDown
103 \property Voice.Fingering \set #'direction = #-1
104 \property Voice.Fingering \set #'extra-offset = #'(0 . 1.2)
106 | %1
107 s1*2
108 | %4
110 <<cis' a fis dis>>4-\arpeggio
111 <<e, gis, e d!>>2
112 | %5
113 s8 cis4. d4
114 %%<<cis e,>>8-[-( <<b-3 d,-1>>
115 <<cis e,>>8-[-( <<b d,>>-3-1
116 | %6
117 %%<<a-2 cis,-1>>-)] cis4. d4
118 <<a cis,>>-)-]-2-1 cis4. d4
119 <<cis e,>>8-[-( <<b d,>>
120 | %7
121 <<a cis,>>-)]
124 bass = \context Voice=bass \notes\relative c{
125 \partial 2
126 \key a \major
128 % Allow ugly (highly blown-up) slurs
129 \property Voice.Slur \override #'beautiful = #5.0 %tweak
130 \property Voice.Slur \override #'attachment-offset = #'((0 . 3) . (0 . -4)) %tweak
131 \slurDown
133 \dynamicUp
135 r8. e,16-(-\f_2 <<a a,>>8-[ <<b b,>>]
136 | %2
137 <<cis cis,>>4
138 \translator Staff=treble
139 \stemDown
140 \property Voice.Slur \override #'attachment = #'(stem . stem) %tweak
141 <<a'' eis cis>>4-)-\arpeggio
143 \property Voice.Slur \revert #'attachment %tweak
144 \translator Staff=bass
145 \stemBoth
147 \property Voice.Slur \revert #'y-free %tweak
148 \property Voice.Slur \override #'y-free = #0.1 %tweak
149 \property Voice.Slur \revert #'attachment-offset %tweak
150 \property Voice.Slur \override #'attachment-offset = #'((0 . 3) . (0 . 8)) %tweak
151 r8. cis,,16( <<fis fis,>>8 <<gis gis,>>
153 | %3
154 \property Voice.Stem \set #'length = #5 %tweak
155 <<a a,>>4
156 \translator Staff=treble
158 \property Voice.Stem \revert #'length %tweak
159 \property Voice.Stem \revert #'direction
160 \property Voice.Stem \override #'direction = #-1
161 <<a' fis cis>>-)-\arpeggio
162 \translator Staff=bass
163 \property Voice.Stem \revert #'direction
166 | %4
167 \property Voice.Slur \revert #'beautiful %tweak
168 \property Voice.Slur \revert #'attachment-offset %tweak
169 \stemDown
170 <<b,, b,>>4
171 \clef treble
172 \stemBoth
174 %urg: staff-change: ! on dis
175 <<cis'' a fis dis!>>-\arpeggio
178 \grace {
180 s16 s s
181 s32 s s
182 s s s
183 \clef bass
184 \property Voice.fontSize = #-3
185 <<e,,, e,>>32-(
186 } <<gis' e>>2-)
188 | %5
189 \slurUp
191 % \fingerDown
192 \property Voice.Fingering \set #'direction = #-1
194 %%a,8 e'-[-5-(<<a-2 cis-3>>-]-)
195 a,8 e'-[-5-(<<a cis>>-]-)-2-3
196 %%r b,-5 <<e-3 gis-5 d'>>4
197 r b,-5 <<e gis d'>>4-3-5
198 \slurBoth
199 \once \property Voice.Fingering \set #'extra-offset = #'(0 . -1) %tweak
200 e,8-[-5-(
202 | %6
203 \once \property Voice.Fingering \set #'extra-offset = #'(0 . -1) %tweak
204 a-)-2]
205 \slurUp
206 e'-[(<<a cis>>-)] r b, <<e gis d'>>4
207 \slurBoth
208 e,8-[(
210 | %7
211 a-)]
214 bassTwo = \context Voice=bassTwo \notes\relative c{
215 \skip 2
216 \skip 1*2
217 \skip 2
219 \stemUp
220 \slurUp
222 cis'4-( bis-)
225 middleDynamics = \context Dynamics=middle \notes{
226 \property Dynamics.TextScript \set #'padding = #-1 %tweak
228 s1*2
229 | %4
231 \grace {
233 s16 s s
234 s32 s
235 \once\property Dynamics.Hairpin \set #'extra-offset = #'(0 . 2) %tweak
236 s-\> s
237 s32 s s s-\!
239 s32 s-"rall." s s s8 s4
240 | %5
241 s2-"a tempo" s8
242 \once\property Dynamics.Hairpin \set #'extra-offset = #'(1 . 0) %tweak
243 s \> s s
244 | %6
245 s8-\!
246 s2 s8 s-\> s
247 | %7
248 s8-\!
251 lowerDynamics = \context Dynamics=lower \notes{
253 | %2
254 s2-\sustainDown s8. s16-\sustainUp s4
255 | %3
256 s2-\sustainDown s8. s16-\sustainUp s4
257 | %4
258 s4-\sustainDown
259 \property Dynamics.pedalSustainStrings = #'("Ped." "*Ped." "*")
261 % grace destroys pedal-line-spanner?
262 % let's do manual tweak:
263 \once\property Dynamics.SustainPedal \set #'extra-offset = #'(10 . 0) %tweak
264 s8-\sustainUp
265 \once\property Dynamics.SustainPedal \set #'extra-offset = #'(16 . 0) %tweak
266 s8-\sustainDown
269 \grace {
271 s16 s s
272 s32 s s s-\sustainUp
273 s32 s s s-\sustainDown
278 | %5
279 % ugh, I don't think that 'mixed should show last edge, but rather:
281 % Ped__________/\__________ *
283 % that's what gray wants, anyway.
285 \property Dynamics.pedalSustainStyle = #'mixed
286 s8-\sustainDown s s
287 s s-\sustainUp-\sustainDown s
289 \once \property Dynamics.pedalSustainStyle = #'text
290 s-\sustainUp
292 | %6
293 \property Dynamics.pedalSustainStyle = #'mixed
294 s8-\sustainDown s s
295 s s-\sustainUp-\sustainDown s
297 \once \property Dynamics.pedalSustainStyle = #'text
298 s-\sustainUp
299 | %7
302 \score{
303 \context PianoStaff <
304 \context Staff=treble <
305 \treble
306 \trebleTwo
308 \context Dynamics=middle <
309 \middleDynamics
311 \context Staff=bass <
312 \clef bass
313 \bass
314 \bassTwo
316 \context Dynamics=lower <
317 \lowerDynamics
320 \paper {
321 \translator {
322 \ScoreContext
323 \remove Bar_number_engraver
325 \translator {
326 \type "Engraver_group_engraver"
327 \name Dynamics
328 \consists "Output_property_engraver"
329 minimumVerticalExtent = #'(-1 . 1)
331 pedalSustainStrings = #'("Ped." "*Ped." "*")
333 \consists "Piano_pedal_engraver"
334 \consists "Script_engraver"
335 \consists "Dynamic_engraver"
336 \consists "Text_engraver"
338 TextScript \override #'font-relative-size = #1
339 TextScript \override #'font-shape = #'italic
341 \consists "Skip_event_swallow_translator"
343 \consistsend "Axis_group_engraver"
346 \translator {
347 \PianoStaffContext
348 \accepts Dynamics
349 VerticalAlignment \override #'forced-distance = #7
354 %%% Local variables:
355 %%% LilyPond-indent-level:4
356 %%% End:
357 %% new-chords-done %%