Urs Liska <li...@openlilylib.org> writes: > Indeed it does. > But now that I know how to mark up a whole music expression with a > custom music-property I see that it may not actually be what I need. > Is it possible to read out the properties of music expressions in an > engraver?
No. > Or do these only respond to grobs? Is *that* what (process-music) is > for? Engravers respond to grobs (produced by engravers) and to stream events (produced by iterators). process-music does not take an argument. It's merely a stage of processing stream events. Stuff like SequentialMusic expressions never arrive at engravers: they are processed by the Sequential_iterator which converts the contained elements into StreamEvent data produced at the proper music time and broadcast to the right context and its parents. > What I want to achieve is: > > * Have a music function take a music argument > * mark that up with an annotation (that addresses the whole > expression, not just a single grob or moment) > * in an engraver process the annotation as a whole, for example in > order to print the begin and end of the annotated music. > > If that isn't possible with the music-property I would probably attach > grob-properties to the first and last element in the music expression > and try to figure out the extent of the annotation by that (will > probably have to do some ID referencing to match the begin/end grobs). More like attaching stuff to the first and last rhythmic-event. But you may be better off attaching applyContext calls of the right nature to the front and back of the expression. -- David Kastrup _______________________________________________ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user