I wrote: > I was imagining it. [...] it never actually says it *can't* be > explicitly created.
It's in engraver-init.ly: “You cannot explicitly instantiate a @code{Score} context”. David Kastrup wrote: > > Doing start_translation_timestep in mid-timestep is unclean, though, > > and may confuse translators that expect it to be called at the > > beginning. > > How would they know the difference? There is nothing sent to an > implicit context before it is created. If it did not miss any piece > of the action, where is the problem? They could miss earlier events from that timestep — but if no translators care about events from before their context was created, that doesn't matter. If a translator announces something in start_translation_timestep (is this allowed?), other translators would hear it in mid-timestep. > Part of the reason to use events for about anything is the ability to > _record_ them and reply them, like the quote iterator does. Does it replay (or even see) timestep boundaries? > I think I find the "start_translation_timestep will occur before > process_music" invariant pretty important Yeah. The CG even says so, in the engraver tutorial: “`start_translation_timestep ()' is called before any user information enters the translators, i.e., no property operations (\set, \override, etc.) or events have been processed yet.” _______________________________________________ lilypond-devel mailing list lilypond-devel@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-devel