2016-09-16 23:20 GMT+02:00 Abraham Lee <tisimst.lilyp...@gmail.com>: > All, > > Going off the of the thread here: > > http://lists.gnu.org/archive/html/lilypond-user/2016-09/msg00374.html > > and some personal email exchanges, I tried out a few things (found a working > solution, though not ideal) and ran into something curious. I'd like to do > something like the following, but it doesn't seem to work: > > %%%%%%%%% > > \version "2.19.36" > > myStartTextSpan = #(define-music-function (mus) (ly:music?) > #{ > \once \override TextSpanner.bound-details.left.text = "rit." > $mus \startTextSpan > #}) > > myStopTextSpan = #(define-music-function (mus) (ly:music?) > #{ > $mus \stopTextSpan > <>^\markup \italic "a tempo" > #}) > > \relative c' { > \myStartTextSpan b'1 > c1 > \myStopTextSpan e,1 > g1 > } > > %%%%%%%%% > > This results in "unexpected EVENT_IDENTIFIER" errors at both > > $mus \startTextSpan > > and > > $mus \stopTextSpan > > When I put everything into a single expression without using music > functions, it works as expected: > > %%%%%%%%% > > \version "2.19.36" > > \relative c' { > \override TextSpanner.bound-details.left.text = "rit." > b'1\startTextSpan > c1 > e,1\stopTextSpan > <>^\markup \italic "a tempo" > g1 > } > > %%%%%%%%% > > This is just a simple example. The real use-case has numerous other > \override statements that should occur prior to \startTextSpan, but the > general idea is the same. > > Anyone know what's going on here? > > Best, > Abraham
Your function doesn't integrate \start/stopTextSpan into the 'articulations of the music-arg, which is needed. A most boiled down example would be: mus = c'1 { \mus \tenuto } Would be probably nice to have it work, but I seem to remember there are some problems, forgot what exactly though. Your function could be done at the lines of: myStartTextSpan = #(define-music-function (mus) (ly:music?) (ly:music-set-property! mus 'articulations (cons #{ \startTextSpan #} (ly:music-property mus 'articulations))) #{ \override TextSpanner.color = #red #mus #}) \relative c' { \myStartTextSpan b'1 c \stopTextSpan } Cheers, Harm _______________________________________________ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user