[Top][All Lists]

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

Add tempo spanners

From: Xavier Scheuer
Subject: Add tempo spanners
Date: Wed, 13 Feb 2013 00:51:02 +0100

On 4 February 2013 16:01, Kieren MacMillan
<address@hidden> wrote:
> Hello all!
> A few weeks ago, in response to Mike Solomon's call for features and bugs, I 
> posted a request:
>>> 2. Allowing a text markup (especially a MetronomeMark) to have a "minimum 
>>> measure length". This would avoid collisions, particularly where there are 
>>> lots of multi-measure rests (e.g., orchestral parts).
> His response was:
>> #2 is doable via a hack.  Minimum lengths can only work if you use spanners, 
>> but you can hijack the tempo print function for a text spanner (and suppress 
>> the line afterwards) and then create a scheme engraver for text spanner that 
>> uses whatever as the left bound and the next bar line's non-musical paper 
>> column as the right bound.  Or you could just use the existing engraver and 
>> use the last note in the measure as a bound, although this will potentially 
>> create uneven spacing in a measure.
>> You'll have to manually put this TextSpanner in the topmost context and/or 
>> use ly:side-position-interface::move-to-extremal-staff (I'd recommend the 
>> former, as the latter is powerful but falls in the category of LilyPond 
>> black magic).  Make sure to use springs and rods and set a minimum-length - 
>> there's an example in the docs with a hairpin or glissando or something 
>> spanner-y that does this.
> Is there anyone out there who can work on this with me? I've got some money 
> to put towards the implementation.

It would be great to have a TempoTextSpanner, for example in order to
handle common notation such as

  rit. - - - - a tempo
  rall - - - -

I do not see this request tracked yet.  Bug squad, could you add it?
Maybe Kieren or Mike could give a proper description.
Link to the original thread:


Xavier Scheuer <address@hidden>

reply via email to

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