Re: partcombine and/or engraver question

2010-03-09 Thread Kieren MacMillan
Hi Neil,

> Well, I'm clueless about how to help with your issue.
> But congrats on the premiere/recording!

Thanks!
When the CD is released, I'll be sure to let everyone know where to buy their 
obligatory 12-or-so copies.  ;)

Cheers,
Kieren.

> On Mon, Mar 8, 2010 at 7:36 AM, Kieren MacMillan
>  wrote:
>> Hi all,
>> 
>> I write [and engrave] a lot of choral music.
>> 
>> There's one big thing I want to do in Lilypond, and wanted to get some 
>> opinions on the matter...
>> 
>> In my choral music, there are often large sections of unison and two-part 
>> writing, as well as four- and [complex] eight-part writing. That is to say, 
>> often the music can be completely represented on a single staff, but usually 
>> it needs two or three or four, and every once in a while it requires eight 
>> (i.e., one staff per vocal part).
>> 
>> In a perfect world, I would like to indicate [in the .ly code] where a Voice 
>> *requires* its own Staff context, and then have Lilypond make the 
>> Staff-generating [partcombine?] decisions automatically, in order to get the 
>> best overall spacing. So (e.g.) if half-way through a system a unison 
>> section would [need to] break into four staves, either Lilypond would 
>> "back-quote" the unison music to fill the first half of the system, or 
>> insert a break at that point and respace the section accordingly, so that 
>> the "split" happens at the beginning of the new system. [I hope I've 
>> adequately explained what I'm looking for.]
>> 
>> Right now, I'm using a somewhat complex combination of \quoteDuring [drawing 
>> from a "unison" variable] and manual breaks to accomplish this task. But I 
>> was hoping there might be a way to get it automated, mostly or fully.
>> 
>> Since it would impact horizontal as well as vertical spacing, I imagine that:
>>1. The logic/algorithm/code would have to be in an engraver, and maybe 
>> even in C++, as opposed to in a Scheme function.
>>2. It might require multiple passes [like the old two-pass spacing macro].
>>3. What I'm asking for might not be possible at all.
>> 
>> Any suggestions or comments would be greatly appreciated.
>> 
>> Cheers,
>> Kieren.
>> 
>> p.s. At the U.S. premiere (and CD recording) of my "Fantasy Variations" this 
>> past weekend in Arizona, I got more compliments on the score/parts -- yay, 
>> Lilypond!
>> 
>> ___
>> lilypond-user mailing list
>> lilypond-user@gnu.org
>> http://lists.gnu.org/mailman/listinfo/lilypond-user
>> 
> 
> 
> 
> -- 
> Neil Thornock, D.M.
> Check out the newly designed website!
> http://neilthornock.net
> Assistant Professor of Music
> Composition/Theory
> Brigham Young University
> 



___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: partcombine and/or engraver question

2010-03-09 Thread Neil Thornock
Hi Kieren,
Well, I'm clueless about how to help with your issue.  But congrats on
the premiere/recording!


On Mon, Mar 8, 2010 at 7:36 AM, Kieren MacMillan
 wrote:
> Hi all,
>
> I write [and engrave] a lot of choral music.
>
> There's one big thing I want to do in Lilypond, and wanted to get some 
> opinions on the matter...
>
> In my choral music, there are often large sections of unison and two-part 
> writing, as well as four- and [complex] eight-part writing. That is to say, 
> often the music can be completely represented on a single staff, but usually 
> it needs two or three or four, and every once in a while it requires eight 
> (i.e., one staff per vocal part).
>
> In a perfect world, I would like to indicate [in the .ly code] where a Voice 
> *requires* its own Staff context, and then have Lilypond make the 
> Staff-generating [partcombine?] decisions automatically, in order to get the 
> best overall spacing. So (e.g.) if half-way through a system a unison section 
> would [need to] break into four staves, either Lilypond would "back-quote" 
> the unison music to fill the first half of the system, or insert a break at 
> that point and respace the section accordingly, so that the "split" happens 
> at the beginning of the new system. [I hope I've adequately explained what 
> I'm looking for.]
>
> Right now, I'm using a somewhat complex combination of \quoteDuring [drawing 
> from a "unison" variable] and manual breaks to accomplish this task. But I 
> was hoping there might be a way to get it automated, mostly or fully.
>
> Since it would impact horizontal as well as vertical spacing, I imagine that:
>    1. The logic/algorithm/code would have to be in an engraver, and maybe 
> even in C++, as opposed to in a Scheme function.
>    2. It might require multiple passes [like the old two-pass spacing macro].
>    3. What I'm asking for might not be possible at all.
>
> Any suggestions or comments would be greatly appreciated.
>
> Cheers,
> Kieren.
>
> p.s. At the U.S. premiere (and CD recording) of my "Fantasy Variations" this 
> past weekend in Arizona, I got more compliments on the score/parts -- yay, 
> Lilypond!
>
> ___
> lilypond-user mailing list
> lilypond-user@gnu.org
> http://lists.gnu.org/mailman/listinfo/lilypond-user
>



-- 
Neil Thornock, D.M.
Check out the newly designed website!
http://neilthornock.net
Assistant Professor of Music
Composition/Theory
Brigham Young University


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user