[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Metronome mark not aligning correctly
From: |
Kieren MacMillan |
Subject: |
Re: Metronome mark not aligning correctly |
Date: |
Sat, 6 Nov 2021 09:47:07 -0400 |
Hi Jean,
> In an ideal world of 'pushing' grobs, that would
> be written as something like
> <c \pushTo "up" c'>^\p
YES!!!
> but the \p should also be pushed or something
> should be done about it because of its direction.
For sure, there are potential complications…
> it's worth noting that the part combiner,
> which is implemented through dispatching between contexts,
> is in a pitifully buggy state.
This is the other “big fix” that I’m interested in contributing to going
forward. =)
I know some good developers (Dan, perhaps?) have improved it recently… but as
you point out, it’s in a pitifully buggy state (half the time, I just rewrite
combined parts manually!). And it’s useless for potentially really powerful
applications — e.g. the piano reduction of a four-part choral work, three-part
brass reductions, etc. — because it only accepts two voices. Not to mention its
issues with \tuplet, \relative, quotes, etc.
Is there some gain to be had by considering the three related concepts —
“context pushing”, cross-staff items, and part-combining — together, to see
where a single mechanism might help all three? Put another (OOP-ish) way: Are
cross-staffing and part-combining instances of a context-pushing class?
> Intuitively, I tend to believe that
> an approach based on actually pushing grobs rather
> than events would be more effective. That would
> also have the direct advantage of allowing to
> push the likes of bar numbers that don't have
> a cause in events.
That was my [totally naïve] instinct, too (cf.
https://lists.gnu.org/archive/html/lilypond-user/2021-10/msg00436.html). I look
forward to seeing where this discussion leads!
Thanks,
Kieren.
________________________________
Kieren MacMillan, composer (he/him/his)
‣ website: www.kierenmacmillan.info
‣ email: kieren@kierenmacmillan.info