> On Jun 24, 2016, at 07:41 , Nathan Chou <starry...@gmail.com> wrote: > > Hello, > > spanners with an id are handled as potentially being cross-voice. Each > engraver maintains a static list member (so it is shared between all > instances of an engraver) of named spanners and the voice each spanner > currently belongs to.
Nathan, First, thanks for attacking this problem. Using a static member sounds like a convenient way to ramp up your work, but limiting in the number of ways it can be used and maintained. As soon as one tries to use this feature in a case in which there are concurrent but unrelated instances of those engravers, side effects not expected by the user will begin to appear. For the best solution, let your mentor advise you, but I suspect that the most Lilypondish way would be to store your index as a property in the nearest context that encloses all the voices you might want to span. — Dan _______________________________________________ lilypond-devel mailing list lilypond-devel@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-devel