Hi Aaron, Am Di., 14. Apr. 2020 um 06:20 Uhr schrieb Aaron Hill <lilyp...@hillvisions.com>: > > I think I have addressed the original issue in this patched version of > the System_start_delimiter_engraver. This is implemented in Scheme, but > the changes should be easily ported back to C++. > > The strategy is to acknowledge the end of StaffSymbols to be able to > remove their corresponding entries in the internal structure. > Additionally, the context in which the StaffSymbol correlates is > recorded so a future StaffSymbol of the same context takes the same > place. This should keep things stable if staves stop and start at odd > places.
many thanks for your work! For now I tested your engraver with my workaround in mid-staff-gap-04.ly (see my previous post in this thread). All works fine. Though as nice as my current workaround looks like, it's still that: a workaround. I'll have a closer look at your engraver. Now that the functionality is available in scheme I may find a proper fix (or not ...) First step as always: I need to understand the given code ... > > One thing I noticed was the C++ engraver acknowledges > SystemStartDelimiters (of which it is the one creating them) and calls > the Bracket_nesting_group::add_support function. However, in my porting > of the engraver to Scheme, I could not get this acknowledger to trigger. > Does LilyPond have code coverage tests that could confirm whether that > logic is necessary? In any event, I omitted it from my Scheme engraver. Can't help here, sorry. Best, Harm _______________________________________________ bug-lilypond mailing list bug-lilypond@gnu.org https://lists.gnu.org/mailman/listinfo/bug-lilypond