Hey y'alls, I'm trying to solve the age-old [for me] problem of MetronomeMark placement.
There are [at least] four issues that need to be solved simultaneously: (1) MMs [almost always] need to be at the top of each system; (2) MMs potentially need to be other places (e.g., bottom of each system, or mid-system between two staff groups); (3) MMs should be baseline-alignable across any given system; and (4) These rules need to be followed regardless of which staves appear or disappear (cf \RemoveEmptyStaffContext). Currently, Lilypond does not allow all these things to be done easily -- for example, (3) should be solvable with #'padding and #'staff-padding, but it doesn't seem to be. So I'm considering the best way(s) to solve these problems, both in the short term and in the long term... In the short term, I'm considering creating a Tempo context, which only prints out tempo indications (akin to the TimeSig context of yore). This context could then be placed in the \score wherever one needs it, solving (1), (2), and (4); since the context would be independent of any other contexts, (3) is automagically solved. But I want this to be easy to implement, so I either want the Tempo context to automagically ignore everything except MetronomeMark grobs, or I need to build a function/macro to strip out everything except MetronomeMark grobs. Q#1: Which of those two options is programatically superior? Q#2: In the long term, would the short term solution still be the best, or should Lilypond Do The Right Thing™ in some other way that doesn't require a separate context? Thanks for any thoughts/advice/comments/hints! Kieren. _______________________________________________ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user