3 \include "lyrics-tkit.ly"
4 \include "staff-tkit.ly"
6 make-one-voice-vocal-staff =
7 #(define-music-function (name clef)
8 (voice-prefix? string?)
10 "Make a staff with one voice and lyrics beneath
11 name: the default prefix for instrument name and music
12 clef: the clef for this staff "
14 (if (make-id name "Music")
17 \make-one-voice-staff #name #clef "Up"
18 #(make-simultaneous-music
20 (lambda (lyrics-postfix)
21 #{ \make-one-stanza "Below" #name #name #lyrics-postfix #} )
25 (make-music 'SequentialMusic 'void #t)))
27 make-two-voice-vocal-staff =
28 #(define-music-function (name clef v1name v2name)
29 (voice-prefix? string? voice-prefix? voice-prefix?)
31 "Make a vocal staff with two voices and lyrics above and below
32 name: the prefix to the staff name
34 v1name: the prefix to the name of voice one
35 v2name: the prefix to the name of voice two "
37 (define v1music (make-id v1name "Music"))
38 (define v2music (make-id v2name "Music"))
42 \make-two-voice-staff #name #clef #v1name #v2name
44 (make-simultaneous-music
46 (lambda (lyrics-postfix)
47 #{ \make-one-stanza "Above" #name #v1name #lyrics-postfix #} )
51 (make-simultaneous-music
53 (lambda (lyrics-postfix)
54 #{ \make-one-stanza "Below" #name #v2name #lyrics-postfix #} )
59 make-two-vocal-staves-with-stanzas =
60 #(define-music-function
61 (upperName upperClef lowerName lowerClef
62 v1name v2name v3name v4name verses)
63 (voice-prefix? string? voice-prefix? string?
64 voice-prefix? voice-prefix? voice-prefix? voice-prefix? list?)
66 "Make two two-voice vocal staves with several stanzas between them.
67 The number of stanzas is determined by the number of populated verse names.
68 upperName: the prefix to the upper staff name
69 upperClef: the clef to use on the upper staff
70 lowerName: the prefix to the lower staff name
71 lowerClef: the clef to use on the lower staff
72 vxname: the prefix to the name of voice x, x = 1..4
73 verses: the list of verse names containing the stanzas"
77 \make-two-voice-vocal-staff
78 #upperName #upperClef #v1name #v2name
79 #(make-simultaneous-music
83 #upperName #v1name #v2name #verse-name #} )
85 \make-two-voice-vocal-staff
86 #lowerName #lowerClef #v3name #v4name