2017-02-20 16:31 GMT+01:00 zaord <[email protected]>:
> Hello,
>
> I coded a script that adds markup. This function \ diag allows me to display
> a customized diagram (here left hand "button board" of an accordion) and I
> would like to apply it to all the elements of a chordmode {}.
> The script below works very well but only for a chordmode with 1 element.
I have my doubts. Usually TextScript is not allowed in
ChordNames-context, unless you include the relevant engraver.
> If
> the Chordmode have two elements, then the diagram is writing over himself
> but don't follow the score !
>
> In another hand, lilypond does not recreate new diagrams and the diagrams
> are superpozed ...
You need to iterate your function over the argument applying it to
every event-chord found.
Something at the lines of
diag=
#(define-music-function (parser location music)
(ly:music?)
(music-map
(lambda (m)
(if (music-is-of-type? m 'event-chord)
#{ <>^\markup \complete #m $m #}
m))
music))
And later:
\new ChordNames \with { \consists "Text_engraver" } \diag \chordNames
HTH,
Harm
_______________________________________________
lilypond-user mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/lilypond-user