lilypond-devel
[Top][All Lists]
Advanced

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

Re: Part combiner: separate split state and voice names


From: Keith OHara
Subject: Re: Part combiner: separate split state and voice names
Date: Sat, 29 Nov 2014 15:48:11 -0800
User-agent: Opera Mail/12.16 (Win32)

On Sat, 29 Nov 2014 14:44:48 -0800, Dan Eble <address@hidden> wrote:

On Nov 29, 2014, at 16:46 , Keith OHara <address@hidden> wrote:

Dan Eble <dan <at> faithful.be> writes:

I would like the Scheme portion of the part
combiner to dictate the names of the voices to use at every moment.

Simply letting us specify the Voices _once_ for the whole output of
\partcombine would help a lot.

It would, and I’m glad you’re encouraging me to dig up my ancient patch to do 
that, but I wasn’t thinking of making any user-visible changes in the scope of 
the work suggested in this thread.  (That could come later.)

Well, if I can't use it, I am less motivated to review it.

I am eager for either nameable outputs from \partcombine, or VoiceGroup, in 
LilyPond so we can have a stable and functional \partcombineUp/Down.

Include an example in your patch, where we want to rearrange the routing
of soloI, unison, etc., to Voices mid-piece.

This suggestion was motivated by recent work on cases in which both parts are 
resting.  If the desired action is to route only one of the voices to the 
shared voice, the Scheme half currently can only say “unisilence” and the 
Part_combine_iterator picks a voice.  The problem is that sometimes it doesn’t 
pick well.  It seems that the Scheme half has the information to make a better 
decision.


Oh, so you meant let the Scheme portion dictate to partcombine_iterator which 
_input_ voice, as it iterates the music expression produced by \partcombine, to 
use.

That makes more sense.  However, the current problem with the iterator picking which 
input part to route to output Voice "shared", seems best solved by your current 
patch, that marks these situations as 'apart-silence' whenever there is a difference 
between the input parts.




reply via email to

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