Thanks for you support, Valentin. > … And, yes, I do realize that’s way too convoluted of an explanation. If someone else can do it more straightforwardly, have at it! :-) Hey, don't make me feel bad about my own more-than-lengthy explanations!
On 2020/03/31 20:51:05, Valentin Villenave wrote: > You can’t say it’s undocumented, its documentation is just not meant > for regular users: True, I meant that this isn't just useful for internal use, you may need it as a regular user, I think, because a conductor would think the choir or the strings as a whole, so it can sound weird to have a system with only violin I without violin II (hope I'm clear). There is now a regression test as asked for, and a bit more documentation. I added an example about Keep_alive_together_engraver, though I'm not completely satified with it--feel free to improve. It is taken from https://www.universaledition.com/kurt-weill-764/works/der-jasager-1900 (Kurt Weill, Der Jasager). This score isn't actually demonstrating the need for this (it could have been if the breaks were placed another way) but if this is wanted, here is an example showing that it happens in printed music: http://imslp.eu/files/imglnks/euimg/5/54/IMSLP522307-PMLP3653-NBE_-_Symphonie_Fantastique_-_I._Reveries,_Passions_(etc).pdf (the first page). Yet, there is still an issue. What's happening in this example? \version "2.21.0" keepRests = \applyContext #(lambda (context) (ly:context-set-property! context 'keepAliveInterfaces (cons 'rest-interface (ly:context-property context 'keepAliveInterfaces)))) \layout { \context { \Score \RemoveAllEmptyStaves \keepRests } } << { c'1 c'1 c'1 } { R1 \break s1 \break R1 } >> I expect the second staff in the second system to disappear, but this is not the case. Yet if you replace the surrounding R1 with r1, then it works. Did I misunderstand the way \RemoveEmptyStaves works? How can it depend on the other systems? It can't be put in the documentation if it doesn't work... Thanks! https://codereview.appspot.com/553760043/
