> You're the first one ever to ask about broken spanners, (I am
> surpised no-one did it before), but there is no real way to control
> them except by getting your hands dirty. The problem is that during
> input & interpretation one doesn't know if a spanner is broken or
> not.  I haven't thought of what kind of interface should be
> provided.

What about this:

Any spanner should be a triple of property sets for

  not-broken
  before-break
  after-break

and the particular callbacks should use the proper set.  (This is
similar to TeX's \discretionary primitive.)

In the normal case, the properties from non-broken are simply copied
to before-break and after-break.

>     \property Voice.Tie \override #'after-line-breaking-callback =
>        #my-callback
>     c1\break ~ c2 ~ c

While this works for a single voice, it fails for chords, as far as I
can see -- right here you have to fiddle with offsets!  At least
provide something similar to the accidental interface, e.g.

  \context Staff \outputproperty #(make-after-break-position-checker 0)
                                 #'extra-offset = #'(0 . 2)
  \context Staff \outputproperty #(make-after-break-position-checker -1)
                                 #'extra-offset = #'(0 . 1)

(I leave it to you to write a nice make-after-break-position-checker
function :-)

I think modifying the callback isn't the right solution since you
can't pass parameters, right?


    Werner

_______________________________________________
Lilypond-devel mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/lilypond-devel

Reply via email to