]> git.donarmstrong.com Git - lilypond.git/commitdiff
Fix #262.
authorHan-Wen Nienhuys <hanwen@xs4all.nl>
Wed, 31 Jan 2007 17:24:23 +0000 (18:24 +0100)
committerHan-Wen Nienhuys <hanwen@xs4all.nl>
Wed, 31 Jan 2007 17:24:23 +0000 (18:24 +0100)
Add extendersOverRests property.

input/regression/lyric-extender-rest.ly [new file with mode: 0644]
lily/extender-engraver.cc
scm/define-context-properties.scm

diff --git a/input/regression/lyric-extender-rest.ly b/input/regression/lyric-extender-rest.ly
new file mode 100644 (file)
index 0000000..ea096f7
--- /dev/null
@@ -0,0 +1,25 @@
+
+\header {
+
+  texidoc = "If @code{extendersOverRests} is set, an extender
+is not terminated upon encountering a rest. "
+
+}
+
+\paper {
+  ragged-right = ##T
+}
+
+\version "2.11.15"
+
+<<
+  \new Voice = "one" \relative c'' {
+    c4\melisma 
+    c4 r c\melismaEnd c
+  }
+  \new Lyrics \lyricsto "one" {
+    \set extendersOverRests = ##t 
+
+    Test __ end
+  }
+>>
index efbb82d05c433b299044b52c005fc8e10c353b4b..ced1f123ce2b0fd9ebefc5b62ada4b974d88d52c 100644 (file)
@@ -35,7 +35,9 @@ public:
 protected:
   DECLARE_TRANSLATOR_LISTENER (extender);
   DECLARE_ACKNOWLEDGER (lyric_syllable);
+
   virtual void finalize ();
+
   void stop_translation_timestep ();
   void process_music ();
 };
@@ -100,7 +102,8 @@ Extender_engraver::stop_translation_timestep ()
        }
       else
        {
-         if (pending_extender_)
+         if (pending_extender_
+             && !get_property ("extendersOverRests"))
            {
              completize_extender (pending_extender_);
              pending_extender_ = 0;
@@ -154,5 +157,5 @@ ADD_ACKNOWLEDGER (Extender_engraver, lyric_syllable);
 ADD_TRANSLATOR (Extender_engraver,
                /* doc */ "Create lyric extenders",
                /* create */ "LyricExtender",
-               /* read */ "",
+               /* read */ "extendersOverRests",
                /* write */ "");
index 7dda76b16bf885aa8986e1a502dc41573c1efdb3..0197dfea479ccadd62a70e88e2600a00e009daac 100644 (file)
@@ -205,6 +205,8 @@ note, one above and one below the chord.")
 changes. @samp{\\override} of the @code{break-visibility} property will set the
 visibility for normal (i.e. at the start of the line) key signatures.")
 
+     (extendersOverRests ,boolean? "Whether to continue extenders as
+they cross a rest.")
      (extraNatural ,boolean? "Whether to typeset an
 extra natural sign before accidentals changing from a non-natural to 
 another non-natural.")