> 3.) I sometimes want to write repeats as | 1,3 | 2 | 4 |
>
> Is there any better way than the following?
>
> \alternative {
> {
> \set Score.repeatCommands = #'((volta "1, 3"))
> ...
> }
> {
> ...
> }
> {
> \set Score.repeatCommands = #'((volta "4") end-repeat)
> ...
> }
> }
>
> Is there a way to make this both appear correctly and play correctly
> in a midi file?
>
Regarding the custom endings, what's wrong with this approach, such that
you need a better approach? If you are looking for a simpler way to enter
it, you can write a function.
Similar to an earlier question, no, MIDI doesn't honor or respect repeats.
So, you need to add the repeated sections in a MIDI-only tag.
\version "2.19.15"
voltaCustomThreeEndings = #(define-music-function (parser location
repMusicCommon repEndingA repMusicA repEndingB repMusicB repEndingC
repMusicC) (ly:music? markup? ly:music? markup? ly:music? markup?
ly:music?) #{
\set Score.repeatCommands = #'(start-repeat)
$repMusicCommon
\set Score.repeatCommands = #(list (list 'volta repEndingA))
$repMusicA
\set Score.repeatCommands = #(list (list 'volta repEndingB))
$repMusicB
\set Score.repeatCommands = #(list (list 'volta #f) 'end-repeat (list
'volta repEndingC))
$repMusicC
\set Score.repeatCommands = #'((volta #f))
#})
musicCommon = { e'1 1 1 1 }
musicEndingA = { a'1 }
musicEndingB = { b'1 }
musicEndingC = { c'1 }
melody = {
\voltaCustomThreeEndings
\musicCommon
"1,3" { \musicEndingA }
"2" { \tag #'MIDI { \musicCommon } \musicEndingB }
"4" { \tag #'MIDI { \musicCommon \musicEndingA \musicCommon }
\musicEndingC }
}
\score {
\header { piece = "PDF Version" }
<<
\keepWithTag #'(PDF) \melody
>>
\layout {}
}
\score {
\header { piece = "MIDI Version" }
<<
\keepWithTag #'(MIDI) \melody
>>
\midi {}
% You can print this MIDI version to validate on paper,
% just ignore the repeat signs and endings.
\layout {}
}
David Elaine Alt
415 . 341 .4954 "*Confusion is
highly underrated*"
[email protected]
self-immolation.info
skype: flaming_hakama
Producer ~ Composer ~ Instrumentalist
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
_______________________________________________
lilypond-user mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/lilypond-user