From a625337e94139fac9077ab9955306746368fe793 Mon Sep 17 00:00:00 2001 From: Jan Nieuwenhuizen Date: Wed, 4 Oct 2000 23:06:38 +0200 Subject: [PATCH] patch::: 1.3.93.jcn1 1.3.93.jcn1 =========== * Try at nastiest competition piece: input/les-nereides.ly (HELP?). * Moved Pedal_engraver to Staff context. * Found some bugs. --- CHANGES | 9 ++ VERSION | 2 +- input/bugs/grace-pedal.ly | 6 + input/bugs/grace-skip.ly | 11 ++ input/bugs/stem-dir.ly | 16 +++ input/les-nereides.ly | 245 ++++++++++++++++++++++++++++++++++++++ ly/engraver.ly | 18 +-- 7 files changed, 297 insertions(+), 10 deletions(-) create mode 100644 input/bugs/grace-pedal.ly create mode 100644 input/bugs/grace-skip.ly create mode 100644 input/bugs/stem-dir.ly create mode 100644 input/les-nereides.ly diff --git a/CHANGES b/CHANGES index 7165bea587..71d2795aab 100644 --- a/CHANGES +++ b/CHANGES @@ -1,3 +1,12 @@ +1.3.93.jcn1 +=========== + +* Try at nastiest competition piece: input/les-nereides.ly (HELP?). + +* Moved Pedal_engraver to Staff context. + +* Found some bugs. + 1.3.92.jcn2 =========== diff --git a/VERSION b/VERSION index 95d13cc813..331315a9d6 100644 --- a/VERSION +++ b/VERSION @@ -2,7 +2,7 @@ PACKAGE_NAME=LilyPond MAJOR_VERSION=1 MINOR_VERSION=3 PATCH_LEVEL=93 -MY_PATCH_LEVEL= +MY_PATCH_LEVEL=jcn1 # use the above to send patches: MY_PATCH_LEVEL is always empty for a # released version. diff --git a/input/bugs/grace-pedal.ly b/input/bugs/grace-pedal.ly new file mode 100644 index 0000000000..aba9e1d075 --- /dev/null +++ b/input/bugs/grace-pedal.ly @@ -0,0 +1,6 @@ +% dumps core: 1.3.93 +\score{ + \notes{ + \grace { } <)gis'2 e> + } +} diff --git a/input/bugs/grace-skip.ly b/input/bugs/grace-skip.ly new file mode 100644 index 0000000000..665fb7d98e --- /dev/null +++ b/input/bugs/grace-skip.ly @@ -0,0 +1,11 @@ +% dumps core: 1.3.93 +\score{ + \notes{ + \grace { + s16 s s s s32 s s s + s + s + } + + } +} diff --git a/input/bugs/stem-dir.ly b/input/bugs/stem-dir.ly new file mode 100644 index 0000000000..0233a1b700 --- /dev/null +++ b/input/bugs/stem-dir.ly @@ -0,0 +1,16 @@ +% +% must push 0 to get 'stemboth', popping alone doesn't work +% +\score{ + \notes\relative c''{ + c4 + \property Voice.basicStemProperties \push #'direction = #1 + c + %\property Voice.basicStemProperties \pop #'direction + \property basicStemProperties \pop #'direction + c + % burp? + \property Voice.basicStemProperties \push #'direction = #0 + c + } +} diff --git a/input/les-nereides.ly b/input/les-nereides.ly new file mode 100644 index 0000000000..0fe8249134 --- /dev/null +++ b/input/les-nereides.ly @@ -0,0 +1,245 @@ +\header{ + composer = "ARTHUR GRAY"; + title = "LES N\\'ER\\'EIDES"; + subtitle = "THE NEREIDS"; + enteredby = "JCN"; + piece = "Allegretto scherzando"; + copyright = "public domain"; + description = "Natiest piece of competition at http://www.orphee.com/comparison/study.html, see http://www.orphee.com/comparison/gray.pdf"; + comment = "LilyPond (1.3.93) can't really do this yet, I guess"; +} + +global = \notes{ + \partial 2; + \key a \major; + \skip 2; + \skip 1*2; + + %\skip 1; + + % fake grace + \skip 2.; \partial 32*24; + \skip 32*24; + %end fake grace + + \bar "||"; +} + +treble = \context Voice=treble \notes\relative c''{ + r2 + %2 + \property basicStemProperties \pop #'direction + \property Voice.basicStemProperties \push #'direction = #1 + r4 r2 + %3 + r4 r8. + \translator Staff=bass + cis,16^2^"m.g."( + %4 + <)dis,4 a' dis> + \translator Staff=treble + \property basicSlurProperties \pop #'direction + \property Voice.basicSlurProperties \push #'direction = #1 + %% 8va + cis''''4 ( + +%{ + + \property basicStemProperties \pop #'direction + % ugh + \property Voice.basicStemProperties \push #'direction = #0 + + % 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 + %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] [cis32 a-1 fis-4 dis] [cis a )fis-2] + } + +%} + + %% 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 + + )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 basicStemProperties \pop #'direction + \property Voice.basicStemProperties \push #'direction = #1 + \!cis'4()bis + r8\mf-"a tempo" + )e r| + r\mf )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 + + + %% fake grace + \skip 32*16; + %% end fake grace + + + r8 cis4. d4 [ | + <)a-2 cis,-1>] cis4. d4 [ e,> | + <\!)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 + % huh, auto-beamer? + r8. e,16-2\f( [ ] | + %2 + \translator Staff=treble + \property basicStemProperties \pop #'direction + \property Voice.basicStemProperties \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 + %3 + + \translator Staff=treble + \property basicStemProperties \pop #'direction + \property Voice.basicStemProperties \push #'direction = #-1 + <)a' fis cis> + \translator Staff=bass + \property basicStemProperties \pop #'direction + % ugh + \property Voice.basicStemProperties \push #'direction = #'0 + r2 + %4 + \property basicStemProperties \pop #'direction + \property Voice.basicStemProperties \push #'direction = #-1 + + \clef treble; + \property basicStemProperties \pop #'direction + \property Voice.basicStemProperties \push #'direction = #0 + < + %urg: staff-change: ! on dis + +% { s8. \sustainup\clef bass;} + > + %\grace { s16 s s s s32 s s s s \clef bass; s } + %\clef bass; + %\grace { } <)gis'2 e> + + %% fake grace + s4 s8 s32 s \sustainup s \clef bass; s + %% end fake grace + + \grace { } <)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 + \property basicSlurProperties \pop #'direction + \property Voice.basicSlurProperties \push #'direction = #0 + [e,8-5(\sustainup| + %6 + )a-2\sustaindown] + \property basicSlurProperties \pop #'direction + \property Voice.basicSlurProperties \push #'direction = #1 + [e'(<)a cis>] r b,\sustainup\sustaindown + \property basicSlurProperties \pop #'direction + \property Voice.basicSlurProperties \push #'direction = #0 + [e,8(\sustainup| + %7 + )a] +} + +bassTwo = \context Voice=bassTwo \notes\relative c{ + \skip 2; + \skip 1*2; + \skip 2; + + %% fake grace + \skip 32*16; + + \property basicStemProperties \pop #'direction + \property Voice.basicStemProperties \push #'direction = #1 + \property basicSlurProperties \pop #'direction + \property Voice.basicSlurProperties \push #'direction = #1 + cis'4()bis +} + +\score{ + \context PianoStaff < + \context Staff=treble < + \global + \treble + \trebleTwo + > + \context Staff=bass < + \clef bass; + \global + \bass + \bassTwo + > + > + \paper { + \translator { + \ScoreContext + basicTimeSignatureProperties \push #'style = #"C" + } + \translator { + \GraceContext + basicStemProperties \push #'flag-style = #"" + } + } +} diff --git a/ly/engraver.ly b/ly/engraver.ly index d5b947bf3d..670d44787f 100644 --- a/ly/engraver.ly +++ b/ly/engraver.ly @@ -30,6 +30,15 @@ StaffContext=\translator { \consists "Rest_collision_engraver"; \consists "Local_key_engraver"; + startSustain = #"Ped." + stopSustain = #"*" + stopStartSustain = #"*Ped." + startUnaChorda = #"una chorda" + stopUnaChorda = #"tre chorde" + % should make separate lists for stopsustain and startsustain + + \consists "Piano_pedal_engraver"; + \consistsend "Axis_group_engraver"; %{ @@ -114,15 +123,6 @@ VoiceContext = \translator { \consists "A2_engraver"; \consists "Voice_devnull_engraver"; - - 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 "Script_column_engraver"; \consists "Rhythmic_column_engraver"; -- 2.39.5