lilypond-user
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Lyrics and alternative repeats default behavior


From: Pekka Siponen
Subject: Re: Lyrics and alternative repeats default behavior
Date: Tue, 31 Mar 2009 19:10:15 +0300
User-agent: Thunderbird 2.0.0.21 (Macintosh/20090302)

Tim McNamara wrote:
I still find a problem with this approach; the second stanza is not connected to second ending..

Sure it is, but you'd put those words in the second \alternative ending. Looks a little odd in the source code, but the point of the source code is to render into good output on the page and not how the source code itself looks.

If I wanted to put a longer word accross the barline, it wouldn't work..? Also this approach seems a little like something to trick LilyPond with to make it look ok. It would be nice if the syntax was more focused on the content and LilyPond would worry about the output with good default settings. At least in simple examples like this one.

So.. what if the "words" were longer like this?

     \new Lyrics \lyricsto "alku" {
       cx dx ex fx gx ax bx --  cx -- dI -- eI fI gI
       cy dy ey fy gy ay by -- cy -- dII -- cII bII aII
     }

My experience is that LilyPond does not easily handle lyrics crossing bar lines from the end of the first \alternative back to the top of the song, especially if there is a pickup note, but that may be my coding skills and not a problem in LilyPond itself (it may also be a limitation of using \addlyrics, which is the method I usually use).

Hi Tim =)

In my opinion there is great importance how the source code looks, especially in a program like lilypond, where all the input is done by hand, not by a program with a fancy user interface. Thus the syntax should be as user friendly as possible. Take XHTML for example, its main purpose is to define structure and content, not declare how everything should look. Maybe LilyPond should aim for the same thing..? =P

This is the best that I have been able to come up with yet and it is not pretty..

\version "2.12.2"
\score { <<
 \new Voice = "melody" \relative c' {
   { \partial 2 c2 }
     \new Voice = "verse" \relative c' {
       \repeat volta 2 {c4 d e f | g1 | }
       \alternative { { c2 d } { e2 f } }
     }
\relative c''' { a2 b | c1 } }
 \new Lyrics = "mainlyrics" \lyricsto melody {
   pick
   la si do }
 \context Lyrics = "mainlyrics" \lyricsto verse {
   \repeat volta 2 { do re mi fa sol }
   \alternative { { dom rem } { mim fam } }
 }
 \new Lyrics = "repeatlyrics" \lyricsto verse {
  dodo rere mimi fafa solsol- }
>>
}

Or a more logical variation (still not pretty):

\version "2.12.2"

\score { <<
 \new Voice = "melody" \relative c' {
   \new Voice = "pickup" { \partial 2 c2 }
   \new Voice = "verse" \relative c' {
     \repeat volta 2 {c4 d e f | g1 | }
     \alternative { { c2 d } { e2 f } }
   }
\new Voice = "end" \relative c''' { a2 b | c1 } }
 \new Lyrics = "firstline" \lyricsto pickup { pick }
 \context Lyrics = "firstline" \lyricsto verse {
   \repeat volta 2 { do re mi fa sol }
   \alternative { { dom rem } { mim fam } }
 }
 \new Lyrics = "secondline" \lyricsto verse {
   dodo rere mimi fafa solsol- }
 \context Lyrics = "firstline" \lyricsto end { la si do }
>>
}




reply via email to

[Prev in Thread] Current Thread [Next in Thread]