Hello list,

I am experimenting with scheme engravers and have an issue with simultanious voices:

--snip--

\version "2.16.0"


\layout {

\context {

\Voice

\consists #(let ((ccid 1))

(lambda (context)

(let ((id ccid))

(set! ccid (+ 1 ccid))

`((start-translation-timestep .

,(lambda (trans)

(format #t "~A: ~A ~A\n" id (ly:context-property context 'currentBarNumber)

(ly:context-property context 'measurePosition))))

))))

}

}


\score {

\relative c'' {

c d << { e f } \\ { c d } >>

}

}

--snip--


This little snippet prints out the barnumber and measure-position for each engraver, when start-translation-timestep is called.
The output here is:
--snip--

1: 1 #<Mom 0>

1: 1 #<Mom 1/4>

1: 1 #<Mom 1/2>
-- here are voices 2 and 3 missing for #<Mom 1/2>?

1: 1 #<Mom 3/4>

2: 1 #<Mom 3/4>

3: 1 #<Mom 3/4>

1: 2 #<Mom 0>

2: 2 #<Mom 0>

3: 2 #<Mom 0>

--snip--
so, the start-translation-timestep slot is not called, when the new voices are newly created. I want to push overrides at specific locations using this engraver. This is done in the start-t..-slot.

Why is this not called?
Does anybody know?

Best wishes for the new year!
Regards,
Jan-Peter


_______________________________________________
lilypond-user mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/lilypond-user

Reply via email to