lilypond-user
[Top][All Lists]
Advanced

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

Re: Typesetting bug(?) - polyphony + lyrics + \times 2/3 + \oneVoice = b


From: Kieren MacMillan
Subject: Re: Typesetting bug(?) - polyphony + lyrics + \times 2/3 + \oneVoice = breakage
Date: Sun, 10 Jul 2011 08:45:34 -0400

Hi Peter,

Don't know what's causing the issue here, but I believe this version of your 
snippet does what you want:

\version "2.14.1"
global = {
 \key c \major
 \time 2/4
}
sopranoNotes = \relative c'' {
 <<
   { \voiceTwo \times 2/3 { a4 a a } }
   \new Voice = "sopranoOneVoice" {
     \voiceOne \times 2/3 { c4 c d }
   }
  >> \oneVoice |
  b2
}
sopranoWords = \lyricmode {
  One two three four.
}
\score {
  <<
    \new Staff = "sopranoStaff"
    \new Voice = "sopranoVoice" << \global \sopranoNotes >>
    \new Lyrics \lyricsto "sopranoVoice" \sopranoWords
    \new Lyrics \with { alignAboveContext = "sopranoStaff" }
      \lyricsto "sopranoOneVoice" { One two three }
  >>
}

Hope this helps!
Kieren.

On 2011-Jul-10, at 08:15, Peter Wright wrote:

> 
> Hi all,
> 
> I've run into a problem typesetting a choral piece, and was wondering
> if anyone could either confirm whether this is (or isn't) a bug in
> Lilypond. I'd also very much appreciate it if anyone could suggest a
> better workaround than the one I'm currently using. :-)
> 
> I've generated a minimal example (see below) that demonstrates the
> problem. The key bit is marked with: 'Uncomment "three" to break.'
> 
> Environment: Lilypond 2.14.1, built from source, running on Linux
> (Debian Squeeze). Note: the problem also appears on the default
> Lilypond 2.12.3 package for Debian Squeeze - I upgraded to 2.14.1 just
> to see if this bug might've been fixed.
> 
> 
> Background: I'm working on a SSAATTBB choral piece, but can
> demonstrate the problem with just a sop1+sop2 in a single staff.
> Slightly over half of the piece involves the two parts singing in
> unison, so I'm trying to get lyrics both above and below the stave
> when they're split, and only below the staff when they're unison.
> 
> That part turned out to be reasonably straightforward - but when I
> "merge" (with "\oneVoice") two parts immediately after a "\times 2/3"
> section, I end up with this message:
> 
>  programming error: bounds of this piece aren't breakable.
> 
> ...and the bar after the "\times 2/3" section renders as empty (as in
> the example below) or with some other weirdness - eg. two consecutive
> notes render as a single chord. (You can see that happen by adding
> another two notes to the end of the example.)
> 
> With the "three" commented out, it renders like so - without the word
> "three" in the sopranoOne lyrics (above the staff):
> 
> http://flooble.net/~pete/bugdemo--unbroken.png
> 
> With the "three" uncommented, I get the following as part of the build
> output:
> 
>  bugdemo.ly:28:10: programming error: bounds of this piece aren't breakable.
>    One two
>            three four.
> 
> ...and the resultant PDF output looks like this - the word "three" now
> appears in the sopranoOne lyrics above the staff, but the second bar
> renders as empty:
> 
> http://flooble.net/~pete/bugdemo--broken.png
> 
> 
> Currently I'm using a very unsatisfactory workaround which is to just
> leave out the word "three". I also briefly considered replacing:
> 
>  One two three
> 
> with:
> 
>  One "two three"
> 
> ...which does work around the problem, sort of, and doesn't look *too*
> bad, but it's a really horrible kludge that makes me feel sick :-).
> 
> Any alternative suggestions would be much appreciated.
> 
> 
> %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
> \version "2.14.1"
> global = {
>  \key c \major
>  \time 2/4
> }
> sopranoNotes = \relative c'' {
>  \global
>  <<
>    {
>      \voiceTwo
>      \times 2/3 { a4 a a }
>    }
>    \new Voice = "sopranoOneVoice"
>    {
>      \voiceOne
>      \times 2/3 { c4 c d }
>    }
>    \new Lyrics \with {
>      alignAboveContext = "sopranoStaff"
>    } \lyricsto "sopranoOneVoice" {
>      %% Uncomment "three" to break.
>      One two %three
>    }
>>> \oneVoice |
>  b2
> }
> sopranoWords = \lyricmode {
>  One two three four.
> }
> \score {
>  <<
>    \new Staff = "sopranoStaff"
>    \new Voice = "sopranoVoice" \sopranoNotes
>    \new Lyrics \lyricsto "sopranoVoice" \sopranoWords
>>> 
> }
> %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
> 
> 
> Thanks,
> 
> Pete.
> -- 
> Klingon programmer sayings:
> 7. "What is this talk of 'release'? Klingons do not make software
> 'releases.' Our software 'escapes' leaving a bloody trail of
> designers and quality assurance people in its wake."
> 
> _______________________________________________
> lilypond-user mailing list
> address@hidden
> https://lists.gnu.org/mailman/listinfo/lilypond-user
> 




reply via email to

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