lilypond-user
[Top][All Lists]
Advanced

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

Re: Combining voices in American Hymns


From: Rutger Hofman
Subject: Re: Combining voices in American Hymns
Date: Wed, 14 Sep 2016 00:14:41 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.2.0

On 09/13/2016 11:32 PM, David Wright wrote:
On Tue 13 Sep 2016 at 21:56:04 (+0100), J Martin Rushton wrote:
On 12/09/16 19:21, Karlin High wrote:
On 9/7/2016 11:56 PM, David F. wrote:
Is there a way to combine two voices and print both stems (up and down) when 
the voices share a note?  \partcombine does not appear to do this by default.

American SATB hymns are typically engraved with the soprano and alto voices 
combined and the tenor and bass voices combined.  If a note in the soprano 
voice has the same duration as the note in the alto voice, then the notes for 
soprano and alto will share a stem.  If the durations are different, then there 
is no sharing.  And if the notes are the same duration and the same pitch, then 
the note with have both an up stem and a down stem.

You're not alone with difficulties on American-style part combining.
Another LilyPond user shared some of her work with me, and I'm still
studying the approach she uses. Below is a small example I'm using for
experiments. I'm not very familiar with the inner workings of LilyPond;
maybe someone will take one look and say, "That will mostly work, but
you will run into problems with such-and-such situations."
--
Karlin High
Missouri, USA
<snip>

My guess is that \partcombine #'(1 . 9) or \partcombine #'(2 . 9) does what you specify. I attach code for default partcombine and both your options. Beware that stem crossings need to lead to uncombined notes.

soprano = \relative c''' { b a g f e d c b a g f e }
alto = \relative c'' { c c c c c c c c c c c c }

\score {
    \new Staff <<
        \partcombine
            \soprano
            \alto
    >>
}

\score {
    \new Staff <<
        \partcombine #'(2 . 9)
            \soprano
            \alto
    >>
}

\score {
    \new Staff <<
        \partcombine #'(1 . 9)
            \soprano
            \alto
    >>
}

Rutger Hofman
Amsterdam



reply via email to

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