|
From: | Chen Leo |
Subject: | Re: Alignment issues of Time signature above the staff |
Date: | Sat, 11 Apr 2020 15:03:36 +0000 |
Hi,
I was able to align the metronome mark above the time signature by using a small hack
That is to use
\override TimeSignature.stencil = #(lambda (grob) (grob-interpret-markup grob (markup "")))
instead of removing the “time_signature_engraver” from the staff context.
I also discovered another problem that is the time signature will display twice when one staff has a grace note as the first note in a bar. I was only able to solve this by commenting out the \time commands from the rest of the staffs, which is not an
ideal solution. After looking into some of the internal commands I still don’t have a clue on how to solve the rest of the alignment problems, I guess some deeper scheme knowledge is required to make this work.
See the attached files.
Hi,
Thank you for your responses.
I managed to solve the bar number problem by removing the "Bar_number_engraver" from the staff context and \consists "Bar_number_engraver" in the staff under the time signature.
For the time signature’s alignment, I found a simpler solution by using \override TimeSignature.break-align-symbol = #'staff-bar with \override MultiMeasureRest.spacing-pair = #'(clef . staff-bar). However, It still causes break-alignment issues from here
to there.
Example:
\version "2.19.0"
timeSignatures = { \numericTimeSignature \tempo 4 = 80 \time 4/4 s1 \time 3/8 s4.
\time 3/4 s2. \time 4/4 s1 }
\score {
\layout {
\context {
\type "Engraver_group"
\consists "Time_signature_engraver"
\consists "Axis_group_engraver"
\name "TimeSig"
\alias "Staff"
\override TimeSignature.font-size = #8
\override TimeSignature.break-align-symbol = #'staff-bar
\override TimeSignature.X-offset =
#ly:self-alignment-interface::x-aligned-on-self
\override TimeSignature.self-alignment-X = #LEFT
%\override TimeSignature.X-extent = #'(0 . 0)
}
\context {
\Score
\accepts TimeSig
\remove "Bar_number_engraver"
}
\context {
\Staff
\override MultiMeasureRest.spacing-pair = #'(clef . staff-bar)
\remove "Time_signature_engraver"
}
\context {
\Score
}
}
<<
\new TimeSig \with {
}
{
\timeSignatures
}
\new StaffGroup \with {} <<
\new Staff \with {
\consists "Bar_number_engraver"
}
\relative c' {
\textLengthOn
c4 ( _\markup \column {
"← Objects failed to appear"
"below the time signature"
"when using \\textLengthOn"
}
\textLengthOff
d4 e4 f4 )
a''4 ( g8 ) R2. c1 }
\new Staff \relative c' {
R1
R4.
\clef bass
a2. \> \break
c2 _\markup \column {
" "
"↑"
"Hairpin stops below the time signature"
} c2\! }
\new Staff \relative c' { R1 R4. R2. c1 }
>>
>>
}On 3/29/2020 2:10 AM, Chen Leo wrote:
Hi Chen,
The measure numbers should be aligned correctly throughout your score, except in the certain cases where there happens to be a time signature change at the end of the system and/or at the start of a new line.
In which case you could simply use an override like this: \once \override Score.BarNumber.Y-offset = #-6.
Would this help?
(see attached)
%%%%%%%%%%%
\version "2.19.0" |
time-signatures-issue.ly
Description: time-signatures-issue.ly
[Prev in Thread] | Current Thread | [Next in Thread] |