lilypond-user
[Top][All Lists]
Advanced

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

Re: Control which voice if shifted left


From: Keith OHara
Subject: Re: Control which voice if shifted left
Date: Wed, 17 Jun 2015 04:31:33 +0000 (UTC)
User-agent: Loom/3.14 (http://gmane.org/)

Kieren MacMillan <kieren_macmillan <at> sympatico.ca> writes:

> Curiously, switching voices as
[...] 
> results in a “left-shifted” voicing that closely resembles what the Satie-
engraving did.  =)
> 
> In any case, it would be great to have a setting like
> 
>     Context.voice-shifting = #’(3 1 2 4)
> 
> where one simply gives a list of the left-to-right order of voice 
placement 
to be observed if any shifting is required.
> 

In this case, I think we should first fix one thing about what LilyPond 
does 
on her own.  

I think LilyPond should align the innermost voices, rather than voiceOne 
and voiceTwo, and consider the merging note-heads between inner voices. 
That is, align the B-flat and E in the example two posts back, and merge 
the Es in
  << \time 3/2
    \key d \minor
    { \voiceOne g''2 e'' d''8 cis'' d''4 }
    \\ { \voiceFour d''2 e'' b' }
    \\ { \voiceTwo g'2 g' f' } >>

( LilyPond works best if the outer voices are one and two, and then the 
inner voices are three and four, and the documentation instructs to order 
voices this way.  This makes practical sense, because the inner voices are 
more often temporary, so we might start with voiceOne and voiceTwo and then 
add voiceThree for a short time.  But, the order from high pitch to low 
pitch is the counter-intuitive 2, 4, 3, 1. )

I don't have a reference explaining what is standard practice for four 
voices, so I'm not sure if aligning and merging inner voices is recommended 
in general, but I do see it done a lot.

A minor problem is the names of the \shiftOff and \shiftOn commands, which 
would look wrong if the higher-numbered inner voices are aligned.  But 
these would be more descriptively named \shiftTowardHead and 
\shiftTowardStem anyway.

reply via email to

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