Guy,
On Tue, May 12, 2015 at 10:16 PM, Guy Stalnaker-2 [via Lilypond] <
[email protected]> wrote:
> All,
>
> I cannot figure out why LP is doing this. The snippet is below. Note the
> second to last blank measure and the following measure with the b-flat, a
> "chord" which should not be a chord. The two notes should not be
> simultaneous. The "problem" seems to be the Lyrics added to the temporary
> polyphonic context "soptwomusic" - if they are removed, the final two
> pitches are engraved correctly in two separate measure. Add the Lyrics and
> you see the result. You do see the result, don't you? :-)
>
> I'm using LP 2.19 with Frescobalci 2.18.x. on a Win7 computer.
>
> <code>
> \version "2.18.2"
> \language "english"
>
> \paper {
> #(set-paper-size "letter")
> }
>
> global = {
> \key d \major
> \numericTimeSignature
> \autoBeamOff
> }
>
> % soprano music here
>
> sopranomusic = {
> \global
> \time 3/4
> <<
> {
> \voiceOne
> fs''4 fs'' fs'' |
> a'2. |
> b''4 b'' b'' |
> c'''2. |
> }
> { \new Voice
> {
> \voiceTwo
> ds''4 ds'' ds'' |
> a'2. |
> fs''4 fs'' fs'' |
> a''2. |
> }
> }
> >> \oneVoice
> c''4 g'8 c' g'
> <<
> {
> \voiceOne
> c''8 |
> b'2. |
> }
> { \new Voice = "soptwomusic"
> {
> \voiceTwo
> c''8 |
> g'4 f' e' |
> }
> } \new Lyrics = "soptwomusic" \lyricsto "soptwomusic" {
> Al -- le -- lu -- ia
> }
> >> \oneVoice
> bf'2. |
> a' |
> }
>
> sopranowords = \lyricmode {
> Al -- le -- lu -- ia,
> Al -- le -- lu -- ia,
> Al -- le -- lu -- ia,
> Al -- le -- lu -- ia,
> }
>
> sopranoStaff = {
> \new Staff { \sopranomusic }
> \addlyrics { \sopranowords }
> }
>
> \score {
> \new ChoirStaff <<
> \sopranoStaff
> >>
> \layout { }
> \midi {
> \tempo 4=100
> }
> }
> </code>
>
> Thanks.
>
> Please reply to both me and the list.
>
> Guy Stalnaker
>
This is, indeed, a strange bug. My only guess is that LP is having a hard
time differentiating between voices since they are partially implicit and
the main lyrics are implicitly attached, too. Just a guess, though.
FYI, this bug doesn't happen in the latest unstable, but here's what you
can (should?) do to make it work "normally" with 2.18.2: move the temporary
soprano two lyrics out to the staff-level and make the soprano one voice
more explicit, like this:
<code>
\version "2.18.2"
\language "english"
\paper {
#(set-paper-size "letter")
}
global = {
\key d \major
\numericTimeSignature
\autoBeamOff
}
% soprano music here
sopranomusic = {
\global
\time 3/4
<<
{
\voiceOne
fs''4 fs'' fs'' |
a'2. |
b''4 b'' b'' |
c'''2. |
}
{ \new Voice
{
\voiceTwo
ds''4 ds'' ds'' |
a'2. |
fs''4 fs'' fs'' |
a''2. |
}
}
>> \oneVoice
c''4 g'8 c' g'
<<
{
\voiceOne
c''8 |
b'2. |
}
{ \new Voice = "soptwomusic"
{
\voiceTwo
c''8 |
g'4 f' e' |
}
}
>> \oneVoice
bf'2. |
a' |
}
sopranowords = \lyricmode {
Al -- le -- lu -- ia,
Al -- le -- lu -- ia,
Al -- le -- lu -- ia,
Al -- le -- lu -- ia,
}
sopranoStaff = <<
% make the soprano one voice explicit here
\new Voice = "soponemusic" { \sopranomusic }
% make the lyrics explicitly assigned
\new Lyrics \lyricsto "soponemusic" { \sopranowords }
\new Lyrics \lyricsto "soptwomusic" { Al -- le -- lu -- ia }
>>
\score {
\new ChoirStaff <<
\sopranoStaff
>>
\layout { }
\midi {
\tempo 4=100
}
}
</code>
I've found that putting lyrics outside and doing explicit assignments like
this always seems to help, but like I said above, you can do exactly what
you've coded in the latest unstable and it works like you expect it to.
- Abraham
--
View this message in context:
http://lilypond.1069038.n5.nabble.com/Odd-note-placement-tp176529p176543.html
Sent from the User mailing list archive at Nabble.com._______________________________________________
lilypond-user mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/lilypond-user