Janek Warchoł <janek.lilyp...@gmail.com> writes: > Hi Kieren, > > 2012-12-14 14:47 GMT+01:00 Kieren MacMillan <kieren_macmil...@sympatico.ca>:
[...] >> Ultimately, I would like to have Lilypond choose the correct number >> of staves so that horizontal and vertical spacing is optimal, using >> partcombine (or 'partexplode'?), cueing, etc., to accomplish its >> task. >> >> I realize this is an AI nightmare and well outside Lilypond's >> current scope. So as a half-measure, I would love to be able to tag >> certain sections as "requires X staves", and then have Lilypond >> choose the least number of required staves based on system/line >> breaking. As I [manually] change the line breaks, the systems would >> automagically "expand" or "contract" as necessary/possible to >> accommodate the new layout. Unfortunately, the current tagging >> system is insufficient to do this, as far as I can tell. >> >> Can anyone think of a reasonably easy way to implement this feature? >> If so, I'll be happy to sponsor it. > > I think that issue 3518 (pushed recently) does just this: > https://code.google.com/p/lilypond/issues/detail?id=3518 It doesn't do the automatic "AI nightmare" part. However, it provides the low level machinery for pulling in the "maximally required" number of staves between automatic or manual line breaks, where the requirement is determined by working with keep-alive-interfaces and tags on the various staff variants. It's a solid framework for a solid part of the job. Now a framework is not a user interface, but an experienced LilyPond user should be able to derive a good solution for him- or herself. The important thing to note is that this framework does _not_ require manual tampering with line breaks to arrive at "correct" results. Manual tampering might still make sense in order to not have a "divisi explosion" take more lines than necessary, like when a divisi passage begins close to the end of a line. But at least all lines not actually containing divisi material will not be split, and every line containing divisi material will. -- David Kastrup _______________________________________________ lilypond-devel mailing list lilypond-devel@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-devel