From: fred Date: Tue, 26 Mar 2002 21:49:29 +0000 (+0000) Subject: lilypond-1.1.42 X-Git-Tag: release/1.5.59~2457 X-Git-Url: https://git.donarmstrong.com/?a=commitdiff_plain;h=c96782f190f74bdb594f1fce79d54d25ac0aa966;p=lilypond.git lilypond-1.1.42 --- diff --git a/input/test/orchestscore.ly b/input/test/orchestscore.ly index 46806afd50..b440c6ff43 100644 --- a/input/test/orchestscore.ly +++ b/input/test/orchestscore.ly @@ -4,7 +4,7 @@ m = \notes \relative c''{ c1 | c2 c | c c | c c | c c | c c | c c | c c | } -\score{ < +\score{ < \context StaffGroup = wood < \context Staff = flauto < \property Staff.instrument = "Flauto" @@ -53,7 +53,7 @@ c1 | c2 c | c c | c c | c c | c c | c c | c c | > > \context StaffGroup = strings < -% \context GrandStaff = violins < + \context GrandStaff = violins < \context Staff = viI < \property Staff.instrument = "Violin I" \property Staff.instr = "Vi. I" @@ -64,7 +64,7 @@ c1 | c2 c | c c | c c | c c | c c | c c | c c | \property Staff.instr = "Vi. II" \m > -% > + > \context Staff = vla < \property Staff.instrument = "Viola" \property Staff.instr = "Vla." @@ -88,10 +88,17 @@ c1 | c2 c | c c | c c | c c | c c | c c | c c | textheight = 260.\mm; \translator { \OrchestralScoreContext - minVerticalAlign = 2.5*\staffheight; + minVerticalAlign = 3.5*\staffheight; % No effect!!?? } \translator { \StaffContext \consists "Staff_margin_engraver"; + marginScriptPadding = 15.0; + } + \translator { \StaffGroupContext + minVerticalAlign = 2.5*\staffheight; + } + \translator { \GrandStaffContext + minVerticalAlign = 2.5*\staffheight; } } } diff --git a/lily/include/music-list.hh b/lily/include/music-list.hh index df6222af78..ce72ec7a9f 100644 --- a/lily/include/music-list.hh +++ b/lily/include/music-list.hh @@ -40,6 +40,10 @@ public: virtual void transpose (Musical_pitch ); virtual void compress (Moment); void add_music (Music *music_p); + + + Moment cumulative_length () const; + Moment maximum_length () const; protected: virtual void do_print() const; }; diff --git a/lily/include/new-repeated-music.hh b/lily/include/new-repeated-music.hh new file mode 100644 index 0000000000..30a5076340 --- /dev/null +++ b/lily/include/new-repeated-music.hh @@ -0,0 +1,47 @@ +/* + new-repeated-music.hh -- declare New_repeated_music + + source file of the GNU LilyPond music typesetter + + (c) 1999 Han-Wen Nienhuys + + */ + +#ifndef NEW_REPEATED_MUSIC_HH +#define NEW_REPEATED_MUSIC_HH + +#include "music.hh" + +class New_repeated_music : public Music +{ +public: + bool unfold_b_; + int repeats_i_; + + Music * repeat_begin_p_; + Music_sequence * alternatives_p_; + + virtual Musical_pitch to_relative_octave (Musical_pitch); + + /// The duration of this piece of music + virtual Moment length_mom () const; + + + void print() const; + /// Transpose, with the interval central C to #p# + virtual void transpose (Musical_pitch p); + + /// Scale the music in time by #factor#. + virtual void compress (Moment factor); + VIRTUAL_COPY_CONS(Music); + + New_repeated_music (); + New_repeated_music (New_repeated_music const&); + ~New_repeated_music (); +protected: + virtual void do_print() const; + +}; + + +#endif /* NEW_REPEATED_MUSIC_HH */ diff --git a/lily/include/repeated-music-iterator.hh b/lily/include/repeated-music-iterator.hh index 4b42751c0b..7bbb8d0a47 100644 --- a/lily/include/repeated-music-iterator.hh +++ b/lily/include/repeated-music-iterator.hh @@ -25,6 +25,7 @@ public: protected: virtual void do_print () const; virtual void do_process_and_next (Moment); + private: void start_next_element (); diff --git a/lily/include/sequential-music-iterator.hh b/lily/include/sequential-music-iterator.hh index a027ad2fe5..f7e09f8bf8 100644 --- a/lily/include/sequential-music-iterator.hh +++ b/lily/include/sequential-music-iterator.hh @@ -39,7 +39,7 @@ private: */ void start_next_element(); void leave_element(); - void set_Sequential_music_translator(); + void set_sequential_music_translator(); }; #endif // SEQUENTIAL_MUSIC_ITERATOR_HH diff --git a/lily/music-list.cc b/lily/music-list.cc index 656798d3ca..d3949b6723 100644 --- a/lily/music-list.cc +++ b/lily/music-list.cc @@ -16,13 +16,11 @@ Moment Simultaneous_music::length_mom () const { - Moment dur = 0; - for (Cons *i = music_p_list_p_->head_; i; i = i->next_) - dur = dur >? i->car_->length_mom (); - - return dur; + return maximum_length (); } + + void Music_sequence::compress (Moment m) { @@ -44,12 +42,7 @@ Sequential_music::Sequential_music(Music_list *p) Moment Sequential_music::length_mom () const { - Moment last=0; - for (Cons *i = music_p_list_p_->head_; i; i = i->next_) - { - last += i->car_->length_mom (); - } - return last; + return cumulative_length (); } Musical_pitch diff --git a/lily/music-sequence.cc b/lily/music-sequence.cc index 6f50bd56b7..2e1a189517 100644 --- a/lily/music-sequence.cc +++ b/lily/music-sequence.cc @@ -45,3 +45,24 @@ Music_sequence::add_music (Music *m_p) { music_p_list_p_->add_music (m_p); } + +Moment +Music_sequence::cumulative_length () const +{ + Moment last=0; + for (Cons *i = music_p_list_p_->head_; i; i = i->next_) + { + last += i->car_->length_mom (); + } + return last; +} + +Moment +Music_sequence::maximum_length () const +{ + Moment dur = 0; + for (Cons *i = music_p_list_p_->head_; i; i = i->next_) + dur = dur >? i->car_->length_mom (); + + return dur; +} diff --git a/lily/new-repeated-music-iterator.cc b/lily/new-repeated-music-iterator.cc new file mode 100644 index 0000000000..66028bb202 --- /dev/null +++ b/lily/new-repeated-music-iterator.cc @@ -0,0 +1,41 @@ +#if 0 +/* + new-repeated-music-iterator.cc -- implement New_repeated_music_iterator + + source file of the GNU LilyPond music typesetter + + (c) 1999 Han-Wen Nienhuys + + */ + +#include "music-iterator.hh" + + +/** + + */ +class New_repeated_music_iterator : public Music_iterator +{ + Music_iterator * main_iter_p_; + Music_iterator * alternative_iter_p_; + int count_; + +public: + New_repeated_music_iterator (); + ~New_repeated_music_iterator (); + + + virtual void construct_children (); + virtual Moment next_moment () const; + virtual bool ok () const; + +protected: + virtual void do_print () const; + virtual void do_process_and_next (Moment); +}; + +New_repeated_music_iterator::New_repeated_music_iterator () +{ + +} +#endif diff --git a/lily/new-repeated-music.cc b/lily/new-repeated-music.cc new file mode 100644 index 0000000000..c989de9014 --- /dev/null +++ b/lily/new-repeated-music.cc @@ -0,0 +1,104 @@ +/* + new-repeated-music.cc -- implement New_repeated_music + + source file of the GNU LilyPond music typesetter + + (c) 1999 Han-Wen Nienhuys + + */ + +#include "new-repeated-music.hh" +#include "music-list.hh" +#include "musical-pitch.hh" + +New_repeated_music::New_repeated_music() +{ + repeat_begin_p_ = 0; + unfold_b_ = false; + repeats_i_ =0; + alternatives_p_ = 0; +} + +New_repeated_music::New_repeated_music (New_repeated_music const &s) + : Music (s) +{ + repeats_i_ = s.repeats_i_; + unfold_b_ = s.unfold_b_; + + repeat_begin_p_ = s.repeat_begin_p_ ? s.repeat_begin_p_->clone () : 0; + alternatives_p_ = s.alternatives_p_ + ? dynamic_cast (s.alternatives_p_->clone ()):0; +} + +New_repeated_music::~New_repeated_music () +{ + delete repeat_begin_p_; + delete alternatives_p_; +} + +void +New_repeated_music::do_print () const +{ + if (repeat_begin_p_) + repeat_begin_p_->print(); + + if (alternatives_p_) + alternatives_p_->print(); +} + +Musical_pitch +New_repeated_music::to_relative_octave (Musical_pitch p) +{ + if (repeat_begin_p_) + p = repeat_begin_p_->to_relative_octave (p); + + if (alternatives_p_) + p = alternatives_p_->do_relative_octave (p, true); + return p; +} + + +void +New_repeated_music::transpose (Musical_pitch p) +{ + if (repeat_begin_p_) + repeat_begin_p_->transpose (p); + + if (alternatives_p_) + alternatives_p_->transpose (p); +} + +void +New_repeated_music::compress (Moment p) +{ + if (repeat_begin_p_) + repeat_begin_p_->compress (p); + + if (alternatives_p_) + alternatives_p_->compress (p); +} + + +Moment +New_repeated_music::length_mom () const +{ + Moment m =0; + if (unfold_b_) + { + if (repeat_begin_p_) + m += Rational (repeats_i_) * repeat_begin_p_->length_mom (); + + if (alternatives_p_) + m += alternatives_p_->cumulative_length (); + } + else + { + if (repeat_begin_p_) + m += repeat_begin_p_->length_mom (); + + if (alternatives_p_) + m += alternatives_p_->maximum_length (); + } + return m; +} + diff --git a/lily/sequential-music-iterator.cc b/lily/sequential-music-iterator.cc index b1a9ab6198..66a479efad 100644 --- a/lily/sequential-music-iterator.cc +++ b/lily/sequential-music-iterator.cc @@ -28,7 +28,7 @@ Sequential_music_iterator::Sequential_music_iterator () void Sequential_music_iterator::construct_children() { - cursor_ = dynamic_cast (music_l_)->music_p_list_p_->head_; + cursor_ = dynamic_cast (music_l_)->music_p_list_p_->head_; while (cursor_) { @@ -39,7 +39,7 @@ Sequential_music_iterator::construct_children() } else { - set_Sequential_music_translator(); + set_sequential_music_translator(); break; } } @@ -63,7 +63,7 @@ Sequential_music_iterator::start_next_element() } void -Sequential_music_iterator::set_Sequential_music_translator() +Sequential_music_iterator::set_sequential_music_translator() { if (iter_p_->report_to_l()->depth_i () > report_to_l ()->depth_i ()) set_translator (iter_p_->report_to_l()); @@ -99,7 +99,7 @@ Sequential_music_iterator::do_process_and_next (Moment until) if (cursor_) { start_next_element(); - set_Sequential_music_translator(); + set_sequential_music_translator(); } else { diff --git a/lily/simultaneous-music-iterator.cc b/lily/simultaneous-music-iterator.cc index 45fd7cae7b..14983adb9c 100644 --- a/lily/simultaneous-music-iterator.cc +++ b/lily/simultaneous-music-iterator.cc @@ -25,7 +25,7 @@ void Simultaneous_music_iterator::construct_children() { int j = 0; - Simultaneous_music const *sim = dynamic_cast (music_l_); + Music_sequence const *sim = dynamic_cast (music_l_); for (Cons *i = sim->music_p_list_p_->head_; i; i = i->next_, j++) { diff --git a/mutopia/N.W.Gade/README b/mutopia/N.W.Gade/README index 132bb62307..fbffbfc7e5 100644 --- a/mutopia/N.W.Gade/README +++ b/mutopia/N.W.Gade/README @@ -1,4 +1,4 @@ -This ouverture "Imellan Fjeldene" ("Between the Mountains") by +This ouverture "Imellem Fjeldene" ("Between the Mountains") by Niels W. Gade (1788-1854) is typeset from handwritten parts available at Statens Musikbibliotek, Stockholm, Sweden. No score was available. @@ -7,8 +7,23 @@ A few obvious misprints and inconsistencies between the parts have been corrected. This is indicated with comments in the different source files. -The piece will be performed in Ludvika and Östervåla, March 13-14, 1999, -by Bergslagens Kammarsymfoniker conducted by Ola Karlsson. +The piece was performed in Ludvika and Östervåla, Sweden, +March 13-14, 1999, by Bergslagens Kammarsymfoniker conducted +by Ola Karlsson. + +Christian Mondrup has provided the following background on the +piece: +It was composed 1850 as a ouverture for the comedy "Imellem +Fjeldene" by the danish poet Carsten Hauch. In the Andante +introduction, Gade uses a melody from the collection ``Norske +Folkesagn og Melodier'' (``Norwegian folksongs and melodies'') +by the danish composer A.P. Bergreen. The song has a norwegian +text ``Heimreise fraa Sæteren'' by Edvard Storm. The second +theme of the Allegro part might very well come from the same +collection, namely the song ``Saag du nokke Kjærringa mi''. + +The music was typeset using Lilypond, the GNU Project music +typesetter. The score and parts may be freely copied. diff --git a/mutopia/N.W.Gade/brass.ly b/mutopia/N.W.Gade/brass.ly index 6c16906799..39c552a780 100644 --- a/mutopia/N.W.Gade/brass.ly +++ b/mutopia/N.W.Gade/brass.ly @@ -679,7 +679,8 @@ timpani=\notes\relative c, { \property Staff."midi_instrument" = "timpani" -R2.*6 | +r2. | % Ensure that the staff is printed on page 1 of the score. +R2.*5 | f2.:32 \pp ~ | f2.:32 ~ | f2.:32 ~ | @@ -706,22 +707,39 @@ R2 | f8 r r4 | R2 | f8 r r4 | -R2*16 | -r4 r8 c' \p | -[c-. \< c-. c-. \! c-.] | -c4.:8 \f r8 | -R2 | -r4 r8 c \p | -c2:8 \< | -\! c4.:8 \f r8 | -c4:32 ~ c8 r | +R2*14 | +\context Staff <{\voiceone \clef "treble"; + r4^"Tri." r8 e''' | + [e e e e ] | + [e e e g,, ] | % In reality: e e e e | e + g r r4 | + s4. \clef treble; e''8 | + e2:8 | + [e8 e e g,,] | % In reality: e e e e | e + g8 r r4 } + {\voicetwo r2 | r | + r4_" Timp." r8 \clef bass; c, | + [c-. \< c-. c-. \! c-.] | + c4.:8 \f r8 | + R2 | + r4 r8 \clef bass; c \p | + c2:8 \< | + \! c4.:8 \f r8 } >| +c,4:32 ~ c8 r | c4:32 ~ c8 r | R2*2 | f,4:32 \f ~ f8 r | f4:32 ~ f8 r | -R2*3 | -r4 r8 c' \p | -c2:8 \< | +\context Staff <{\voiceone \clef "treble"; + [e''' e e e ] | + e r r e | + e2:8 | + [e8 e e g,, ] |} % In reality: e e e e + {\voicetwo r2 | + r2 | + r2 | + r4 r8 \clef bass; c, \p |}> +c,2:8 \< | \! c4.:8 r8 | R2*4 | c4 \f r | @@ -749,22 +767,44 @@ R2 | f8 r r4 | R2*3 | c'4 \fz r | -R2*12 | -r4 r8 f, \p | -[f \< f f \! f ] | -f4.:8 \f r8 | -R2 | -r4 r8 f \p | -f2:8 \< | -\! f4.:8 \f r8 | -f4:32 \f ~ f8 r | -f4:32 ~ f8 r | -R2*2 | -f4:32 \f ~ f8 r | -f4:32 ~ f8 r | -R2*3 | -r4 r8 f \p | -f2:8 | +R2*10 | +\context Staff <{\voiceone \clef "treble"; + r4^"Tri." r8 e'' | + [e e e e ] | + [e e e g,, ] | % In reality: e e e e | e4 + g4 r4 | + s4. \clef treble; e''8 | + [e e e e ] | + [e e e g,, ] | % In reality: e e e e | e4 + g4 r4 | + s2 | s2 | + s4. \clef treble; e''8 | + [e e e e ] | + e r r e | + s2 | s | s | + r4 r8 \clef treble; e | + [e e e e ] | + [e e e g,, ] | % In reality: e e e e +} + {\voicetwo r2 | + r | + r4 r8 \clef bass; f, \p | + [f \< f f \! f ] | + f4.:8 \f r8 | + r2 | + r4 r8 \clef bass; f \p | + f2:8 \< | + \! f4.:8 \f r8 | + f4:32 \f ~ f8 r | + f4:32 ~ f8 r | + r2 | + r | \clef bass; + f4:32 \f ~ f8 r | + f4:32 ~ f8 r | + r2 | r | r | + r4 r8 \clef bass; f \p | + }> +f,2:8 | f4.:8 r8 | R2*2 | c'4 \f r | @@ -813,20 +853,20 @@ s2*9 | r4 r8 \clef "treble"; c'-.^"Clar. I" | [bes-. a-. g-. f-. ] | [e-. d-. c-. ] r8 \clef "bass"; | -s2*21 | -r4 r8 \clef "treble"; [g''16^"oboe" \p ( a ] | -[ ) g8-. fis16 ( g ][ ) fis8-. f16 ( g ] | -[ ) f8-. e16 ( f ] ) e8-. \clef "bass"; s | +s2*24 | +%r4 r8 \clef "treble"; [g''16^"oboe" \p ( a ] | +%[ ) g8-. fis16 ( g ][ ) fis8-. f16 ( g ] | +%[ ) f8-. e16 ( f ] ) e8-. \clef "bass"; s | s2*77 | -r4 r8 \clef "treble"; c-.^"Clar. I" | +r4 r8 \clef "treble"; c'-.^"Clar. I" | [bes-. a-. g-. f-. ] | [e-. d-. c-. ] r8 \clef "bass"; | -s2*25 -r4 r8 \clef "treble"; a''^"Oboe" | -a-. [ gis-. gis-. \< g-.] | -[g-. fis-. \! fis-. ] \clef "bass"; s8 | +s2*28 +%r4 r8 \clef "treble"; a''^"Oboe" | +%a-. [ gis-. gis-. \< g-.] | +%[g-. fis-. \! fis-. ] \clef "bass"; s8 | s2*57 | -r4 r8 \clef "treble"; bes,^"Vi. I" ( ] | +r4 r8 \clef "treble"; bes'^"Vi. I" ( | ) bes'4. d,8 ( | ) d'4. c,8 ( | ) c'4. e,8 ( | diff --git a/mutopia/N.W.Gade/parts.ly b/mutopia/N.W.Gade/parts.ly index f505db6842..4040324fe7 100644 --- a/mutopia/N.W.Gade/parts.ly +++ b/mutopia/N.W.Gade/parts.ly @@ -1,5 +1,5 @@ \header{ -title = "Imellan Fjeldene. Ouverture"; +title = "Imellem Fjeldene. Ouverture"; composer = "Niels W Gade"; enteredby = "Mats Bengtsson"; latexheaders = "\\input global"; @@ -21,9 +21,6 @@ my_paper = \paper { \OrchestralPartStaffContext textScriptPadding = 5.0; } -\translator{\VoiceContext -\remove Auto_beam_engraver; -} \translator { \ScoreContext SkipBars = 1; @@ -32,21 +29,26 @@ my_paper = \paper { textEmptyDimension = 1; oldTieBehavior = 1; } + \translator { \VoiceContext + oldTieBehavior = 1; + textstyle = "italic"; + textEmptyDimension = 1; + } } \score{ \context Staff < \global \marks - \oboe - \oboehelp + \flauto + \flautohelp > \header{ - instrument = "Oboe"; + instrument = "Flauto"; } \paper{ \my_paper - output = "oboe"; + output = "flauto"; } \midi { \tempo 4=120; @@ -57,15 +59,15 @@ my_paper = \paper { \context Staff < \global \marks - \flauto - \flautohelp + \oboe + \oboehelp > \header{ - instrument = "Flauto"; + instrument = "Oboe"; } \paper{ \my_paper - output = "flauto"; + output = "oboe"; } \midi { \tempo 4=120; @@ -210,7 +212,7 @@ my_paper = \paper { \timphelp > \header{ - instrument = "Timpani"; + instrument = "Timpani \& Triangolo"; } \paper{ \my_paper diff --git a/mutopia/N.W.Gade/score.ly b/mutopia/N.W.Gade/score.ly index fc2c96224d..18e4e45e72 100644 --- a/mutopia/N.W.Gade/score.ly +++ b/mutopia/N.W.Gade/score.ly @@ -1,5 +1,5 @@ \header{ -title = "Imellan Fjeldene. Ouverture"; +title = "Imellem Fjeldene. Ouverture"; composer = "Niels W Gade"; enteredby = "Mats Bengtsson"; latexheaders = "\\input global"; @@ -23,13 +23,13 @@ copyright = "Mats Bengtsson, 1999. Free circulation permitted and " + \property Staff.instrument = "Flauto" \property Staff.instr = "Fl." \global + \marks \flauto > \context Staff = oboe < \property Staff.instrument = "Oboe" \property Staff.instr = "Ob." \global - \marks \oboe > \context Staff = clarI < @@ -68,14 +68,14 @@ copyright = "Mats Bengtsson, 1999. Free circulation permitted and " + > > \context StaffGroup = percussion <\context Staff = timpani < - \property Staff.instrument = "Timpani" - \property Staff.instr = "Timp." + \property Staff.instrument = "Timp. \& Triang." + \property Staff.instr = "Timp. \& Triang." \global \timpani > > \context StaffGroup = strings < -% \context GrandStaff = violins < + \context GrandStaff = violins < \context Staff = viI < \property Staff.instrument = "Violin I" \property Staff.instr = "Vi. I" @@ -88,7 +88,7 @@ copyright = "Mats Bengtsson, 1999. Free circulation permitted and " + \global \viII > -% > + > \context Staff = vla < \property Staff.instrument = "Viola" \property Staff.instr = "Vla." @@ -119,16 +119,15 @@ copyright = "Mats Bengtsson, 1999. Free circulation permitted and " + } \translator { \StaffContext \consists "Staff_margin_engraver"; -% marginHangOnClef = 1; - marginScriptPadding = "52.0"; + marginScriptPadding = "15.0"; textstyle = "italic"; textScriptPadding = 5.0; textEmptyDimension = 1; oldTieBehavior = 1; } -%\translator{\VoiceContext -%\remove Auto_beam_engraver; % Bug workaround! -%} + \translator { \VoiceContext + oldTieBehavior = 1; + } } } diff --git a/stepmake/bin/make-version.sh b/stepmake/bin/make-version.sh index 3be14353cb..2324ac1443 100755 --- a/stepmake/bin/make-version.sh +++ b/stepmake/bin/make-version.sh @@ -8,6 +8,6 @@ else versionfile=$1; fi -cat $versionfile| sed 's/#.*$//g'|sed 's/\([^ ]*\)[\t ]*=[ \t]*\([^ ]*\)$/#define \1 \"\2\"/g' +cat $versionfile| sed 's/#.*$//g'|sed 's/\([^ =]*\)[\t ]*=[ \t]*\([^ \t]*\)[ \t]*$/#define \1 \"\2\"/g' echo