Wouldn't the <>\stopGroup extend the group one note too far?
On 05/02/17 10:06, Thomas Morley wrote:
2017-05-02 8:29 GMT+02:00 Urs Liska <[email protected]>:Hi all, I'm trying to apply event functions to music passed into a music function like that: \version "2.19.57" test = #(define-music-function (mus)(ly:music?) #{ #mus \startGroup #}) { \test c' d' e' f' \stopGroup } (of course this is not what I ultimately want to achieve, but the nucleus from which I'll be able to continue on my own). This fails with "error: syntax error, unexpected EVENT_IDENTIFIER". I think it is because the #mus expression is somehow already complete (differently from when used in regular input) and I have to somehow *apply* the \startGroup event function to the #mus argument. From \displayMusic I can see that it is added as a NoteGroupingEvent to the note's articulations, but I'd like to ask if there's a more straightforward way to attach the event to the music than rebuilding the music expression in Scheme. OTOH I will want to do that for the first *and last* element in a music expression (in order to apply the start and stop command to a sequence of notes), so I may *have* to extract the Scheme representation anyway? TIA Urs\layout { \context { \Voice \consists "Horizontal_bracket_engraver" } } test = #(define-music-function (mus)(ly:music?) #{ <>\startGroup $mus <>\stopGroup #}) { \test { c' d' e' f' } } Should do the trick. Cheers, Harm _______________________________________________ lilypond-user mailing list [email protected] https://lists.gnu.org/mailman/listinfo/lilypond-user
_______________________________________________ lilypond-user mailing list [email protected] https://lists.gnu.org/mailman/listinfo/lilypond-user
