Maurits Lamers <maur...@weidestraat.nl> writes: > Hi all, > > I am trying to extend the default event-listener.ly to also include > information about in which voice a specific note is being played. > When the voice is defined using > > \new Voice = voicename > > I can retrieve the retrieve that name through (ly:context-id > (ly:translator-context engraver)). > When the voice is defined in an anonymous way context-id is an empty string. > I have been trying to set the context-id when none is set using a > counter, but that fails because of an "missing typecheck for property > 'context-id'" error. > I tried to use both a normal list as well as an asoc list to keep > track of the different Voice contexts in order to tell them apart but > I haven't been able to get that to work. > > I know that when lyrics are added, it is possible to refer to those > anonymous voices by using "1" etc.
That's nonsense. Voices in a << ... \\ ... \\ >> construct are not anonymous but named "1", "2", "3" by default, and you can refer to those. But this has nothing whatsoever to do with lyrics. > I would like to be able to mark a voice in Scheme in such a way that I > can print to which voice a certain note belongs. Could anyone give a > clue on how to achieve that? Contexts are objects with identity. You can just create something like (define context-id (make-object-property)) And then you can set! and fetch (context-id ctx). -- David Kastrup _______________________________________________ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user