bug-lilypond
[Top][All Lists]

## Re: grace synchronization

 From: Reinhold Kainhofer Subject: Re: grace synchronization Date: Sat, 27 Aug 2011 01:59:16 +0200 User-agent: KMail/1.13.6 (Linux/2.6.38-10-generic; KDE/4.7.0; i686; ; )

```Am Saturday, 27. August 2011, 01:31:43 schrieben Sie:
> If you have a series of negative infinitesimal values before each event,
> with preferences of the sort "always put this before that", ordinals might
> be used to describe it. Formally using pairs (r, x), where r is a
> Rational, and x an ordinal. See
> http://en.wikipedia.org/wiki/Ordinal_number
>
> You would only a small subset of the ordinal, enough to express those
> preferences. Then x = 0, the first ordinal, would be the time of the note,
> or last thing to output. Higher ordinals would be infinitesimal times
> before that.

That's exactly how a Moment in lilypond works: a Pair of rationals:
(timestep, grace time before the actual step)
written in short e.g. for an eighth grace before the second quarter:
1/4G-1/8
or 1/4G-0 (= 1/4) for the actual second quarter.

The problem is what is the default for the second value (the grace moment)?
While processing a voice like
c4 \clef "bass" c4
you have no information about graces in other voices, so you can either set 0
(together with the next c4, as it is currently done) or -inf (i.e. before the
c4 and all grace notes appearing at that time step). You will have to decide
to assign the clef to either 1/4G-0 or 1/4G-inf.

Now, either of those breaks when combined with one of the following two:

c4 \clef "bass" \grace e8 c4   (clef at 1/4G-1/8 or 1/4G-inf)
or
c4 \grace e8 \clef "bass" c4   (clef at 1/4G-0 in both cases)

Cheers,
Reinhold

--
------------------------------------------------------------------