\with {
instrumentName = \markup \smallCaps {
#(if show-instrName
- (if instrName
- #{ #instrName #}
- #{ #name #} )
- #{ "" #} )
+ (if instrName instrName name)
+ "")
}
shortInstrumentName = \markup \smallCaps {
#(if show-instrName
- (if shortInstrName
- #{ #shortInstrName #}
- (if instrName
- #{ #(substring instrName 0 1) #}
- #{ #(substring name 0 1) #} ))
- #{ "" #} )
+ (cond
+ (shortInstrName shortInstrName)
+ (instrName (substring instrName 0 1))
+ (else (substring name 0 1)))
+ "")
}
- midiInstrument =
- #(if midiName
- #{ #midiName #}
- #{ "clarinet" #} )
- #(if dynUp
- #{ \dynamicUp #}
- (if dynDown
- #{ \dynamicDown #}
- #{ \dynamicNeutral #} ))
+ midiInstrument = #(if midiName midiName "clarinet")
+ #(cond
+ (dynUp dynamicUp)
+ (dynDown dynamicDown)
+ (else dynamicNeutral))
+
}
{
- #(if Key #{ \Key #} )
+ #(if Key Key)
\clef #clef
\make-voice #name
}
#{ \markup \smallCaps #instrName #}
#{ \markup \right-column \smallCaps {
#(if v1music
- (if v1InstrName
- v1InstrName
- v1name)
+ (if v1InstrName v1InstrName v1name)
"")
#(if v2music
- (if v2InstrName
- v2InstrName
- v2name)
- "") } #} )
+ (if v2InstrName v2InstrName v2name)
+ "")
+ } #} )
shortInstrumentName =
#(if shortInstrName
#{ \markup \smallCaps #shortInstrName #}
#{ \markup \right-column \smallCaps {
#(if v1music
- (if v1ShortInstrName
- v1ShortInstrName
- (if v1InstrName
- (substring v1InstrName 0 1)
- (substring v1name 0 1)))
+ (cond
+ (v1ShortInstrName v1ShortInstrName)
+ (v1InstrName (substring v1InstrName 0 1))
+ (else (substring v1name 0 1)))
"")
#(if v2music
- (if v2ShortInstrName
- v2ShortInstrName
- (if v2InstrName
- (substring v2InstrName 0 1)
- (substring v2name 0 1)))
- "") } #} )
+ (cond
+ (v2ShortInstrName v2ShortInstrName)
+ (v2InstrName (substring v2InstrName 0 1))
+ (else (substring v2name 0 1)))
+ "")
+ } #} )
}
<<
- #(if Key #{ \Key #} )
+ #(if Key Key)
\clef #clef
#(if v1music
\consists "Staff_performer"
\dynamicUp
midiInstrument =
- #(if v1midiName
- #{ #v1midiName #}
- #{ "clarinet" #})
+ #(if v1midiName v1midiName "clarinet")
}
<<
- #(if KeepAlive #{ \KeepAlive #} )
- #(if Time #{ \Time #} )
- #(if v2music #{ \voiceOne #} #{ \oneVoice #} )
+ #(if KeepAlive KeepAlive)
+ #(if Time Time)
+ #(if v2music voiceOne oneVoice)
#v1music
>>
#} )
\consists "Staff_performer"
\dynamicDown
midiInstrument =
- #(if v2midiName
- #{ #v2midiName #}
- #{ "clarinet" #})
+ #(if v2midiName v2midiName "clarinet")
}
<<
- #(if KeepAlive #{ \KeepAlive #} )
- #(if Time #{ \Time #} )
- #(if v1music #{ \voiceTwo #} #{ \oneVoice #} )
+ #(if KeepAlive KeepAlive)
+ #(if Time Time)
+ #(if v1music voiceTwo oneVoice)
#v2music
>>
#} )
#(define-music-function (name clef)
(voice-prefix? string?)
- "Make a staff with one voice and lyrics beneath
- name: the default prefix for instrument name and music
- clef: the clef for this staff "
+ "Make a staff with one voice and lyrics beneath
+ name: the default prefix for instrument name and music
+ clef: the clef for this staff "
- (if (make-id name "Music")
- #{
- <<
- \make-one-voice-staff #name #clef "Up"
- #(make-simultaneous-music
- (reverse (map
- (lambda (lyrics-postfix)
- #{ \make-one-stanza "Below" #name #name #lyrics-postfix #} )
- lyrics-postfixes)))
- >>
- #}
- (make-music 'SequentialMusic 'void #t)))
+ (if (make-id name "Music")
+ (make-simultaneous-music
+ (list
+ (make-one-voice-staff name clef "Up")
+ (make-simultaneous-music
+ (reverse (map
+ (lambda (lyrics-postfix)
+ (make-one-stanza "Below" name name lyrics-postfix))
+ lyrics-postfixes)))))
+ (make-music 'SequentialMusic 'void #t)))
make-two-voice-vocal-staff =
#(define-music-function (name clef v1name v2name)
(voice-prefix? string? voice-prefix? voice-prefix?)
- "Make a vocal staff with two voices and lyrics above and below
- name: the prefix to the staff name
- clef: the clef to use
- v1name: the prefix to the name of voice one
- v2name: the prefix to the name of voice two "
+ "Make a vocal staff with two voices and lyrics above and below
+ name: the prefix to the staff name
+ clef: the clef to use
+ v1name: the prefix to the name of voice one
+ v2name: the prefix to the name of voice two "
- (define v1music (make-id v1name "Music"))
- (define v2music (make-id v2name "Music"))
+ (define v1music (make-id v1name "Music"))
+ (define v2music (make-id v2name "Music"))
- #{
- <<
- \make-two-voice-staff #name #clef #v1name #v2name
- #(if v1music
- (make-simultaneous-music
- (map
- (lambda (lyrics-postfix)
- #{ \make-one-stanza "Above" #name #v1name #lyrics-postfix #} )
- lyrics-postfixes)))
+ (make-simultaneous-music
+ (delq! #f
+ (list
+ (make-two-voice-staff name clef v1name v2name)
+ (and v1music
+ (make-simultaneous-music
+ (map
+ (lambda (lyrics-postfix)
+ (make-one-stanza "Above" name v1name lyrics-postfix))
+ lyrics-postfixes)))
- #(if v2music
- (make-simultaneous-music
- (reverse (map
- (lambda (lyrics-postfix)
- #{ \make-one-stanza "Below" #name #v2name #lyrics-postfix #} )
- lyrics-postfixes))))
- >>
- #} )
+ (and v2music
+ (make-simultaneous-music
+ (reverse
+ (map
+ (lambda (lyrics-postfix)
+ (make-one-stanza "Below" name v2name lyrics-postfix))
+ lyrics-postfixes))))))))
make-two-vocal-staves-with-stanzas =
#(define-music-function
vxname: the prefix to the name of voice x, x = 1..4
verses: the list of verse names containing the stanzas"
- #{
- <<
- \make-two-voice-vocal-staff
- #upperName #upperClef #v1name #v2name
- #(make-simultaneous-music
- (map
- (lambda (verse-name)
- #{ \make-one-stanza
- #upperName #v1name #v2name #verse-name #} )
- verses))
- \make-two-voice-vocal-staff
- #lowerName #lowerClef #v3name #v4name
- >>
- #} )
+ (make-simultaneous-music
+ (list
+ (make-two-voice-vocal-staff
+ upperName upperClef v1name v2name)
+ (make-simultaneous-music
+ (map
+ (lambda (verse-name)
+ (make-one-stanza
+ upperName v1name v2name verse-name))
+ verses))
+ (make-two-voice-vocal-staff
+ lowerName lowerClef v3name v4name))))