lilypond-auto
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Lilypond-auto] Issue 3560 in lilypond: Completion_heads_engraver wi


From: lilypond
Subject: Re: [Lilypond-auto] Issue 3560 in lilypond: Completion_heads_engraver with \scaleDurations
Date: Mon, 14 Oct 2013 20:36:35 +0000


Comment #41 on issue 3560 by address@hidden: Completion_heads_engraver with \scaleDurations
http://code.google.com/p/lilypond/issues/detail?id=3560

This patch doesn't change the default behavior, so the original email request <http://lists.gnu.org/archive/html/bug-lilypond/2013-09/msg00061.html> and issue 1772 each need overrides of 'completionFactorUnit' to get their desired behaviors.

But it is very hard to work out in the "ancient melody" regression test what scaling factors are in effect, and thus why the various settings of completionFactorUnit work as they do.

There is a 'todo' comment in the patch suggesting a new property, maybe called 'completionFactor', to set the preferred scaling of the split notes, which \scaleDurations would update. If that is implemented, we won't need the complexity of this patch, so let's just skip to what we really want.

Let \scaleDurations 2/3 {..} and \tuplet 3/2 {..} set completionFactor to 2/3 (times any previously set value for when \tuplets are nested) at the beginning of the {..} and revert it at the end. Let Completion_*_engraver split notes into durations that use completionFactor. Then
 \scaleDurations 2/1 { c4 d2 c4 }  =>  { c4*2 d4*2~ | d4*2 c4*2 }
 { d1*3/2 r2 }  =>  { d1~ | d2 r2 }
 { c2 d1 c2 }   =>  { c2 d2~ | d2 c2 }
and everybody wins.

(Better if \tuplet and \scaleDurations and \times insert events that Completion_*_engraver listens for, instead of PropertySets, just in case somebody moves the Completion_*_engraver to Staff context, for some unforeseen reason.)

--
You received this message because this project is configured to send all issue notifications to this address.
You may adjust your notification preferences at:
https://code.google.com/hosting/settings



reply via email to

[Prev in Thread] Current Thread [Next in Thread]