I'm using LilyPond for engraving lead sheets. Most sheet music customarily reiterates the clef and key signature at the beginning of every line. For lead sheets there is a preference for less clutter on the page and more space for essential music info, so most lead sheets only show the clef and key signature at the beginning of a piece. I have this working by using
\override Score.Clef.break-visibility = #all-invisible \override Score.KeySignature.break-visibility = #all-invisible Something I find useful that is found in some, but not all, lead sheets, is to reiterate the clef and key signature at the top of every page. Hal Leonard's Real Book series does not do this. Sher Music's New Real series started out without this in 1988, but by 2000 the Standards Real Book did have the clef and key signature at the top of every page. Anyway, it seems like a good idea to me. For a few years, I've been forcing all page breaks inside lead sheets to specific places, which meant that I could enable reiterating clef and key signature like this: \once \override Score.Clef.break-visibility = #begin-of-line-visible \once \override Score.KeySignature.break-visibility = #begin-of-line-visible However, for some good reasons, I'm moving into letting LilyPond choose page breaks automatically. So far this is going well, but I have lost the clef and key signature at the top of each page. I've tried a few things, but I haven't found a good way yet to make this happen automatically. Is this possible? I've thought of doing something drastic, like a two-pass process where I let LilyPond choose the page breaks, then edit the source programmatically to put manual page breaks in those locations and make the clef and key signature visible. This is definitely overkill for something that is a "nice to have" not a "must have". If there's some way to do what break-visibility does, but have it only trigger on the first system on a new page, I'd like to try it.
