On Wed 02 Nov 2016 at 07:44:29 (+1100), Andrew Bernard wrote:
> I am not sure for whom you mean error prone - the user, or the compiler.
The user. Constructions like seq 1 10 (eg, in bash) are designed
to avoid the need for 1 2 3 4 5 6 7 8 9 10. Computers are good at
this, humans aren't. We slip up. Compilers don't.
> It seems like after many many repetitions of the variable constructs
> representing each bar lilypond just loses the plot and runs out of
> resources. It's probably a really obscure bug. It's a use case hardly worth
> testing, it being so unusual.
That may well be the problem, but it ought to detect the fact and say so.
> I could not see what the fixes were from your email David, unless I am
> missing an attachment. What did you do to make this work?
Three or four global replacements for the RHS variables,
a few copy&pastes to fill in the "borrowed" parts like \expandVar \sop 23 38
then a macro to erase the LHS variables and their = sign.
I left the redundant braces around each bar.
> -----Original Message-----
> From: David Wright
> Subject: Re: Exited with return code -1073741819.
>
> Well, the reasons were given in
> http://lists.gnu.org/archive/html/lilypond-user/2016-03/msg00609.html
> but I can't see that a construction like
>
> sop.12 = \sop.1
> sop.13 = \sop.1
> sop.14 = \sop.1
> sop.15 = \sop.1
> sop.16 = \sop.5
> sop.17 = \sop.1
> sop.18 = \sop.1
> sop.19 = \sop.1
> sop.20 = \sop.1
> sop.21 = \sop.5
>
> is any less error-prone than
>
> R1 * 5 \break
> R1 * 5 \break
>
> nor can I imagine that it involves any less copy&paste, unless all the sop
> sop sop stuff was actually typed in. At least the source is not obfuscated,
> which it was last time.
Cheers,
David.
\version "2.19.49"
\language "english"
expandVar =
#(define-music-function (xx start stop) (list? index? index?)
#{ #@(map (lambda (i) #{ $xx . #i #}) (iota (- stop start -1) start)) #})
\header {
title = "能否於今天"
subtitle = "Could This Be The Day?"
composer = "Joseph M. Martin"
arranger = "編 : 劉永生"
poet = "詞 : 劉永生"
}
\layout {
\context {
\Voice
\consists "Melody_engraver"
\override Stem #'neutral-direction = #'()
}
}
global = {
\key f \major
\numericTimeSignature
\time 4/4
\tempo "Freely" 4=104
}
soprano = {
\global
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 | \break }
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 | \break }
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 | \break }
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 | \break }
{ d'4^\markup"Tenderly"^\markup"S.A." a'4 4 4 |}
{ a'1 |}
{ c'4 g'4 4 4 |}
{ g'2( f'2) |\break }
{ d'4 a'4 4 b' |}
{ c''2 d''4 c''4 |}
{ b'4 c'' b' g' |}
{ a'1 |\break }
{ d'4 a'4 4 4 |}
{ a'1 |}
{ c'4 g'4 4 4 |}
{ g'2( f') |\break }
{ f'4 d''4 4 4 |}
{ c''4. f'8 4 a' |}
{ bf'4 a' g' f' |}
{ a'1~ |}
{ a'1 |\break }
{ a'2 4 4 |}
{ g'2 2 |}
{ bf'2 4 4 |}
{ a'2 2 |\break }
{ d''2 4 4 |}
{ c''2 a'4 c'' |}
{ c''2 bf'4 4 |}
{ a'1 |\break }
{ g'2 4 a' |}
{ bf'4 a' g' bf' |}
{ a'1 |}
{ a'2 2 |\break }
{ d'1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 | \break }
{ c'4 f' a' c'' |}
{ c''2 r2 |}
{ r4 e'8 8 f'4( g') |}
{ a'2~ 2 |\break }
{ r2 f'8( g') a'( c'') |}
{ d''4( c'' b' g') |}
{ a'1 |}
{ d'4 a'4 4 4 |\break }
{ a'1 |}
{ c'4 g'4 4 4 |}
{ g'2( f'2) |}
{ f'4 d''4 4 4 |\break }
{ c''4. f'8 4 a' |}
{ bf'4 a' g' f' |}
{ a'1~ |}
{ a'1 |}
{ a'2 4 4 |\break }
{ g'2 2 |}
{ bf'2 4 4 |}
{ a'2 2 |}
{ d''2 4 4 |\break }
{ c''2 a'4 c'' |}
{ c''2 bf'4 4 |}
{ a'1 |}
{ g'2 4 a' |\break }
{ bf'4 a' g' bf' |}
{ a'1 |}
{ a'2 2 |}
{ d'1 |}
{ R1 | \break }
{ d'4 a'4 4 4 |}
{ a'2( g') |}
{ R1 |}
{ R1 |}
{ d'4 a'4 4 4 |\break }
{ c''4 bf'8( a') g'2 |}
{ bf'4 a'8 g' f'2 |}
{ a'4 g'8( f') e'4 f'8 e' |}
{ d'1 |\break }
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ a'1 |}
{ a'1 |\bar"|." }
}
alto = {
\global
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ d'4 a'4 4 4 |}
{ a'1 |}
{ c'4 g'4 4 4 |}
{ g'2( f'2) |\break }
{ d'4 a'4 4 b' |}
{ c''2 d''4 c''4 |}
{ b'4 c'' b' g' |}
{ a'1 |\break }
{ d'4 a'4 4 4 |}
{ a'1 |}
{ c'4 g'4 4 4 |}
{ g'2( f') |\break }
{ f'4 d''4 4 4 |}
{ c''4. f'8 4 a' |}
{ bf'4 a' g' f' |}
{ a'1~ |}
{ a'1 |\break }
{ f'2 4 4 |}
{ f'2 e' |}
{ g'2 4 4 |}
{ g'2 f' |}
{ f'2 4 g' |}
{ g'4( f') 4 4 |}
{ e'2 4 4 |}
{ e'2( d') |}
{ ef'2 4 f' |}
{ g'4 f' ef' g' |}
{ f'1 |}
{ e'!2 2 |}
{ d'1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ c'4 f' a' c'' |}
{ c''2 r2 |}
{ r4 e'8 8 f'4( g') |}
{ a'2~ 2 |\break }
{ r2 f'8( g') a'( c'') |}
{ d''4( c'' b' g') |}
{ a'1 |}
{ d'4 a'4 4 4 |\break }
{ a'1 |}
{ c'4 g'4 4 4 |}
{ g'2( f'2) |}
{ f'4 bf'4 4 4 |}
{ a'4. f'8 4 a' |}
{ bf'4 a' g' f' |}
{ a'1~ |}
{ a'1 |}
{ f'2 4 4 |}
{ f'2 e' |}
{ g'2 4 4 |}
{ g'2 f' |}
{ f'2 4 g' |}
{ g'4( f') 4 4 |}
{ e'2 4 4 |}
{ e'2( d') |}
{ ef'2 4 f' |}
{ g'4 f' ef' g' |}
{ f'1 |}
{ a2 2 |}
{ d'1 |}
{ R1 |}
{ d'4 a'4 4 4 |}
{ a'2( g') |}
{ R1 |}
{ R1 |}
{ d'4 a'4 4 4 |\break }
{ c''4 bf'8( a') g'2 |}
{ bf'4 a'8 g' f'2 |}
{ a'4 g'8( f') e'4 f'8 e' |}
{ d'1 |\break }
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ <fs'd'>1 }
{ <f'd'>1 |}
}
tenor = {
\global
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ f4( g) a c' |}
{ c'1 |}
{ a4( g) f( e) |}
{ d1 |}
{ r2 r4 a4 |}
{ g4 a bf4 4 |}
{ a1~ |}
{ a1 |}
{ c'2 4 4 |}
{ c'2 2 |}
{ d'2 4 4 |}
{ d'2 2 |}
{ d'2 bf4 4 |}
{ a2 c'4 a |}
{ g2 4 4 |}
{ g2( f) |}
{ R1 |}
{ R1 |}
{ r4 a4 4 4 |}
{ a2 4~ 4 |}
{ d'1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ d4 a4 4 4 |}
{ a1 |}
{ c4 g4 4 4 |}
{ g2( f) |}
{ d4 a4 4 b |}
{ c'2 d'4 c' |}
{ b4 a g b |}
{ a1 |}
{ R1 |}
{ f4 g( a) c' |}
{ c'2 r2 |}
{ a4( g f) e |}
{ d2 r2 |}
{ c4( f) a f |}
{ g4 a bf4 4 |}
{ a1~ |}
{ a1 |}
{ c'2 4 4 |}
{ c'2 2 |}
{ d'2 4 4 |}
{ d'2 2 |}
{ d'2 bf4 4 |}
{ a2 c'4 a |}
{ g2 4 4 |}
{ g2( f) |}
{ R1 |}
{ R1 |}
{ r4 a4 4 4 |}
{ a2 2 |}
{ d4 a4 4 4 |}
{ g4( bf a) g |}
{ f1 |}
{ R1 |}
{ d4 a4 4 4 |}
{ g4( bf a) g |}
{ f1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ r2 <d fs>2 |}
{ <d f>1 |}
}
bass = {
\global
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ f4( g) a c' |}
{ c'1 |}
{ a4( g) f( e) |}
{ d1 |}
{ r2 r4 a4 |}
{ g4 a bf4 4 |}
{ a1~ |}
{ a1 |}
{ f2 4 4 |}
{ c2 2 |}
{ g2 4 4 |}
{ d2 c |}
{ bf,4( c) d e |}
{ f2 4 4 |}
{ c2 cs4 4 |}
{ d1 |}
{ R1 |}
{ R1 |}
{ r4 a4 4 4 |}
{ a2 4~ 4 |}
{ d'1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ d4 a4 4 4 |}
{ a1 |}
{ c4 g4 4 4 |}
{ g2( f) |}
{ d4 a4 4 b |}
{ c'2 d'4 c' |}
{ b4 a g b |}
{ a1 |}
{ R1 |}
{ f4 g( a) c' |}
{ c'2 r2 |}
{ a4( g f) e |}
{ d2 r2 |}
{ c4( f) a f |}
{ g4 a bf4 4 |}
{ a1~ |}
{ a1 |}
{ f2 4 4 |}
{ c2 2 |}
{ g2 4 4 |}
{ d2 c |}
{ bf,4( c) d e |}
{ f2 4 4 |}
{ c2 cs4 4 |}
{ d1 |}
{ R1 |}
{ R1 |}
{ r4 a4 4 4 |}
{ a2 2 |}
{ d4 a4 4 4 |}
{ g4( bf a) g |}
{ f1 |}
{ R1 |}
{ d4 a4 4 4 |}
{ g4( bf a) g |}
{ f1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ R1 |}
{ r2 <d,a,>2 |}
{ <d,a,>1 |}
}
verseOne = \lyricmode {
\set stanza = "1."
% Lyrics follow here.
}
verseTwo = \lyricmode {
\set stanza = "2."
% Lyrics follow here.
}
rehearsalMidi = #
(define-music-function
(parser location name midiInstrument lyrics) (string? string? ly:music?)
#{
\unfoldRepeats <<
\new Staff = "soprano" \new Voice = "soprano" { \soprano }
\new Staff = "alto" \new Voice = "alto" { \alto }
\new Staff = "tenor" \new Voice = "tenor" { \tenor }
\new Staff = "bass" \new Voice = "bass" { \bass }
\context Staff = $name {
\set Score.midiMinimumVolume = #0.5
\set Score.midiMaximumVolume = #0.5
\set Score.tempoWholesPerMinute = #(ly:make-moment 104 4)
\set Staff.midiMinimumVolume = #0.8
\set Staff.midiMaximumVolume = #1.0
\set Staff.midiInstrument = $midiInstrument
}
\new Lyrics \with {
alignBelowContext = $name
} \lyricsto $name $lyrics
>>
#})
right = {
\global
{ d''4 a''4 4 4 |}
{ g''4 bf'' a'' g'' |}
{ f''2.\fermata <c''e''g''>4 |}
{ <c''f''a''>4 <a'c''f''> <bf'd''> <a'c''f''> |}
{ <bf'd''g''>4 <g'c''e''> <f'bf'd''> <e'g'c''> |}
{ <a'd''>1~ |}
{ <a'd''>1 |}
{ r2 r4 a4 |}
{ d'4 a' <g'a'> <f'a'> |}
{ <e'g'>4 <d'bf'> <cs'a'>2 |}
{ <<{d'4 a'4 4 4}\\{c'!2 <b d'>}>> |}
{ <<{g'4 d'' a'2\fermata}\\{<bf!ef'>2 d'4 cs'4\fermata}>> |}
{ r8 a8 d' f' a' f' d' a |}
{ r8 a8 c' f' a' f' c' a |}
{ r8 g8 c' e' g' e' c' g |}
{ r8 f8 a d' f' d' a f |}
{ r8 f8 bf d' f' d' bf f |}
{ r8 f8 a c' f' c' a f |}
{ r8 g8 bf d' g' d' bf g |}
{ r8 e8 a d' e' d' a e |}
{ r8 e8 a cs' e' cs' a e |}
{ r8 a8 d' f' a' f' d' a |}
{ r8 a8 c' f' a' f' c' a |}
{ r8 g8 c' e' g' e' c' g |}
{ r8 g8 c' e' f a d' f' |}
{ r8 a8 d' f' a' f' b' f' |}
{ <a'c''>8 f' a' f' <a'd''> f' <a'c''> f' |}
{ <g'b'>8 d' c'' d' q8 d' g' d' |}
{ <<{a'8 bf' g' a' f' g' e' f'}\\{d'2 cs'}>> |}
{ r8 d'8 <a'd''> d'' <a''d'''>4 d'' |}
{ r8 c'8 <f'c''> c'' <f''c'''>4 c'' |}
{ r8 c'8 <g'c''> c'' <g''c'''>4 c'' |}
{ r8 d'8 <a'd''> d'' <a''d'''>4 d'' |}
{ r8 d'8 <a'd''> d'' <a''d'''>4 d'' |}
{ r8 c'8 <g'c''> c'' <g''c'''>4 c''16 bf' a' g' |}
{ <g'bf'>4 <d'a'> <bf g'> <d'f'> |}
{ <<{<e'a'>1}\\{r8 a8 d' e' a' a d' e'}>> |}
{ <<{a'1}\\{cs'8 a b cs' d' e' f' g'}>> |}
{ <c'f'a'>2 c'8 f' a' c'' |}
{ <<{<g'c''>1}\\{f'2 e'8 c' e' g'}>> |}
{ <<{<d'g'bf'>2 d'8 g' bf' d''~}\\{ s1}>> |}
{ <<{d''1}\\{<g'a'>8 d' g' a' f' d' f' a'}>> |}
{ <d'f'bf'd''>8 d' f' bf' d'' f' bf' d'' |}
{ <g'c''>8 c' f' a' c'' a' f' c' |}
{ <e'g'c''>8 c' e' g' bf' cs' e' bf' |}
{ <<{a'1}\\{e'8 g e' a' d' a d' a'}>> |}
{ <<{g'2 4 a'}\\{<bf ef'>8 g bf e'~ 8 bf f' bf}>> |}
{ <<{bf'4 a' g' bf'}\\{g'8 bf f' bf ef' bf g' c'}>> |}
{ <f'a'>8 e'! d' e' f' e' d' e'~ |}
{ <e'a'>8 d' e' a'~ <cs'e'a'>4 <a'a''> |}
{ a''8 g'' f'' e'' d'' e'' f'' g'' |}
{ a''8 g'' f'' e'' d'' e'' f'' g'' |}
{ a''8 g'' f'' e'' d'' e'' f'' g'' |}
{ a''8 g'' f'' e'' d'' e'' f'' g'' |}
{ <<{a''8 g'' f'' e'' d'' e'' f'' g''}\\{c''1}>> |}
{ <<{a''8 g'' f'' e'' d'' c'' bf' a'}\\{c''2 s2}>> |}
{ <<{c''1}\\{g'8 f' e' d' c' d' e' g'}>> |}
{ <e'g'>8 bf e' g' <d'f'> a' <e'g'> c'' |}
{ <<{d''2 e''}\\{f'8 e' f' g' <e'a'> e' a' e''}>> |}
{ <<{f''2 2}\\{<f'a'>8 g' a' c'' f' g' f'4}\\{s2. a'8 c''}>> |}
{ <g'b'd''>8 d' <a'c''> d' <g'b'> d' g' d' |}
{ <<{a'8 bf'! g' a' f' g' e' f'}\\{d'2 cs'}>> |}
{ r8 d'8 <a'd''> d'' <a''d'''> d'' <a'd''> d' |}
{ r8 c'!8 <f'c''> c'' <f''c'''> c'' <f'c''> c' |}
{ r8 c'8 <g'c''> c'' <g''c'''> c'' <g'c''> c' |}
{ r8 d'8 <a'd''> d'' <a''d'''> d'' <a'd''> d' |}
{ r8 d'8 f' bf' d'' bf' f' d' |}
{ r8 c'8 f' a' c'' a' f' c' |}
{ r8 bf8 d' g' bf' g' d' bf |}
{ <<{a'1}\\{r8 a8 d' e' a' a d' e'}>> |}
{ <<{a'1}\\{cs'8 a' b cs' d' e' f' g'}>> |}
{ <c'!f'a'>2 c'8 f' a' c'' |}
{ <<{<c''g'>1}\\{f'2 e'8 c' e' g'}>> |}
{ <<{<d'g'bf'>2 d'8 g' bf' d''~}\\{s1}>> |}
{ <<{d''1}\\{<g'a'>8 d' g' a' f' d' f' a'}>> |}
{ <f'bf'd''>8 d' f' bf' d'' f' bf' d'' |}
{ <g'c''>8 c' f' a' c'' a' f' c' |}
{ <e'g'c''>8 c' e' g' bf' cs' e' bf' |}
{ <<{a'1}\\{e'8 g e' a' d' a d' a'}>> |}
{ <<{g'2 4 a'}\\{<bf ef'>8 g bf ef'~ 8 bf f' bf}>> |}
{ <<{bf'4 a' g' bf'}\\{g'8 bf f' bf ef' bf g' bf}>> |}
{ <f'a'>8 e'! d' e' f' e' d' e'~ |}
{ <e'a'>8 d' e' a'~ <cs'e'a'>4 <a'a''> |}
{ <<{d''2 a'}\\{a'8 g' f' e' d' e' f' a'}>> |}
{ <<{<bf d'e'g'>2 f''8 g'' e'' f''}\\{s2 a'4 bf'}>> |}
{ <<{d''2 a'}\\{a'8 g' f' e' d' e' f' a'}>> |}
{ <<{a'2 g'}\\{<d'e'>8 bf d' e' d' bf d' e'}>> |}
{ <<{d''2 a'}\\{a'8 g' f' e' d' e' f' a'}>> |}
{ <<{<bf d'e'g'>2 f''8 g'' e'' f''}\\{s2 a'4 bf'}>> |}
{ <<{d''2 a'}\\{a'8 g' f' e' d' e' f' a'}>> |}
{ <<{<ef'fs'a'c''>4 <d'bf'>8 <c'a'> g'2}\\{s2 b8 d' bf d'}>> |}
{ <<{bf'4 a'8 g' f'2}\\{e'8 cs' e'4 8 a d' f'}>> |}
{ <<{a'4 g'8 f' e'4 <f f'>8 <g e'>}\\{b8 d' a4 <bf cs'>8 g s4}>> |}
{ <<{<a d'>4 a'4 4 4}\\{s4 a8 bf b c' cs' d'}>> |}
{ <<{g'4 bf' a' g'}\\{e'8 d' cs' e' f' e' d' cs'}>> |}
{ <<{<a d'>4 a'4 4 4}\\{s4 a8 bf b c' cs' d'}>> |}
{ <<{g'4 b' a' g'}\\{e'8 d' cs' e' f' e' d' cs'}>> |}
{ <<{g''4 bf'' s2}\\{<bf'd''e''>2 <c''a''>4 <bf'g''>^\fermata}>> |}
{ \clef bass r2 <d_~ fs(>2 |}
{ <d f)>1 |}
}
left = {
\global
{ R1 |}
{ R1 |}
{ r2 r4\fermata <c'g'>4 |}
{ <f f'>4 <a f'> <bf f'> <a f'> |}
{ <g g'>4 <a e'> <bf d'> c' |}
{ \clef bass <<{d'2 s2}\\{s2 <d,a,>2~}>> |}
{ <<{d4 a <g a> <f a>}\\{<d,a,>1~}>> |}
{ <<{<e g>4 <d bf> <cs a>2}\\{<d,a,>1}>> |}
{ <<{r4 cs'4 c' b!}\\{<d,a,d>1~}>> |}
{ <<{bf!2 a}\\{<d,a,d>2. a,4}>> |}
{ <bf,g>2 <a,g> |}
{ <<{f4 g f g\fermata}\\{g,2 a,\fermata}>> |}
{ <d f>1 |}
{ f,1 |}
{ c1 |}
{ d2 c |}
{ bf,1 |}
{ f,1 |}
{ g,1 |}
{ a,1 |}
{ a,1 |}
{ d1 |}
{ f,1 |}
{ c1 |}
{ d1 |}
{ d2 cs |}
{ c!2 f, |}
{ <<{r4 d4 <g b>2}\\{g,1}>> |}
{ <<{r4 e4~ <e g>2}\\{a,1}>> |}
{ <d,a,d>1 |}
{ <f,c f>1 |}
{ <c,g,c>1 |}
{ <d,a,d>1 |}
{ bf,1 |}
{ f,1 |}
{ <<{r8 d8 a d g2}\\{g,1}>> |}
{ a,1~ |}
{ a,2. g,4 |}
{ <<{r8 c8 f a~ 2}\\{f,1}>> |}
{ <<{r8 c8 f g~ <c g>2}\\{c,1}>> |}
{ <<{r8 d8 g bf~ 2}\\{g,1}>> |}
{ d2 c |}
{ <<{s2 bf2}\\{bf,4 c d e}>> |}
{ <<{a1}\\{f2 f,}>> |}
{ <<{g1}\\{c2 cs}>> |}
{ <<{g2 f2}\\{d1}>> |}
{ <<{r4 ef4~ <ef g>2}\\{g,1}>> |}
{ <<{r4 ef4~ <ef g>2}\\{g,1}>> |}
{ <<{r4 f4~ <f a>2}\\{a,1}>> |}
{ <<{r4 e!4 g2}\\{a,2. 4}>> |}
{ <<{r4 <f'a'>2.}\\{<d d'>1}>> |}
{ <<{r4 <f'a'>2.}\\{cs'1}>> |}
{ <<{r4 <f'a'>2.}\\{c'!1}>> |}
{ <<{r4 <f'a'>2.}\\{b1}>> |}
{ <<{r4 a4~ <a d'f'>2}\\{d1}>> |}
{ <<{r4 c4 a2}\\{f,1}>> |}
{ <<{r4 g2.}\\{c1}>> |}
{ d4 d,2 4 |}
{ <d,d>2 <cs,cs> |}
{ <c,!c!>2 <d,d>4 <c,c> |}
{ <<{r4 d4 <g b>2}\\{<b,,b,>1}>> |}
{ <<{r4 e4~ <e g>2}\\{<a,,a,>1}>> |}
{ <d,a,d>1 |}
{ <f, c f>1 |}
{ <c,g,c>1 |}
{ <d,a,d>1 |}
{ bf,1 |}
{ f,1 |}
{ g,1 |}
{ a,1~ |}
{ a,2. g,4 |}
{ <<{r8 c8 f a~ 2}\\{f,1}>> |}
{ <<{r8 c8 f g~ <c g>2}\\{c,1}>> |}
{ <<{r8 d8 g bf~ 2}\\{g,1}>> |}
{ d2 c |}
{ bf,4 c <d bf> <e bf> |}
{ <<{a1}\\{f2 f,}>> |}
{ <<{g1}\\{c2 cs}>> |}
{ <<{g2 f}\\{d1}>> |}
{ <<{r4 ef4~ <ef g>2}\\{g,1}>> |}
{ <<{r4 ef4~ <ef g>2}\\{g,1}>> |}
{ <<{r4 f4~ <f a>2}\\{a,1}>> |}
{ <<{r4 e4 g2}\\{a,1}>> |}
{ <<{d4 8 e f g a4}\\{d,1}>> |}
{ <<{r4 bf4 a g}\\{d,1}>> |}
{ <<{r4 d8 e f g a4}\\{d,1}>> |}
{ <<{r4 g4 e f}\\{d,1}>> |}
{ <<{d4 8 e f g a4}\\{d,1}>> |}
{ <<{r4 bf4 a g}\\{d,1}>> |}
{ <<{r4 d4 f bf}\\{d,1}>> |}
{ <<{r8 d8 e fs g2}\\{d,1}>> |}
{ <<{r8 cs8 d e f2}\\{d,1}>> |}
{ d,1 |}
{ <<{r8 a,8 d4 f g}\\{d,1}>> |}
{ <<{r4 g4 a bf}\\{d,1}>> |}
{ <<{r4 d4 f g}\\{d,1}>> |}
{ <<{r4 g4 a bf}\\{d,1}>> |}
{ <<{r8 d8 g a bf c' d' e'\fermata}\\{d,1}>> |}
{ r2 <d,a,>2~ |}
{ <d,a,>1 |}
}
choirPart = \new ChoirStaff <<
\new Staff \with {
midiInstrument = "choir aahs"
instrumentName = \markup \center-column { "Soprano" "Alto" }
} <<
\new Voice = "soprano" { \voiceOne \soprano }
\new Voice = "alto" { \voiceTwo \alto }
>>
\new Lyrics \with {
\override VerticalAxisGroup #'staff-affinity = #CENTER
} \lyricsto "soprano" \verseOne
\new Lyrics \with {
\override VerticalAxisGroup #'staff-affinity = #CENTER
} \lyricsto "soprano" \verseTwo
\new Staff \with {
midiInstrument = "choir aahs"
instrumentName = \markup \center-column { "Tenor" "Bass" }
} <<
\clef bass
\new Voice = "tenor" { \voiceOne \tenor }
\new Voice = "bass" { \voiceTwo \bass }
>>
>>
pianoPart = \new PianoStaff \with {
instrumentName = "Piano"
} <<
\new Staff = "right" \with {
midiInstrument = "acoustic grand"
} \right
\new Staff = "left" \with {
midiInstrument = "acoustic grand"
} { \clef treble \left }
>>
\score {
<<
\choirPart
\pianoPart
>>
\layout { }
\midi { }
}
% Rehearsal MIDI files:
\book {
\bookOutputSuffix "soprano"
\score {
\rehearsalMidi "soprano" "soprano sax" \verseOne
\midi { }
}
}
\book {
\bookOutputSuffix "alto"
\score {
\rehearsalMidi "alto" "soprano sax" \verseOne
\midi { }
}
}
\book {
\bookOutputSuffix "tenor"
\score {
\rehearsalMidi "tenor" "tenor sax" \verseOne
\midi { }
}
}
\book {
\bookOutputSuffix "bass"
\score {
\rehearsalMidi "bass" "tenor sax" \verseOne
\midi { }
}
}
_______________________________________________
lilypond-user mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/lilypond-user