On 2014/07/27 11:50:17, dak wrote: https://codereview.appspot.com/117050043/diff/40001/ly/engraver-init.ly#newcode787
ly/engraver-init.ly:787: \override NoteHead.meta.interfaces = #(delete 'rhythmic-head-interface
Ugh. This looks incredibly ugly.
I guess I lack a sense of aesthetics for Scheme code; I thought it was rather pretty.
It would make more sense to make rhythmic-head-interface get along
without Rhythmic_column_engraver It is easy to make the rest of the code accept an object with rhythmic-head-interface that is unattached to any Rhythmic_Column (just removing a test and warning in rest-collision.cc as I recall). The thing I didn't like about that was changing completely unrelated code to accommodate the weirdness of NullVoice.
If we really, really cannot make do otherwise, we could design
substitute
engravers that mostly do the same job but without producing output. I
mean,
Midi has to produce the same timing for Lyrics and manages with a
vastly
simplified set of performers.
My first inclination was to make an engraver that merely sets melismaBusy and lets the Lyrics attach to PaperColumns, but then we would need to synchronize that engraver with what Tie_engraver, etc., do if there is ever a change, and the current gives NoteHeads with real extents to which the Lyrics can line up exactly as if there was a printed note. https://codereview.appspot.com/117050043/ _______________________________________________ lilypond-devel mailing list lilypond-devel@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-devel