On Mon, Oct 30, 2023 at 1:14 AM Werner LEMBERG <w...@gnu.org> wrote:

> OK.  Please construct an example how it should look like *optically*
> (the actual LilyPond code doesn't matter), together with some
> explanations why you want this and that.  It's not clear to me what
> you really want to achieve.
>

In the process of crafting this, I thought of something else I could try,
and that worked. (https://imgur.com/a/tpgpxf8 if you're curious to see what
I had, noting that I modified the second attempt I sent out to align the
"music" with the first.)

The catch was the citation to "Keep_alive_together_engraver" was good in a
sense in that it sent me to the correct section, but I actually do *not*
want that engraver enabled, because its purpose is "if *this* staff is
alive, also keep this *other* staff alive," which is the opposite of what I
want. I was messing around with the VerticalAxisGroup.remove-layer and
Staff.keepAliveInterfaces settings to no avail, but it didn't occur to me
until now to just remove remove the Keep_alive_together_engraver entirely.

The key to get something working was actually \RemoveAllEmptyStaves and
then to set the two divisi parts in entirely separate music expressions,
with one of them being mostly rests or spacers.

The docs seem to talk about Keep_alive_together_engraver saying it "is
particularly useful for ‘divisi’ staves, where some individual parts
(see Writing
parts <https://lilypond.org/doc/v2.24/Documentation/notation/writing-parts>)
occasionally need to be expanded to more than one staff" (noting that
*maybe* it's talking about hiding staves more generally), but I honestly
can't see how that engraver is relevant in that context. Unless there's a
system where one of the div parts is entirely resting... but in that case
I'm back to having no clue how to *use* it in that context without it
keeping the divisi staff alive for the entire part. But that's not relevant
to this or the other examples I've struggled with in the past.

Anyway, thanks very much for your replies!
Evan

Reply via email to