Hi Mike,

Excellent work!


I'm glad you think so!


>
> I've attached a new file that addresses some of the issues you identify
> above:
>
> --) It uses axis-group::width to box accidentals
>

Beautiful!  Now there's really no need for the extra padding properties.
 (I've kept them in the attached file, but combined them into a single
property which takes a pair = 'extra-padding.)


> --) It creates a FrameStub grob to occupy the horizontal space that a
> frame line takes up (note that I don't know if this actually works - I'm
> not sure how to test it - but at least it doesn't crash!).  Whenever you
> have a spanner that somehow occupies horizontal space at its bounds, you
> can create stub grobs that approximate this space.  This technique also
> works for items that, for whatever reason, have heights that are difficult
> to approximate (see SpanBarStub and StemStub, for example).
>

This works great for spacing on the left side.  It wasn't working on the
right, so I added 'extender-length in (plus a slight correction accounting
for arrow-length, etc., which should be fairly easy to calculate). Now it
will push everything forward nicely.

One thing I've noticed, though, is that the line will not cross a bar line.
 If I increase the length of the extender, the bar line is simply pushed to
the right.  I figured out one way around this--namely, setting the X-extent
of the bar line to (+inf.0 . -inf.0), which is what I do in the attached
file. Of course this has other consequences.  Is there any other way?

--) It gets rid of some dead or unused code.
>

Thank you very much for your improvements and explanations--I think I've
learned quite a bit!

Best,
David

Attachment: frameEngraver3.ly
Description: Binary data

_______________________________________________
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user

Reply via email to