lilypond-user
[Top][All Lists]
Advanced

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

Re: Another time model (related to the usability thread)


From: Keith OHara
Subject: Re: Another time model (related to the usability thread)
Date: Tue, 3 Dec 2013 06:17:36 +0000 (UTC)
User-agent: Loom/3.14 (http://gmane.org/)

James Harkins <jamshark70 <at> gmail.com> writes:

> Keith OHara <k-ohara5a5a <at> oco.net> writes:
> 
> > If we had an easy way to enter a duration of until-X, then ability to
> > place the next note X comes naturally.  Sometimes 'X' is the end of
> > the entire piece.  Would that ease the difficulties mentioned above ?
> 
> It might, if such a function would conform the full-bar rests to the time
> signatures (which may be in another parallel expression). 

Full-bar rests already conform to the time-signatures.  (In 3/4 time,
though, R2. is printed to look the same as R1 in 4/4 time, per tradition.)

part=  { \compressFullBarRests R1*90/8 g'2. c'2. }  
global= {\time 4/4 s1*3 \time 9/8 s1*9/8*4 \time 3/4 s2.*5 \mark"!" s2.*2 }
\new Staff << \global \part >>

We can use the variable \part anywhere we want in the music, and the
multimeasure-rest engraver breaks the long rest at time-signature changes.
If it could finish the rest when it hears the "!" (and let the music
iterator know that it is time to move on to the g') then maybe we could
write \RestUntil"!" instead of figuring out the 90/8 duration.

> This still depends
> on some external marker. If it could handle something like "... until the
> next rehearsal mark - 4 bars," that could help somewhat, but it wouldn't
> help every case. Suppose I need to insert a bar, 2 bars before that
> rehearsal mark. Then I have to change the function invocation to "next
> rehearsal mark - 5 bars." Error prone. 

Instead of specifying an offset from a rehearsal mark, maybe simpler to
have an independent type of marker to put in the \global stream.  Then
the entries of the parts are visible all at once in \global
 global = { R1*32 \mark"A" R1*30 \marker"vln34" R1*18 \mark"B" }





reply via email to

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