#(ly:set-option 'old-relative) \version "2.2.0" \header { composer = "ARTHUR GRAY" title = "LES NÉRÉIDES" subtitle = "THE NEREIDS" enteredby = "JCN" piece = "Allegretto scherzando" copyright = "public domain" } %{ Nastiest piece of competition at http://www.orphee.com/comparison/study.html, see http://www.orphee.com/comparison/gray.pdf lines that contain tweaks (17 currently, not counting reverts) are marked with %tweak possibly more impressive to render without tweaks? grep -v tweak input/les-nereides.ly >> lnnt.ly lilypond lnnt.ly %} #(ly:set-point-and-click 'line-column) #(define (make-text-checker text) (lambda (elt) (equal? text (ly:get-grob-property elt 'text)))) treble = \new Voice \notes\relative c''{ \key a \major r2 | %2 \stemUp r4 \arpeggio r2 | %3 r4 \arpeggio r8. \change Staff=bass \once\override TextScript #'extra-offset = #'(-3 . -4) %tweak cis,16^2(^\markup {\small \italic "m.d." }\sustainUp 8 | %4 4)\sustainDown \change Staff=treble \slurUp \set PianoStaff.connectArpeggios = ##t #(set-octavation 1) \once\override TextScript #'extra-offset = #'(-3 . -2) %tweak \tieUp cis''''4^\markup { \small \italic "m.g." }\arpeggio~ \grace { cis8 \slurBoth % Tweak \override Stem #'direction = #0 a16[-5( fis dis] #(set-octavation 0) cis32[ a-1 fis-4 dis] cis[ a fis)-2] % the small grace in lower staff comes after us s32 } \stemUp cis'4( bis) | %5 r8 8(\mf % \fingerUp \override Fingering #'direction = #1 % Manual fix for collision with slur \override Fingering #'extra-offset = #'(0 . 1) %tweak e)-1-4-5 r | %6 r 8(\mf e) r | %7 \bar "||" } trebleTwo = \new Voice \notes\relative c''{ \stemDown \slurDown % \fingerDown \override Fingering #'direction = #-1 \override Fingering #'extra-offset = #'(0 . 1.2) s2 | %1 s1*2 | %4 s4 4\arpeggio 2 | %5 s8 cis4. d4 %%8[( 8[( -3-1 | %6 %%)] cis4. d4 )]-2-1 cis4. d4 8[( | %7 )] } bass = \new Voice \notes\relative c{ \partial 2 \key a \major % Allow ugly (highly blown-up) slurs \override Slur #'beautiful = #5.0 %tweak \override Slur #'attachment-offset = #'((0 . 3) . (0 . -4)) %tweak \slurDown \dynamicUp r8. e,16(\f_2 8[ ] | %2 \override Staff.SustainPedalLineSpanner #'staff-padding = #5 4\sustainDown \change Staff=treble \stemDown \override Slur #'attachment = #'(stem . stem) %tweak 4)\arpeggio \revert Slur #'attachment %tweak \change Staff=bass \stemBoth \revert Slur #'y-free %tweak \override Slur #'y-free = #0.1 %tweak \revert Slur #'attachment-offset %tweak \override Slur #'attachment-offset = #'((0 . 3) . (0 . 8)) %tweak r8. cis,,16(\sustainUp 8 | %3 \override Stem #'length = #5 %tweak 4\sustainDown \change Staff=treble \revert Stem #'length %tweak \revert Stem #'direction \override Stem #'direction = #-1 )\arpeggio \change Staff=bass \revert Stem #'direction r2 | %4 \revert Slur #'beautiful %tweak \revert Slur #'attachment-offset %tweak \stemDown 4 \clef treble \stemBoth << %urg: staff-change: ! on dis \arpeggio >> \grace { \override Stem #'stroke-style = #"grace" s8 s16 s s s32 s s s s s \clef bass 32(\sustainUp\sustainDown \revert Stem #'stroke-style } 2) | %5 \slurUp % \fingerDown \override Fingering #'direction = #-1 \override Staff.SustainPedalLineSpanner #'staff-padding = #3.5 \set Staff.pedalSustainStyle = #'mixed %%a,8 e'[-5(]) a,8\sustainDown e'[-5(])-2-3 %%r b,-5 4 r b,-5\sustainUp\sustainDown 4-3-5 \slurBoth \once \override Fingering #'extra-offset = #'(0 . -1) %tweak e,8[-5(\sustainUp | %6 \once \override Fingering #'extra-offset = #'(0 . -1) %tweak a)-2]\sustainDown \slurUp e'[()] r b,\sustainUp\sustainDown 4 \slurBoth e,8[(\sustainUp | %7 a)] } bassTwo = \new Voice \notes\relative c{ \skip 2 \skip 1*2 \skip 2 \stemUp \slurUp cis'4( bis) } middleDynamics = \notes{ \override Dynamics.TextScript #'padding = #-1 %tweak s2 s1*2 | %4 s2 \grace { s8 s16 s s s32 s \once\override Dynamics.Hairpin #'extra-offset = #'(0 . 2) %tweak s\> s s32 s s s\! } s32 s-"rall." s s s8 s4 | %5 s2-"a tempo" s8 \once\override Dynamics.Hairpin #'extra-offset = #'(1 . 0) %tweak s \> s s | %6 s8\! s2 s8 s\> s | %7 s8\! } \score{ \context PianoStaff << \context Staff=treble << \treble \trebleTwo >> \new Dynamics << \middleDynamics >> \context Staff=bass << \clef bass \bass \bassTwo >> >> \paper { \context { \ScoreContext pedalSustainStrings = #'("Ped." "*Ped." "*") \remove Bar_number_engraver } \context { \type "Engraver_group_engraver" \name Dynamics \consists "Output_property_engraver" minimumVerticalExtent = #'(-1 . 1) \consists "Script_engraver" \consists "Dynamic_engraver" \consists "Text_engraver" \override TextScript #'font-size = #2 \override TextScript #'font-shape = #'italic \consists "Skip_event_swallow_translator" \consistsend "Axis_group_engraver" } \context { \PianoStaffContext \accepts Dynamics \override VerticalAlignment #'forced-distance = #7 } } } %%% Local variables: %%% LilyPond-indent-level:4 %%% End: %% new-chords-done %%