On Sat, Jan 22, 2011 at 6:30 AM, Carl Sorensen <c_soren...@byu.edu> wrote:
> > > > On 1/22/11 3:36 AM, "Reinhold Kainhofer" <reinh...@kainhofer.com> wrote: > > > Am Freitag, 21. Januar 2011, um 19:13:54 schrieb lilyp...@googlecode.com > : > >> At any rate, I think that with the understanding that we need to 1) use > >> alignAboveContext for lyrics above a staff, and 2) make space for > lyrics, > >> with top-system-spacing, system-system-spacing, system-bottom-spacing, > and > >> default-staff-staff-spacing I think this becomes a Documentation bug > (still > >> Critical). > > > > Does this also work if one page has lyrics above the top staff, while > another > > page does not? Or does the second page also reserve space for the > non-existing > > lyrics on that page (which would be quite bad from my point of view)? > > IIUC, the current spacing engine *never* reserves space for lyrics > depending > on whether the lyrics are there or not. It lays out the staves without > considering the lyrics, and then pushes the lyrics into the gaps between > the > staves as best it can. > > This came about because of requests to always have the staves in the same > place on each page, IIRC. Staves were moving about because of lyrics, and > it was requested that lilypond stop doing that, so the new spacing was > devised. > > Hence my thought that we might want to have the possibility of reverting to > the old behavior. > The old behaviour was basically to put things as close together as they allow. You can achieve it by - setting staff-affinity = ##f for everything - setting staff-staff-spacing #'basic-distance = 0 (and similarly for the other spacing variables) - setting staff-staff-spacing #'minimum-distance and #'padding to whatever you want (have a look at the old minimum-Y-extent settings for an idea of a good default) Alternatively, it's easy to extend the spacing engine to modify spacing depending on how many non-staff lines there are between two staves. I'm just not sure what the interface should be. Just off the top of my head, we could add \override VerticalAxisGroup #'extra-staff-spacing = #'((basic-distance . x) (minimum-distance . y) (padding . z)) in the Lyric staff and it would add x to the basic-distance of whichever staves the lyric is between. Cheers, Joe _______________________________________________ bug-lilypond mailing list bug-lilypond@gnu.org http://lists.gnu.org/mailman/listinfo/bug-lilypond