[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: SystemStart changes after stop/startStaff - how to get it back

From: Aaron Hill
Subject: Re: SystemStart changes after stop/startStaff - how to get it back
Date: Mon, 13 Apr 2020 21:19:39 -0700
User-agent: Roundcube Webmail/1.4.2

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.

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.

-- Aaron Hill

Attachment: patch-system-start-delimiter-engraver.ly
Description: Text document

Attachment: patch-system-start-delimiter-engraver.pdf
Description: Adobe PDF document

reply via email to

[Prev in Thread] Current Thread [Next in Thread]