I am very glad to know about \put-adjacent! I had not heard of it before. Thank
you, Lukas, for explaining it clearly.
With that command I can now do everything that I want in off-the-shelf
LilyPond. No more manual override needed.
My updated snippet is below. Of note, this approach does permit us to place
a tempo marking at the beginning of the new section.
On Thu, 28 May 2026, Kieren MacMillan wrote:
> > But TBH I'm not convinced that this is such a good idea, since now we
> can't put a tempo marking at the beginning of the new section. One might
> argue that that's just as well, as the tempo relation should replace any
> other tempo marking, but I'm not sure that one can rule out that both are
> used simultaneously.
>
> I could imagine that it might be a problem, though I’ve never personally
> used both simultaneously and don’t readily recall seeing it used by another
> composer/arranger.
>
In practice, with mensuration changes in early music (like the example that
Peter shared to kick off this thread), I don’t think I have ever seen a
printed metronome mark.
But for completeness, I show as option (2) below how I would typeset both a
mensuration change and a new metronome mark, if I ever wanted to do so.
I think I’ll post this snippet to the Wiki.
[image: image.png]
%%% SNIPPET BEGINS
\version "2.27.0"
simpleBreve = \markup {
\override #'(style . baroque)
\note { \breve }
#UP % (stem direction)
}
dottedBreve = \markup {
\override #'(style . baroque)
\note { \breve. }
#UP % (stem direction)
}
thickSpace = \markup \char ##x2004
% Unicode codepoint U+2004 is a
% Three-per-Em space
% (also known as a “thick space”); see
% https://en.wikipedia.org/wiki/Whitespace_character#Unicode
equals = \markup {
\put-adjacent #X #LEFT
\put-adjacent #X #RIGHT
\general-align #Y #DOWN \char ##x003D
%
https://en.wikipedia.org/wiki/Mathematical_operators_and_symbols_in_Unicode
\thickSpace
\thickSpace
}
myMensurationChange = \markup {
\put-adjacent #X #LEFT
\put-adjacent #X #RIGHT
\general-align #X #CENTER
\general-align #Y #CENTER
\equals
\dottedBreve
\simpleBreve
}
*\markup { \circle 1 Mensuration change only: }*\markup \vspace #0.2
\fixed c' {
\time 2/1
f1 d1 |
\tweak self-alignment-X ##f
\mark \myMensurationChange
\time 3/1
a1. g2 c1 |
}
*\markup { \circle 2 With metronome marks added: }*\markup \vspace #0.2
\fixed c' {
\time 2/1
\tempo 1 = 60
f1 d1 |
\tweak self-alignment-X ##f
\mark \myMensurationChange
\time 3/1
\once \override Score.MetronomeMark.X-offset = #7
\tempo "" 1 = 90
a1. g2 c1 |
}
%%% SNIPPET ENDS