From ebda49421d5926699628907ee06bcb1e3d0a9212 Mon Sep 17 00:00:00 2001 From: Devon Schudy Date: Fri, 4 Apr 2014 09:08:03 -0400 Subject: [PATCH] \partial now only makes measurePosition negative at the beginning of a score. This is more consistent, and means it doesn't disrupt bar numbers when used at the beginning of a measure or after \time. (issue 3888) This changes the semantics for issue 3645 in commit 2d34420eaf1ffdb620739e4640af42c0b3f812c1. --- Documentation/notation/rhythms.itely | 7 +++---- lily/partial-iterator.cc | 2 +- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/Documentation/notation/rhythms.itely b/Documentation/notation/rhythms.itely index c0e88b3e27..9ca613ed75 100644 --- a/Documentation/notation/rhythms.itely +++ b/Documentation/notation/rhythms.itely @@ -1433,11 +1433,10 @@ The property @code{measurePosition} contains a rational number, which is usually positive and indicates how much of the measure has passed at this point. @code{\partial @var{duration}} is defined such that no numbered bar gets created: when used at the -beginning of a measure, @code{measurePosition} is set to a +beginning of a score, @code{measurePosition} is set to a negative number, implying that the current bar will be -@emph{preceded} by additional material. When used after a measure -has already started, however, it moves the requested distance -before the @emph{end} of the bar. +@emph{preceded} by additional material. When used elsewhere, it +moves the requested distance before the @emph{end} of the bar. @lilypond[quote,verbatim,relative=1] \set Score.barNumberVisibility = #all-bar-numbers-visible diff --git a/lily/partial-iterator.cc b/lily/partial-iterator.cc index 37b2b603d5..9ed7debe2f 100644 --- a/lily/partial-iterator.cc +++ b/lily/partial-iterator.cc @@ -58,7 +58,7 @@ Partial_iterator::process (Moment m) Moment mp = robust_scm2moment (timing->get_property ("measurePosition"), Rational (0)); - if (mp.main_part_ > Rational (0)) + if (get_outlet ()->now_mom () > 0) mp.main_part_ = measure_length (timing); else mp.main_part_ = 0; -- 2.39.5