[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Rehearsal marks and tempo markings
From: |
Jean Abou Samra |
Subject: |
Re: Rehearsal marks and tempo markings |
Date: |
Fri, 24 Sep 2021 13:03:31 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.11.0 |
Le 23/09/2021 à 23:34, Jean Abou Samra a écrit :
Le 23/09/2021 à 00:47, Nuno Trocado a écrit :
Perhaps you want the tempo mark to start on
the first note rather than the time signature:
Not really... I'd like to have the tempo mark aligning to the time
signature, but shifting a little horizontally if it collides with a
rehearsal mark.
Here is my attempt at automating it.
[…]
Below is a simplified version, solving a few issues.
\version "2.22.1"
#(define (Fix_tempo_mark_collision_engraver context)
(let ((tempo #f)
(mark #f))
(make-engraver
(acknowledgers
((metronome-mark-interface engraver grob source-engraver)
(set! tempo grob))
((mark-interface engraver grob source-engraver)
(set! mark grob)))
((stop-translation-timestep engraver)
(if (and tempo mark)
(let* ((tempo-stencil (ly:grob-property tempo 'stencil))
(tempo-width (interval-length (ly:stencil-extent
tempo-stencil X)))
(mark-stencil (ly:grob-property mark 'stencil))
(mark-width (interval-length (ly:stencil-extent
mark-stencil X)))
(mark-alignment (ly:grob-property mark
'self-alignment-X))
(padding (ly:grob-property tempo 'padding))
(mark-relative-end (/ mark-width (+ mark-width
padding tempo-width)))
(mark-end-index (1- (* 2 mark-relative-end)))
(new-alignment (interval-index (cons -1
mark-end-index)
mark-alignment)))
(set! (ly:grob-property mark 'stencil)
(ly:stencil-stack mark-stencil X RIGHT
tempo-stencil padding))
(set! (ly:grob-property mark 'self-alignment-X)
new-alignment)
(ly:grob-suicide! tempo)))
(set! tempo #f)
(set! mark #f)))))
\layout {
\context {
\Score
\consists #Fix_tempo_mark_collision_engraver
\override MetronomeMark.padding = 0.8 % adjust
}
}
{
\clef treble
\mark \default
\tempo 4 = 120
\time 3/4
\repeat unfold 3 c''4
\mark \default
\tempo \markup \column { "Going down" down down… }
R2.*4
\mark \default
\tempo "Long tempo text"
\compressMMRests R2.*5
}
Best,
Jean
- Rehearsal marks and tempo markings, Nuno Trocado, 2021/09/22
- Re: Rehearsal marks and tempo markings, Jean Abou Samra, 2021/09/22
- Re: Rehearsal marks and tempo markings, Nuno Trocado, 2021/09/22
- Re: Rehearsal marks and tempo markings, Nuno Trocado, 2021/09/22
- Re: Rehearsal marks and tempo markings, Jean Abou Samra, 2021/09/22
- Re: Rehearsal marks and tempo markings, Nuno Trocado, 2021/09/22
- Re: Rehearsal marks and tempo markings, Jean Abou Samra, 2021/09/23
- Re: Rehearsal marks and tempo markings, fremoin, 2021/09/24
- Re: Rehearsal marks and tempo markings,
Jean Abou Samra <=
- Re: Rehearsal marks and tempo markings, fremoin, 2021/09/24
- Re: Rehearsal marks and tempo markings, Nuno Trocado, 2021/09/30
Re: Rehearsal marks and tempo markings, fremoin, 2021/09/24