lilypond-user
[Top][All Lists]
Advanced

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

Re: tie problem


From: Kieren MacMillan
Subject: Re: tie problem
Date: Sat, 16 Sep 2006 20:45:16 -0400

Hi, Rainer:

I've following code:
<c d g>1\arpeggio ~ | << <c d g>1\fermata \\ {r2 r4 b'32 (c d e f g a b)} >>

According to the documentation the two "<c d g>" should be tied.
Unfortunately this is not the case. Could you help me please?

Well, you've run into a subtlety of Lilypond that could, perhaps, be better documented... ;-)

Consider the following code snippet:

%%% BEGIN SNIPPET %%%

\version "2.9.17"

\paper
{
        indent = 0\in
        line-width = 3\in
}

theMusic = \relative c'
{
        <c d g>1 ~ | << <c d g>1\fermata \\ { s2 c4 c } >>  \break
        <c d g>1 ~ | << { <c d g>1\fermata } \new Voice { s2 c4 c } >>
}

\score
{
        \theMusic
}

%%% END SNIPPET %%%

Notice that the tie does not work "as expected" in the first example, but does in the second.

This is because, in the first example, the << \\ >> construct explicitly instantiates TWO voices, BOTH of which are in addition to the one which contains the <c d g> that starts the tie -- as a result, the tie doesn't know where to end, because its Voice doesn't continue on into the <<>> block.

In the second example, the \\ is replaced by an explicit (manual) instantiation using \new Voice -- this ensures that anything before the \new Voice command is considered part of the Voice that existed before the <<>> block began, and so the tie knows where to terminate.

Does that make sense?
Or, at the very least, does it explain why you're seeing what you're seeing? =)

Best regards,
Kieren.




reply via email to

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