+%{
+cpp -P -traditional -o l.ly les-nereides.ly
+cpp -P -traditional -o l-fake.ly -DFAKE_GRACE les-nereides.ly
+%}
+
\header{
composer = "ARTHUR GRAY";
title = "LES N\\'ER\\'EIDES";
\skip 2;
\skip 1*2;
- %\skip 1;
-
- % fake grace
+#ifndef FAKE_GRACE
+ \skip 1;
+#else % FAKE_GRACE
\skip 2.; \partial 32*24;
\skip 32*24;
- %end fake grace
+#endif % FAKE_GRACE
\bar "||";
}
treble = \context Voice=treble \notes\relative c''{
+ % Broken?
+ \property Voice.NoteColumn \push #'horizontal-shift = #0
r2
%2
- \property basicStemProperties \pop #'direction
- \property Voice.basicStemProperties \push #'direction = #1
+ \property Voice.Stem \pop #'direction
+ \property Voice.Stem \push #'direction = #1
r4 <cis eis a cis> r2
%3
r4 <cis fis a cis> r8.
\translator Staff=bass
- cis,16^2^"m.g."( <fis8 fis,\sustainup> <e! e,!>
+ cis,16^2^"m.d."( <fis8 fis,> <e! e,!>
%4
<)dis,4 a' dis>
\translator Staff=treble
- \property basicSlurProperties \pop #'direction
- \property Voice.basicSlurProperties \push #'direction = #1
+ \property Voice.Slur \pop #'direction
+ \property Voice.Slur \push #'direction = #1
%% 8va
- cis''''4 (
+ cis''''4^"m.g." (
-%{
+#ifndef FAKE_GRACE
- \property basicStemProperties \pop #'direction
- % ugh
- \property Voice.basicStemProperties \push #'direction = #0
+ \property Voice.Stem \pop #'direction
% grace is a mess
% maybe we should fake this and put 5/4 in this bar?
\grace {
)cis8
- \property basicStemProperties \pop #'direction
- \property Grace.basicStemProperties \push #'direction = #0
+ \property Grace.Stem \pop #'direction
+ \property Grace.Stem \push #'direction = #0
%urg, dim. during grace dumps core here
- %%[a16-5( fis dis] [cis'32 a-1 fis-4 dis\>] [cis a )\!fis-2]
+ %%[a16-5( fis dis] [cis'32 a-1 fis-4 dis] [cis a )fis-2]
[a16-5( fis dis] [cis32 a-1 fis-4 dis] [cis a )fis-2]
}
-%}
+#else % FAKE_GRACE
- %% fake grace:
- \property basicNoteHeadProperties \pop #'font-size
- \property basicStemProperties \pop #'font-size
- \property basicBeamProperties \pop #'font-size
- \property basicTextScriptProperties \pop #'font-size
- \property basicSlurProperties \pop #'font-size
- \property basicLocalKeyProperties \pop #'font-size
-
- \property Voice.basicNoteHeadProperties \push #'font-size = #-1
- \property Voice.basicStemProperties \push #'font-size = #-1
- \property Voice.basicBeamProperties \push #'font-size = #-1
- \property Voice.basicTextScriptProperties \push #'font-size = #-1
- \property Voice.basicSlurProperties \push #'font-size = #-1
- \property Voice.basicLocalKeyProperties \push #'font-size = #-1
+ \property Voice.NoteHead \push #'font-size = #-1
+ \property Voice.Stem \push #'font-size = #-1
+ \property Voice.Beam \push #'font-size = #-1
+ \property Voice.TextScript \push #'font-size = #-1
+ \property Voice.Slur \push #'font-size = #-1
+ \property Voice.LocalKey \push #'font-size = #-1
)cis16
- \property basicStemProperties \pop #'direction
- \property Voice.basicStemProperties \push #'direction = #0
- %%[a16^5( fis dis] [cis'32 a-1 fis-4 dis\>] [cis a )fis-2] s s s
- [a16^5( fis dis] [cis32 a^1 fis^4 dis\>] [cis a )fis-2] s % s s
-
- \property basicNoteHeadProperties \pop #'font-size
- \property basicStemProperties \pop #'font-size
- \property basicBeamProperties \pop #'font-size
- \property basicTextScriptProperties \pop #'font-size
- \property basicSlurProperties \pop #'font-size
- \property basicLocalKeyProperties \pop #'font-size
-
- %ugh ugh
- \property Voice.basicNoteHeadProperties \push #'font-size = #0
- \property Voice.basicStemProperties \push #'font-size = #0
- \property Voice.basicBeamProperties \push #'font-size = #0
- \property Voice.basicTextScriptProperties \push #'font-size = #0
- \property Voice.basicSlurProperties \push #'font-size = #0
- \property Voice.basicLocalKeyProperties \push #'font-size = #0
- %% end fake grace
+ \property Voice.Stem \pop #'direction
+ \property Voice.Stem \push #'direction = #0
+ %%[a16^5( fis dis] [cis'32 a-1 fis-4 dis] [cis a )fis-2] s s s
+ [a16^5( fis dis] [cis32 a^1 fis^4 dis] [cis a )fis-2] s % s s
+ \property Voice.NoteHead \pop #'font-size
+ \property Voice.Stem \pop #'font-size
+ \property Voice.Beam \pop #'font-size
+ \property Voice.TextScript \pop #'font-size
+ \property Voice.Slur \pop #'font-size
+ \property Voice.LocalKey \pop #'font-size
+#endif % FAKE_GRACE
- \property basicStemProperties \pop #'direction
- \property Voice.basicStemProperties \push #'direction = #1
- \!cis'4()bis
- r8\mf-"a tempo"
- <a'8( a,> <gis gis,> <fis fis,> <gis gis,> <fis fis,> )e r|
- r\mf <a8( a,> <gis gis,> <fis fis,> <gis gis,> <fis fis,> )e r|
+ \property Voice.Stem \pop #'direction
+ \property Voice.Stem \push #'direction = #1
+ cis'4()bis
+ r8
+ <a'8( a,> <gis gis,> <fis fis,> <gis gis,> <fis fis,> )e^" "^1^4^5 r|
+ r<a8( a,> <gis gis,> <fis fis,> <gis gis,> <fis fis,> )e r|
}
trebleTwo = \context Voice=trebleTwo \notes\relative c''{
- \skip 2;
- \skip 1*2;
- \skip 4;
- \property basicStemProperties \pop #'direction
- \property Voice.basicStemProperties \push #'direction = #-1
+ % Broken?
+ \property Voice.NoteColumn \push #'horizontal-shift = #-1
+ s2
+ s1*2
+ s4
+ \property Voice.Stem \pop #'direction
+ \property Voice.Stem \push #'direction = #-1
<cis4 a fis dis>
- %% fake grace
- \skip 32*16;
- %% end fake grace
+#ifdef FAKE_GRACE
+ s32*16
+#endif
- <e2-"rall." g, e d>
+ <e2 g, e d>
+ %r8 cis4. d4 [<cis8-5-4( e,-1> <b-3 d,-1> |
r8 cis4. d4 [<cis8( e,> <b-3 d,-1> |
- <)a-2 cis,-1>] cis4. d4 [<cis8(\> e,> <b d,> |
- <\!)a cis,>]
+ <)a-2 cis,-1>] cis4. d4 [<cis8( e,> <b d,> |
+ <)a cis,>]
}
bass = \context Voice=bass \notes\relative c{
- \property Voice.basicSlurProperties \push #'details =
- #'((height-limit . 2.0) (ratio . 0.333) (force-blowfit . 0.5) (beautiful . 5.0))
- \property basicStemProperties \pop #'direction
- \property Voice.basicSlurProperties \push #'direction = #-1
+ \property Voice.Slur \pop #'details
+ \property Voice.Slur \push #'details =
+% #'((height-limit . 2.0) (ratio . 0.333) (force-blowfit . 0.5) (beautiful . 1.0))
+ #'((height-limit . 6.0) (ratio . 0.333) (force-blowfit . 1.0) (beautiful . 0.1))
+ \property Voice.Slur \pop #'de-uglify-parameters
+ \property Voice.Slur \push #'de-uglify-parameters =
+% #'(1.5 0.8 -2.0)
+ #'(2.4 0.8 4.0)
+ \property Voice.Stem \pop #'direction
+ \property Voice.Slur \push #'direction = #-1
% huh, auto-beamer?
- r8. e,16-2\f( [<a8 a,> <b b,>] <cis4\sustaindown cis,> |
+ r8. e,16-2( [<a8 a,> <b b,>] <cis4 cis,> |
%2
\translator Staff=treble
- \property basicStemProperties \pop #'direction
- \property Voice.basicStemProperties \push #'direction = #-1
+ \property Voice.Stem \pop #'direction
+ \property Voice.Stem \push #'direction = #-1
\property Voice.slurEndAttachment = #'stem
<)a''4 eis cis>
%\stemboth
\property Voice.slurEndAttachment = ##f
\translator Staff=bass
- \property basicStemProperties \pop #'direction
- % ugh
- \property Voice.basicStemProperties \push #'direction = #'0
- r8. cis,,16(\sustainup <fis8 fis,> <gis gis,>
+ \property Voice.Stem \pop #'direction
+ \property Voice.Slur \pop #'y-free
+ \property Voice.Slur \push #'y-free = #0.1
+ r8. cis,,16( <fis8 fis,> <gis gis,>
%3
- <a4\sustaindown a,>
+ \property Voice.Stem \pop #'length
+ \property Voice.Stem \push #'length = #5
+ <a4 a,>
\translator Staff=treble
- \property basicStemProperties \pop #'direction
- \property Voice.basicStemProperties \push #'direction = #-1
+ \property Voice.Stem \pop #'direction
+ \property Voice.Stem \push #'direction = #-1
<)a' fis cis>
\translator Staff=bass
- \property basicStemProperties \pop #'direction
- % ugh
- \property Voice.basicStemProperties \push #'direction = #'0
+ \property Voice.Stem \pop #'direction
r2
%4
- \property basicStemProperties \pop #'direction
- \property Voice.basicStemProperties \push #'direction = #-1
- <b,,4\sustaindown b,>
+ \property Voice.Slur \pop #'details
+ \property Voice.Slur \push #'details =
+ #'((height-limit . 2.0) (ratio . 0.333) (force-blowfit . 0.5) (beautiful . 0.5))
+ \property Voice.Stem \pop #'direction
+ \property Voice.Stem \push #'direction = #-1
+ <b,,4 b,>
\clef treble;
- \property basicStemProperties \pop #'direction
- \property Voice.basicStemProperties \push #'direction = #0
+ \property Voice.Stem \pop #'direction
+ \property Voice.Stem \push #'direction = #0
<
%urg: staff-change: ! on dis
<cis'' a fis dis!>
-% { s8. \sustainup\clef bass;}
+% { s8. \clef bass;}
>
- %\grace { s16 s s s s32 s s s s \clef bass; s }
- %\clef bass;
- %\grace { <e,,,32\sustaindown( e,> } <)gis'2 e>
- %% fake grace
- s4 s8 s32 s \sustainup s \clef bass; s
- %% end fake grace
+#ifndef FAKE_GRACE
+ %Hmm
+ %\grace { s16 s s s s32 s s s s \clef bass; s }
+ \clef bass;
+#else
+ s4 s8 s32 s s \clef bass; s
+#endif
- \grace { <e,,,32( e,> } <)gis'2\sustaindown e>
- %5
- \property basicSlurProperties \pop #'direction
- \property Voice.basicSlurProperties \push #'direction = #1
- \property Staff.stopStartSustain = #""
- a,8\sustainup\sustaindown [e'-5(<)a-2 cis-3>]
- \property Staff.stopStartSustain = #"-P"
- r b,-5\sustainup\sustaindown <e4-3 gis-5 d'>
- \property basicSlurProperties \pop #'direction
- \property Voice.basicSlurProperties \push #'direction = #0
- [e,8-5(\sustainup|
+ \grace { <e,,,32( e,> } <)gis'2 e>
+ %5%
+ \property Voice.Slur \pop #'direction
+ \property Voice.Slur \push #'direction = #1
+ a,8 [e'-5(<)a-2 cis-3>]
+ r b,-5 <e4-3 gis-5 d'>
+ \property Voice.Slur \pop #'direction
+ \property Voice.Slur \push #'direction = #0
+ [e,8-5(|
%6
- )a-2\sustaindown]
- \property basicSlurProperties \pop #'direction
- \property Voice.basicSlurProperties \push #'direction = #1
- [e'(<)a cis>] r b,\sustainup\sustaindown <e4 gis d'>
- \property basicSlurProperties \pop #'direction
- \property Voice.basicSlurProperties \push #'direction = #0
- [e,8(\sustainup|
+ )a-2]
+ \property Voice.Slur \pop #'direction
+ \property Voice.Slur \push #'direction = #1
+ [e'(<)a cis>] r b, <e4 gis d'>
+ \property Voice.Slur \pop #'direction
+ \property Voice.Slur \push #'direction = #0
+ [e,8(|
%7
)a]
}
\skip 1*2;
\skip 2;
- %% fake grace
+#ifdef FAKE_GRACE
\skip 32*16;
+#endif
- \property basicStemProperties \pop #'direction
- \property Voice.basicStemProperties \push #'direction = #1
- \property basicSlurProperties \pop #'direction
- \property Voice.basicSlurProperties \push #'direction = #1
+ \property Voice.Stem \pop #'direction
+ \property Voice.Stem \push #'direction = #1
+ \property Voice.Slur \pop #'direction
+ \property Voice.Slur \push #'direction = #1
cis'4()bis
}
+middleDynamics = \context Dynamics=middle \notes{
+ s8 s16 s\f s4
+ s1*2
+ %4
+ s2
+
+#ifdef FAKE_GRACE
+ s32*12
+ s32\> s s \!s
+#endif
+
+ s32 s-"rall." s s
+ s8 s4
+
+ s1\mf-"a tempo"
+ s8 s8\mf s4 s4 s8\> s32 s s \!s
+}
+
+lowerDynamics = \context Dynamics=lower \notes{
+ s2
+ %2
+ s2\sustaindown s8. s16\sustainup s4
+ %3
+ s2\sustaindown s8. s16\sustainup s4
+ %3
+
+#ifndef FAKE_GRACE
+ s4\sustaindown s16
+ s32 s s\sustainup s
+ s32\sustaindown s s s
+ s8
+#else
+ s2\sustaindown
+ s32*12
+ s32 s s\sustainup s
+ s32\sustaindown s s s
+#endif
+
+ \property Dynamics.stopSustain = #""
+ s4 s16. s32\sustainup
+
+ %5
+ s8\sustaindown s s
+ \property Dynamics.stopSustain = #"*"
+ \property Dynamics.stopStartSustain = #"-P"
+ s s\sustainup\sustaindown s s
+ s\sustainup
+
+ %6
+ \property Dynamics.stopStartSustain = #""
+ s8\sustaindown s s
+ \property Dynamics.stopStartSustain = #"-P"
+ s s\sustainup\sustaindown s s
+ s\sustainup
+}
+
\score{
\context PianoStaff <
\context Staff=treble <
\treble
\trebleTwo
>
+ \context Dynamics=middle <
+ \global
+ \middleDynamics
+ >
\context Staff=bass <
\clef bass;
\global
\bass
\bassTwo
>
+ \context Dynamics=lower <
+ \global
+ \lowerDynamics
+ >
>
\paper {
\translator {
\ScoreContext
- basicTimeSignatureProperties \push #'style = #"C"
+ TimeSignature \push #'style = #"C"
+ }
+ \translator {
+ \type "Engraver_group_engraver";
+ \name Dynamics;
+ Generic_property_list = #generic-lyrics-properties
+ \consists "Property_engraver";
+ DynamicsMinimumVerticalExtent = #(cons -3 -3)
+
+ startSustain = #"Ped."
+ stopSustain = #"*"
+ stopStartSustain = #"*Ped."
+ startUnaChorda = #"una chorda"
+ stopUnaChorda = #"tre chorde"
+ % should make separate lists for stopsustain and startsustain
+
+ \consists "Piano_pedal_engraver";
+ \consists "Script_engraver";
+ \consists "Dynamic_engraver";
+ \consists "Text_engraver";
+ %GURGURGU, text is initialised using TextScript
+ TextScript \push #'style = #"italic"
+ TextScript \push #'font-size = #2
+ \consists "Skip_req_swallow_translator";
+
+ \consistsend "Axis_group_engraver";
+ }
+
+ \translator {
+ \VoiceContext
+ TextScript \push #'style = #"italic"
+ }
+ \translator {
+ \PianoStaffContext
+ \accepts Dynamics;
+ % aarg, also separates Dynamics context...
+ %VerticalAlignment \push #'threshold = #'(12 . 12)
+ %VerticalAlignment \pop #'threshold
+ VerticalAlignment \push #'threshold = #'(1 . 10)
}
\translator {
\GraceContext
- basicStemProperties \push #'flag-style = #""
+ Stem \push #'flag-style = #""
}
}
}