Hi Kieren,
I am a little disappointed by the fact that none of these solutions are tempo
marks, when a metric modulation is literally a tempo mark.
Is there no way to accomplish the same thing while keeping it a real tempo mark?
I tried a number of things, but couldn’t find the right incantation…
Horizontal spacing has always remained a bit of a mystery to me, but:
The problem seems to be the following difference:
\version "2.26"
\relative {
c'1
\tempo Test-tempo
c1
c1
\textMark Test-text
c1
c
}
As you can see, the MetronomeMark is aligned to the first note in the
bar (correctly speacing, that note's PaperColumn). The TextMark is
aligned to the BarLine; more precisely, a BreakAlignment grob.
I don't know how easy it would be to change that. But this explains what
Jean did in his very elegant code:
\tweak self-alignment-X ##f
\textEndMark \markup
\put-adjacent #X #LEFT
\put-adjacent #X #RIGHT
\general-align #X #CENTER " = "
right-stuff
left-stuff
The = is centered (on the 0 coordinate of the stencil); the put-adjacent
commands are designed to add something at one side without shifting the
original content. Then switching off self-alignment-X means that the 0
coordinate of the stencil gets used without shift (whereas
self-alignment-X = 0 [= #CENTER] would calculate a shift in order to
align the /center/ of the markup to the anchor point).
In short: His commands are designed in such a way as to center the =
glyph above the grob's anchor point.
I assume what you wanted to achieve is a MetronomeMark centered over the
bar line as well?
Lukas