Paul Morris <[email protected]> writes:

> Hi all,  Here’s a tricky one…  I’m working on updating a piece from the 
> Mutopia Project[1] (from LilyPond 2.16.1 to 2.19.35) and it uses the 
> following:
>
> centermarkup = {
>   \once \override TextScript.self-alignment-X = #CENTER
>   \once \override TextScript.X-offset =#(ly:make-simple-closure
>     `(,+
>       ,(ly:make-simple-closure (list
>         ly:self-alignment-interface::centered-on-x-parent))
>       ,(ly:make-simple-closure (list
>         ly:self-alignment-interface::x-aligned-on-self))))
> }
>
> But ly:make-simple-closure is no longer around[2].  So how to rewrite this 
> without it?
>
> It seems to be documented (barely) in the 2.18 extending manual:
> http://www.lilypond.org/doc/v2.18/Documentation/extending/callback-functions.html
>
> Looking in the source code I find the example given there from 
> define-grobs.scm:
>
> (X-offset . ,(ly:make-simple-closure
>                       `(,+
>                         ,(ly:make-simple-closure
>                           (list 
> ly:self-alignment-interface::centered-on-x-parent))
>                         ,(ly:make-simple-closure
>                           (list 
> ly:self-alignment-interface::x-aligned-on-self)))))
>
> and see it has now become the following in 2.19.35:
>
> (X-offset . ,ly:self-alignment-interface::aligned-on-x-parent)

It's probably the same if parent-alignment-X is set to ,CENTER as well.

-- 
David Kastrup

_______________________________________________
lilypond-user mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/lilypond-user

Reply via email to