[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
MetronomeMark placement questions
From: |
Kieren MacMillan |
Subject: |
MetronomeMark placement questions |
Date: |
Sat, 19 Jun 2010 00:07:57 -0400 |
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.
- MetronomeMark placement questions,
Kieren MacMillan <=