Search code examples
lilypond

How can I insert a tie between notes in different voices?


I have a piano score with two voices in the right-hand (treble) part. How can I insert a tie between two notes of the same pitch in different voices?

This is what I have so far. I want to tie the last note of line (A) to the first note of line (B), and the last note of line (C) to the first note of line (D).

\version "2.16.2"
\relative c'' {
  \time 12/8
  \key f \minor
  <<
    {
      aes2.~ \mp
      aes8 ees bes' c bes aes~
    } \\
    {
      ees2. s2.
    }
  >> |
  <<
    {
      aes2.~
      aes8 ees bes' c bes aes~      % (A)
    } \\
    { }
  >> |
  <<
    {
      c2.~
      c8 ees, bes' c bes aes~       % (C)
    } \\
    {
      aes4. ees4.~ ees8 s8 s8 s4.   % (B)
    }
  >> |
  <<
    {
      bes'2.~ bes8 ees, bes' c bes aes
    } \\
    {
      aes4. ees4.~ ees8 s8 s8 s4.   % (D)
    }
  >> |
}

Here's the output:

Output from the above LilyPond score

LilyPond gives me the following warnings when typesetting:

mwe.ly:18:26: warning: unterminated tie
      aes8 ees bes' c bes 
                          aes~
mwe.ly:25:25: warning: unterminated tie
      c8 ees, bes' c bes 
                         aes~

How can I get rid of these warnings and get the desired behavior, as in the following image?

The desired output (ties hand-drawn in GIMP)


Solution

  • You can use this trick http://www.lilypond.org/doc/v2.18/Documentation/learning/other-uses-for-tweaks.html#tying-notes-across-voices but your per-measure polyphonic structure makes it difficult. Try putting all 4 measures in two voices into a single polyphony construct, then make this the lower voice:

    ees2. s2.
    s2. s4. s4 \tweak Stem.transparent ##t aes8~
    aes4. ees4.~ ees8 s8 s8 s4  \tweak Stem.transparent ##t aes8~  % (B)
    aes4. ees4.~ ees8 s8 s8 s4.   % (D)
    

    and remove the old, non working ties from upper voice.

    Sample of result