[Top][All Lists]

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

Re: Widening ledger lines by overriding LedgerLineSpanner

From: Paul Morris
Subject: Re: Widening ledger lines by overriding LedgerLineSpanner
Date: Wed, 28 May 2014 14:21:57 -0700 (PDT)

tisimst wrote
> It appears that what you are seeing is more than just the ledger line's
> "length-fraction" and "minimum-length-fraction" that contribute to the
> horizontal spacing of the notes. Let's explore...

Hi Abraham,

Thanks so much!  Your images are especially helpful for understanding what's
going on.  

tisimst wrote
> To answer your first question, if you look into the IR a little more, at
> least as I read and understand it, it appears that the the name
> "minimum-length-fraction" is simply used in at least two places--ledger
> lines and stems. The good news is that they remain in different scopes, so
> they won't affect each other. 

That's good to know, and makes sense.  I think you meant "length-fraction"
here?  I see it now under stem-interface:  
I should have looked there before.

tisimst wrote
> With that in mind, if you do something crazy like "\override
> LedgerLineSpanner.length-fraction = #4.0" you'll see that the two notes on
> the ends will extend outwards quite far, while the internal sides of the
> spanners will stop just before they hit another ledger line. In other
> words, they will extend, but only so far as a collision does not occur
> (whichever is larger between the two properties):

Ok, I see how it works.  So overriding LedgerLineSpanner.length-fraction is
the way to widen ledger lines.  I'll add a snippet to the LSR showing how to
do this since there doesn't seem to be one there now.  Might be worth
including this in the docs somewhere too.  Then there would be no need to
dig into the internals reference to figure this out.

tisimst wrote
> To answer your second question, I think there is a mis-understanding of
> what "minimum-length-fraction" is actually supposed to do. Similar to the
> vertical spacing property "minimum-distance",  this forces things to be
> spread out if they are too close, but not until then. You probably tried
> this, but if you change "minimum-length-fraction" to 0.0, you'll notice
> you get the same results as at something like 0.25 if it's right next to
> another note on a ledger line. This is the collision engine doing its
> work. There is a minimum separation (not sure what controls that, yet)
> between ledger lines that is enforced. If we change it to #1.0, then we
> see the larger separation, even without collisions:

Hmmm, indeed I was confused by the name "minimum-length-fraction" and its
description "minimum length of ledger line as fraction of note head size." 
Now I think I see how it works.  There's more going on than that, and as
your third image shows it can get somewhat complex... 

It seems that if minimum-length-fraction is larger than length-fraction then
it doesn't affect the length of ledger lines, but only the spacing between
them and other things.  If it is smaller than length-fraction then it does
work as a minimum length for the ledger line in cases where there are
collisions between ledger lines and anything that is not a ledger line.  (?)

Thanks again for your help figuring this out and for explaining it so well!


View this message in context:
Sent from the User mailing list archive at

reply via email to

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