lilypond-user
[Top][All Lists]
Advanced

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

Re: use default directions for \voiceN?


From: Urs Liska
Subject: Re: use default directions for \voiceN?
Date: Mon, 15 Aug 2011 10:13:55 +0200
User-agent: Mozilla/5.0 (Windows NT 5.1; rv:5.0) Gecko/20110624 Thunderbird/5.0

Am 15.08.2011 04:57, schrieb Evan Laforge:
On Sun, Aug 14, 2011 at 7:27 PM, Kieren MacMillan
<address@hidden>  wrote:
Hi Evan,

I'm guessing both of these are possible, but I don't know quite the
right knobs to tweak to modify a voice in this way.  And I imagine it
must be a fairly common problem, so surely someone else has already
done something like this?
Ha, I should really do more research.  Just a bit more archive
trolling turned up \stemNeutral, which appears to be just what I want.
Not really. If you would go for having two voices throughout (which is a quite common idiom),
you should use
    \oneVoice
for the sections with only one voice, and
    \voiceOne / \voiceTwo
for the polyphonic sections.
\oneVoice doesn't only affect the stem direction but all relevant settings (like rest placing and slur directions - try out <c c'>~ <c c'> with \oneVoice and \voiceOne respectively to see the difference).

But if you only have short polyphonic sections you should rather use Kieren's example. To make it more explicit: This construct tells Lilypond that the first of the two voices actually continues the single voice before and the second voice is added besides it. Therefore you can tie the notes, and therefore the first voice also has all the properties from the single voice.

HTH
Best
Urs
  Looking at the code in there makes a lot of things clearer.

Instantiate the voices explicitly:

\relative g' {
  g4 a b c ~   |
  <<  { \voiceOne c4 d e f } \new Voice { \voiceTwo a,2 a }>>  \oneVoice
}
Right, my problem was getting a tie from the end of voiceTwo to tie
into the beginning of oneVoice.  It didn't want to tie even when the
notes were the same pitch.  But keeping them as two voices solves the
problem, and \stemNeutral deals with the ugliness of staying in two
voices when one is silent.  So I think I'm good now, thanks :)

While I'm here... "assignment" in lilypond makes macros, but they
don't take arguments.  However, it's very common for music to repeat
except a little bit at the end, or a few notes in the middle or
something.  It looks like you can do full on functions by dropping
down into scheme, but then you (apparently?) lose the nice syntax.  Is
there a nice way to factor "almost the same" chunks of music?  Also,
the traditional kind of macro expansion requires you to know
beforehand where all the "holes" are to fill and provide them
explicitly, and that doesn't apply so well to music.

Also it feels like I would like some kind of "negative start time" for
pick-ups, so I could say e.g.

partTwo =<<
   \new Voice { \voiceOne { ... } }
   \new Voice { \voiceTwo { \pickup 1 measure { 2s c4 c | ... } } }
music = { \partOne \partTwo }

This way the pickup from partTwo would overlap with the end of
partOne.  Otherwise, you have to split the parts up in a somewhat
unnatural way, just to insert a partOnePointFive that mixes the pickup
of partTwo with the tail of partOne.  And that leads to more messiness
if you have a rondo kind of A B C B D B thing.  Does that make sense?
Am I doing it wrong?

_______________________________________________
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]