Jean Abou Samra <j...@abou-samra.fr> writes: > Thanks for your report. The same happens in Staff: > > \version "2.23.4" > > { > \grace { > \override NoteHead.font-size = 3 > c' > \revert NoteHead.font-size > } > d' > } > > This is because graces have special settings, which > include a value for NoteHead.font-size (as well as > TabNoteHead.font-size). When the first grace note > arrives, the settings start applying and override what > you did. Then, the \revert pops those settings off the > stack, and your setting shines start to shine through.
It's more complex than that: synchronisation with the input stream (rather than just the timing) is usually established by the Grace_iterator communicating to the Grace_engraver with a GraceChange event. However, in the given situation the bottom context is established only implicitly with the \override which is too late to establish this synchronisation. Cf this comment in lily/grace-engraver.cc: // if we are in grace time already on initialization, it is unlikely // that we'll receive a GraceChange event from the grace iterator yet, // so we want to start into grace mode anyway. The downside is that // this will get us confused when given something like // // \new Voice { \oneVoice \grace { c''8 8 } g'1 } // // where \grace executes its actions already before \oneVoice, causing // different stem directions. which is related. -- David Kastrup _______________________________________________ bug-lilypond mailing list bug-lilypond@gnu.org https://lists.gnu.org/mailman/listinfo/bug-lilypond