This notation _may_ make a score harder to read than typing all meter changes explicitly. But the intention of this patch is not to provide a better notation but to better support an existing notation.
https://codereview.appspot.com/97110045/diff/80001/ly/music-functions-init.ly File ly/music-functions-init.ly (right): https://codereview.appspot.com/97110045/diff/80001/ly/music-functions-init.ly#newcode130 ly/music-functions-init.ly:130: alternatingTimeSignatures = On 2014/05/10 23:50:11, Keith wrote:
The function does not do what its name implies, alternate time
signatures, so
you need a long explanation.
LilyPond has a more understandable way to change the *printed*
time-signature,
with \override..stencil. I suggest you make a function to handle just
the part
that users might find difficult to do themselves: fractionList = #(define-scheme-function (parser location timesigs) (list?) (lambda (grob) (grob-interpret-markup grob ...
\new Staff \relative c' { \time 6/8 \once\override Score.TimeSignature.stencil = \fractionList #'((6 8)(5 8)(1)) c8 c c c c c \override Score.TimeSignature.stencil = ##f \time 5/8 c8 c c c c \revert Score.TimeSignature.stencil \time 3/4 ...
After some consideration I agree that it is better to make the function a little bit more basic. This leaves the user somewhat more to type, but also leaves some flexibility to him: - user can decide which context to override in (e.g. if Timing has been moved) - user can decide to make the first actual \time different from the displayed (although I can't think that's an actual use case) https://codereview.appspot.com/97110045/diff/80001/ly/music-functions-init.ly#newcode144 ly/music-functions-init.ly:144: #{ \once\override Staff.TimeSignature.stencil = On 2014/05/10 23:50:12, Keith wrote:
On 2014/05/10 22:38:29, uliska wrote: > I have the impression that Staff. works just as well?
Well, if there are many staves, your function changes the initial time
signature
for the whole score, but prints the special indication only on one
Staff, unless
the user includes the function in each staff. (There is a context
called Timing
for the general case; Timing is usually the same as Score, unless the
user has
different meter in each Staff.)
That's true and a case I missed to check. So overriding in the Score context is the correct way. Of course this is obsolete with the principal change to the function I'm going to do. https://codereview.appspot.com/97110045/ _______________________________________________ lilypond-devel mailing list lilypond-devel@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-devel