From 669494d7e9ab0156a1ebc8804a24f136f551d803 Mon Sep 17 00:00:00 2001 From: Han-Wen Nienhuys Date: Thu, 14 Dec 2000 18:44:08 +0100 Subject: [PATCH] release: 1.3.117 ============ * Bugfix: don't set beaming for outer half beams. This fixes some slurs attached to stem end. * Bugfixes for (de)crescendo spanners and generic text spanners * Bugfix: Slur::set_interface (): don't overwrite, but copy attachment property. * Started documenting some new or not too wel documented features. * Bugfix: only assume making deep split html documentation when makeinfo --version 4.0.jcn2 is available. Although the documentation should now build with plain makeinfo 4.0, some links will be broken. * Bugfix: lilypond-book: check for .texidoc files *after* running lilypond. 1.3.116. --- CHANGES | 42 ++------ Documentation/user/refman.itely | 18 +++- VERSION | 4 +- input/bugs/voltastart.ly | 132 ++++++++++++++++++++++++++ lily/global-translator.cc | 4 +- lily/grace-engraver-group.cc | 4 +- lily/grace-performer-group.cc | 4 +- lily/include/global-translator.hh | 2 +- lily/include/grace-engraver-group.hh | 2 +- lily/include/grace-performer-group.hh | 2 +- lily/include/score-engraver.hh | 2 +- lily/include/score-performer.hh | 2 +- lily/score-engraver.cc | 2 +- lily/score-performer.cc | 5 +- make/out/lilypond.lsm | 8 +- make/out/lilypond.spec | 4 +- 16 files changed, 176 insertions(+), 61 deletions(-) create mode 100644 input/bugs/voltastart.ly diff --git a/CHANGES b/CHANGES index 958aeaee50..fea19d21a0 100644 --- a/CHANGES +++ b/CHANGES @@ -1,22 +1,9 @@ ---- ../lilypond-1.3.116.jcn3/CHANGES Tue Dec 12 23:23:42 2000 -++ b/CHANGES Wed Dec 13 22:15:51 2000 -@@ -1,3 +1,9 @@ 1.3.116.jcn4 ============ * Bugfix: don't set beaming for outer half beams. This fixes some slurs attached to stem end. - 1.3.116.jcn3 - ============ - --- ../lilypond-1.3.116.jcn2/CHANGES Mon Dec 11 22:17:51 2000 -++ b/CHANGES Tue Dec 12 23:23:42 2000 -@@ -1,7 +1,15 @@ --1.3.116.jcn2 -1.3.116.jcn3 - ============ - --* Bugfix: generic text-spanner: set padding property to non-empty value. * Bugfixes for (de)crescendo spanners and generic text spanners * Bugfix: Slur::set_interface (): don't overwrite, but copy attachment @@ -24,35 +11,13 @@ property. * Started documenting some new or not too wel documented features. -1.3.116.jcn2 -============ - - * Bugfix: only assume making deep split html documentation when - makeinfo --version 4.0.jcn2 is available. Although the documentation--- ../lilypond-1.3.116.jcn1/CHANGES Sat Dec 9 23:51:08 2000 -++ b/CHANGES Mon Dec 11 22:17:51 2000 -@@ -1,3 +1,12 @@ -1.3.116.jcn2 -============ - -* Bugfix: generic text-spanner: set padding property to non-empty value. - * Bugfix: only assume making deep split html documentation when makeinfo --version 4.0.jcn2 is available. Although the documentation should now build with plain makeinfo 4.0, some links will be broken. - 1.3.116.jcn1 - ============ - --- ../lilypond-1.3.116/CHANGES Fri Dec 8 14:40:11 2000 -++ b/CHANGES Sat Dec 9 23:51:08 2000 -@@ -1,3 +1,8 @@ -1.3.116.jcn1 -============ - * Bugfix: lilypond-book: check for .texidoc files *after* running lilypond. - 1.3.115.jcn2 - ============ - 1.3.116.mb1 +1.3.116.mb1 =========== * Bugfix: convert-ly.py: Correct syntax for inserted \version, @@ -65,6 +30,11 @@ should now build with plain makeinfo 4.0, some links will be broken. * Bugfix: some examples updated +* Bugfix: beamed grace notes (reinstate process_music () call in +Grace_engraver_group::process() ) + +* Rename: Global_translator::process -> Global_translator::one_time_step (). + 1.3.115.jcn2 ============ diff --git a/Documentation/user/refman.itely b/Documentation/user/refman.itely index 90e9e53e42..381fb4f452 100644 --- a/Documentation/user/refman.itely +++ b/Documentation/user/refman.itely @@ -143,6 +143,8 @@ forbidden after top level assignments. +@unnumberedsubsec Comments + @cindex comment @indexcode{%} @@ -152,6 +154,8 @@ A one line comment is introduced by a `@code{%}' character. Block comments are started by `@code{%@{}' and ended by `@code{%@}}'. They cannot be nested. +@unnumberedsubsec Scheme + @indexcode{#} LilyPond contains a Scheme interpreter (the GUILE library) for @@ -173,6 +177,8 @@ the result is discarded. Example: [refer appendix/ online intro on Scheme] +@unnumberedsubsec Keywords + @cindex keyword Keywords start with a backslash, followed by a number of lower case @@ -191,12 +197,16 @@ script stylesheet skip textscript tempo translator transpose type @end example +@unnumberedsubsec Integers + @cindex integer Formed from an optional minus sign followed by digits. Arithmetic operations cannot be done with integers, and integers cannot be mixed with reals. +@unnumberedsubsec Reals + @cindex real @@ -216,10 +226,9 @@ centimeters, respectively. This converts the number to a real that is the internal representation of dimensions. - +@unnumberedsubsec @cindex string - Begins and ends with the `@code{"}' character. To include a `@code{"}' character in a string write `@code{\"}'. Various other backslash sequences have special interpretations as in the C language. A string @@ -228,7 +237,6 @@ that contains no spaces can be written without the quotes. See depending on the situation. Strings can be concatenated with the `@code{+}' operator. - The tokenizer accepts the following commands. They have no grammatical function, hence they can appear anywhere in the input. @@ -239,6 +247,8 @@ function, hence they can appear anywhere in the input. This command is used in init files to signal that the user file must be read. This command cannot be used in a user file. +@unnumberedsubsec file inclusion + @example \include@keyindex{include} @var{file} @end example @@ -247,6 +257,8 @@ Include @var{file}. The argument @var{file} may be a quoted string (an unquoted string will not work here!) or a string identifier. The full filename including the @file{.ly} extension must be given, +@unnumberedsubsec Version information + @example \version@keyindex{version} @var{string} ; @end example diff --git a/VERSION b/VERSION index 5426b74cbd..c177f64471 100644 --- a/VERSION +++ b/VERSION @@ -1,8 +1,8 @@ PACKAGE_NAME=LilyPond MAJOR_VERSION=1 MINOR_VERSION=3 -PATCH_LEVEL=116 -MY_PATCH_LEVEL=jcn4 +PATCH_LEVEL=117 +MY_PATCH_LEVEL= # use the above to send patches: MY_PATCH_LEVEL is always empty for a # released version. diff --git a/input/bugs/voltastart.ly b/input/bugs/voltastart.ly new file mode 100644 index 0000000000..599c2450c8 --- /dev/null +++ b/input/bugs/voltastart.ly @@ -0,0 +1,132 @@ +%{ + + +I recently discovered that although the following patch seemed to fix +the original complaint that it causes other problems (the following +tests were done in 1.3.116. + +I have attached a file which has several break-volta interactions. + +With the test file and unmodified 1.3.116 I see the following: + +Bar 3 - 1st volta spanner centered on first note - prefer it to start + closer to key signature (can live with this) +Bar 6 - 1st volta continuation - perfect +Bar 9 - 2nd volta spanner starts on left edge of key signature - prefer + it to start right of key signature +Bar 12 1st volta starts between first two slurred notes in measure - + this is not acceptable +Bar 17 like above with hairpin. +Bar 23 like above (I had expected this to be OK) +Bar 20 2nd volta continuation perfect + +With the test file and 1.3.116 modified as below I see the following: + +Bar 3 Perfect +Bar 6 1st volta continuation starts with staff - oops +Bar 9 2nd volta starts on papers left margin - OOPS! +Bar 12 Perfect +Bar 17 Perfect +Bar 20 2nd volta continuation starts with staff - oops +Bar 23 Perfect + +%} + +voice1 = \notes { + \clef bass; + \property Staff.instrument = "Bass" + \property Staff.instr = "B" + \key f \minor; + \time 4/4; + f,2 ( ) f,8 r8 f8 e8 + \repeat volta 2 + { + d8. d16 e8. f16 f8 c8 c16 c8. \break + } + \alternative + { + { + f,2 ( ) f,8 r8 f8 e8 + f,2 ( ) f,8 r8 f8 e8 + g1 \break + f,2 ( ) f,8 r8 f8 e8 + f,2 ( ) f,8 r8 f8 e8 + g1 \break + } + { + f,2. r8 c16 c16 | + } + } +} +voice2 = \notes { + \repeat volta 2 + { + bes8 bes8 c'8 c'8 a4 r8 g16 f16 | + d'8. c'16 c'8. d'16 c'8 c'8 f16 g8. | + \break + } + \alternative + { + { a2 ( ) a8 r8 a8 bes8 } + { a2. r8 g16 f16 | + d'8. c'16 c'8. d'16 c'8 c'8 c'16 c'8. | + } + } +} +voice3 = \notes { + \repeat volta 2 + { + bes8 bes8 c'8 c'8 a4 r8 g16 f16 | + d'8. c'16 c'8. d'16 c'8 c'8 f16 g8. | + \break + } + \alternative + { + { a2 \> a8 r8 a8 \! bes8 + } + { a2. r8 g16 f16 | + d'8. c'16 c'8. d'16 c'8 c'8 c'16 c'8. | \break + d'8. c'16 c'8. d'16 c'8 c'8 c'16 c'8. | + } + } +} +voice4 = \notes { + \repeat volta 2 + { + bes8 bes8 c'8 c'8 a4 r8 g16 f16 | + d'8. c'16 c'8. d'16 c'8 c'8 f16 g8. | \break + } + \alternative + { + { + a2 a8 r8 a8 bes8 + + } + { + a2. r8 g16 f16 | + d'8. c'16 c'8. d'16 c'8 c'8 c'16 c'8. | + } + } +} +\score{ + \notes < + + + \context Staff="4" + { + \$voice1 + \$voice2 + \break + \$voice3 + \$voice4 + } + + > + \paper { + font_normal = 12.; + \translator { + \StaffContext + \consists Instrument_name_engraver; + } + } +} diff --git a/lily/global-translator.cc b/lily/global-translator.cc index eeb86e177e..61b724d40d 100644 --- a/lily/global-translator.cc +++ b/lily/global-translator.cc @@ -68,7 +68,7 @@ Global_translator::get_output_p() } void -Global_translator::process () +Global_translator::one_time_step () { } void @@ -97,6 +97,6 @@ Global_translator::run_iterator_on_me (Music_iterator * iter) prepare (w); iter->process (w); - process (); + one_time_step (); } } diff --git a/lily/grace-engraver-group.cc b/lily/grace-engraver-group.cc index 0f484ae35a..e02d09be25 100644 --- a/lily/grace-engraver-group.cc +++ b/lily/grace-engraver-group.cc @@ -66,10 +66,10 @@ Grace_engraver_group::Grace_engraver_group() } void -Grace_engraver_group::process () +Grace_engraver_group::one_time_step () { calling_self_b_ = true; - //process_music (); + process_music (); announces(); pre_move_processing(); check_removal(); diff --git a/lily/grace-performer-group.cc b/lily/grace-performer-group.cc index e1fc4503a8..f7d2929561 100644 --- a/lily/grace-performer-group.cc +++ b/lily/grace-performer-group.cc @@ -68,10 +68,10 @@ Grace_performer_group::Grace_performer_group() } void -Grace_performer_group::process () +Grace_performer_group::one_time_step () { calling_self_b_ = true; - //process_music (); + // process_music (); announces(); pre_move_processing(); check_removal(); diff --git a/lily/include/global-translator.hh b/lily/include/global-translator.hh index 34e9921142..1afb8483d1 100644 --- a/lily/include/global-translator.hh +++ b/lily/include/global-translator.hh @@ -31,7 +31,7 @@ public: virtual Music_output *get_output_p (); virtual void prepare (Moment); - virtual void process(); + virtual void one_time_step (); virtual void finish(); virtual void start(); diff --git a/lily/include/grace-engraver-group.hh b/lily/include/grace-engraver-group.hh index dfc0eb2ceb..2a47925d34 100644 --- a/lily/include/grace-engraver-group.hh +++ b/lily/include/grace-engraver-group.hh @@ -27,7 +27,7 @@ protected: virtual void announce_grob (Grob_info); virtual void start (); virtual void finish (); - virtual void process (); + virtual void one_time_step (); virtual void each (Method_pointer); virtual void finalize () ; virtual void typeset_grob (Grob*); diff --git a/lily/include/grace-performer-group.hh b/lily/include/grace-performer-group.hh index be96df4ce1..5d4b3400e1 100644 --- a/lily/include/grace-performer-group.hh +++ b/lily/include/grace-performer-group.hh @@ -25,7 +25,7 @@ protected: virtual void announce_element (Audio_element_info); virtual void start (); virtual void finish (); - virtual void process (); + virtual void one_time_step (); virtual void each (Method_pointer); virtual void finalize () ; virtual void play_element (Audio_element*); diff --git a/lily/include/score-engraver.hh b/lily/include/score-engraver.hh index 56618c7934..faeecc9127 100644 --- a/lily/include/score-engraver.hh +++ b/lily/include/score-engraver.hh @@ -40,7 +40,7 @@ public: protected: virtual void prepare (Moment); virtual void finish(); - virtual void process(); + virtual void one_time_step(); virtual int depth_i() const { return Global_translator::depth_i ();} protected: diff --git a/lily/include/score-performer.hh b/lily/include/score-performer.hh index 3abe6f1d99..b5999c53f6 100644 --- a/lily/include/score-performer.hh +++ b/lily/include/score-performer.hh @@ -27,7 +27,7 @@ public: protected: virtual void finish(); virtual void prepare (Moment mom); - virtual void process(); + virtual void one_time_step(); virtual void start(); virtual void initialize (); virtual void announce_element (Audio_element_info); diff --git a/lily/score-engraver.cc b/lily/score-engraver.cc index 9faf178ff6..71501fed7b 100644 --- a/lily/score-engraver.cc +++ b/lily/score-engraver.cc @@ -113,7 +113,7 @@ Score_engraver::finalize() } void -Score_engraver::process() +Score_engraver::one_time_step() { process_music(); announces(); diff --git a/lily/score-performer.cc b/lily/score-performer.cc index 317bc3ac9d..9c9d01e20e 100644 --- a/lily/score-performer.cc +++ b/lily/score-performer.cc @@ -65,9 +65,10 @@ Score_performer::prepare (Moment m) void -Score_performer::process() +Score_performer::one_time_step () { - //process_music(); + // fixme: put this back. + // process_music(); announces (); pre_move_processing(); check_removal(); diff --git a/make/out/lilypond.lsm b/make/out/lilypond.lsm index 14479ff46b..66f9edb958 100644 --- a/make/out/lilypond.lsm +++ b/make/out/lilypond.lsm @@ -1,15 +1,15 @@ Begin3 Title: LilyPond -Version: 1.3.116 -Entered-date: 08DEC00 +Version: 1.3.117 +Entered-date: 14DEC00 Description: Keywords: music notation typesetting midi fonts engraving Author: hanwen@cs.uu.nl (Han-Wen Nienhuys) janneke@gnu.org (Jan Nieuwenhuizen) Maintained-by: hanwen@stack.nl (Han-Wen Nienhuys) Primary-site: sunsite.unc.edu /pub/Linux/apps/sound/convert - 1000k lilypond-1.3.116.tar.gz + 1000k lilypond-1.3.117.tar.gz Original-site: ftp.cs.uu.nl /pub/GNU/LilyPond/development/ - 1000k lilypond-1.3.116.tar.gz + 1000k lilypond-1.3.117.tar.gz Copying-policy: GPL End diff --git a/make/out/lilypond.spec b/make/out/lilypond.spec index b4ca44a16d..d8619ec6e9 100644 --- a/make/out/lilypond.spec +++ b/make/out/lilypond.spec @@ -1,11 +1,11 @@ %define info yes Name: lilypond -Version: 1.3.116 +Version: 1.3.117 Release: 1 License: GPL Group: Applications/Publishing -Source0: ftp.cs.uu.nl:/pub/GNU/LilyPond/development/lilypond-1.3.116.tar.gz +Source0: ftp.cs.uu.nl:/pub/GNU/LilyPond/development/lilypond-1.3.117.tar.gz Summary: A program for printing sheet music. URL: http://www.cs.uu.nl/~hanwen/lilypond # Icon: lilypond-icon.gif -- 2.39.5