[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: rehearsal marks, top-staff lyrics, and moved engravers
From: |
Jean Abou Samra |
Subject: |
Re: rehearsal marks, top-staff lyrics, and moved engravers |
Date: |
Wed, 1 Jun 2022 12:18:41 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.9.1 |
Le 01/06/2022 à 11:31, Werner LEMBERG a écrit :
Dear LilyPonders,
the snippet below demonstrates that top-staff lyrics are incorrectly
positioned above rehearsal marks if the engraver for the latter is
moved to another context (I need that in a full score with rehearsal
marks printed simultaneously at three different vertical positions).
What am I missing?
That looks as expected to me. The Mark_engraver is on Staff level
and the Lyrics context goes above your Staff context, so the lyrics
get higher than the marks. Why would it look different?
I think you likely want to move the Mark_engraver to a kind
of MarkLine context instead. I was going to recommend moving
it to StaffGroup, but I found
https://gitlab.com/lilypond/lilypond/-/issues/6357
\version "2.23.10"
music = { a'1 ~ | a' }
text = \lyricmode {
foo __
}
top = { s1 | \mark\default s1 }
\score {
<<
\new MarkLine \top
\new Staff = "staff" <<
\music
\new NullVoice = "aligner" \music
>>
\new Lyrics \with {
alignAboveContext = "staff"
}
\lyricsto "aligner" \text
>>
\layout {
\context {
\Score
\remove Mark_engraver
\remove Staff_collecting_engraver
\accepts MarkLine
}
\context {
\name MarkLine
\type Engraver_group
\consists Axis_group_engraver
\consists Mark_engraver
\override VerticalAxisGroup.staff-affinity = #DOWN
\override VerticalAxisGroup.nonstaff-relatedstaff-spacing.padding
= #0.5
\override VerticalAxisGroup.nonstaff-nonstaff-spacing.padding = #0.5
}
}
}
Jean