Hello,
When trying to compile the complete score of the piece below (88
staves and 120 quarter notes), I noticed it was taking many hours (I
didn't finish the compilation). Trying with shorter versions, I got
the following compilation times:
- 2x quarter notes -> 16.7",
- 4x quarter notes -> 1'17",
- 8x quarter notes -> > 57'47" (!)
Is there anything that could be optimised to reduce the compilation
time? I'm afraid the final version could potentially take many days to
compile.
I'm on a MacBook Air M2 with macOS Ventura 13.4, Lilypond 2.25.5
Thank you for any hint,
Lib
- - -
\version "2.25.5"
#(set-default-paper-size "a0")
#(set-global-staff-size 15)
mus = { \relative c''''' \repeat unfold 1 { c c c c }} % modify the
\repeat unfold value for testing, final version should be 40
#(define my-semitone->pitch
(make-semitone->pitch
(music-pitches #{ { c cis d ees e f fis g gis a bes b } #})))
\new StaffGroup <<
#@(map (lambda (i)
#{
\new Staff {
\scaleDurations #(cons 120 i) {
\transpose c' #(my-semitone->pitch (- (- 120 i))) {
#(cond
((<= 108 i 120) #{ \ottava 2 #})
((<= 97 i 107) #{ \ottava 1 #})
((<= 72 i 96) #{ \ottava 0 #})
((<= 48 i 71) #{ \clef bass #})
((<= 33 i 47) #{ \clef bass \ottava -1 #} )
(else #{ #}))
\mus
}
}
}
#})
(iota 88 120 -1))
>>
\layout {
indent = #0
\context {
\Score
\override SpacingSpanner.base-shortest-duration = #(ly:make-moment 1/4)
proportionalNotationDuration = #(ly:make-moment 1/10)
\override SpacingSpanner.uniform-stretching = ##t
\override SpacingSpanner.strict-note-spacing = ##t
forbidBreakBetweenBarLines = ##f
\cadenzaOn
}
\context {
\Staff
\remove Time_signature_engraver
}
\context {
\Voice
\remove Forbid_line_break_engraver
}
}