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) So would the following be an equivalent rewrite? centermarkup = { \once \override TextScript.self-alignment-X = #CENTER \once \override TextScript.X-offset = #ly:self-alignment-interface::aligned-on-x-parent } I can’t see a difference in the minimal example below (taken from the piece). Thanks, -Paul [1] http://www.mutopiaproject.org/cgibin/piece-info.cgi?id=1938 [2] https://lists.gnu.org/archive/html/lilypond-devel/2015-09/msg00273.html %%%%%%%%%%%%%%%%%% \version "2.18" 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)))) } centermarkup-new = { \once \override TextScript.self-alignment-X = #CENTER \once \override TextScript.X-offset = #ly:self-alignment-interface::aligned-on-x-parent } { \key fis \minor \time 3/2 fis2 \once \override Voice.TextScript.extra-offset = #'(0.0 . -1.1 ) eis1^\markup { \override #'( baseline-skip . 1.3 ) \column { \finger " 4" \finger " 1" \concat { \musicglyph #"scripts.tenuto" \hspace #0.8 \musicglyph #"scripts.turn" } } }-\tweak stencil ##f \turn | % 19 fis2 \centermarkup \once \override Voice.TextScript.extra-offset = #'(0.0 . -1.1 ) eis1^\markup { \override #'( baseline-skip . 1.3 ) \column { \finger " 4" \finger " 1" \concat { \musicglyph #"scripts.tenuto" \hspace #0.8 \musicglyph #"scripts.turn" } } }-\tweak stencil ##f \turn | % 19 fis2 \centermarkup-new \once \override Voice.TextScript.extra-offset = #'(0.0 . -1.1 ) eis1^\markup { \override #'( baseline-skip . 1.3 ) \column { \finger " 4" \finger " 1" \concat { \musicglyph #"scripts.tenuto" \hspace #0.8 \musicglyph #"scripts.turn" } } }-\tweak stencil ##f \turn | % 19 } %%%%%%%%%%%%%%%%%%% _______________________________________________ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user