|
From: | Saul Tobin |
Subject: | Re: Poor formatting when using partCombine and quoteDuring |
Date: | Sat, 28 Sep 2024 01:55:40 -0400 |
On Thu, 26 Sep 2024 21:36:58 -0500
David Wright <lilylis@lionunicorn.co.uk> wrote:
> On Wed 25 Sep 2024 at 16:35:51 (-0500), Cameron Hall wrote:
> > Hello, I'm a fairly new user, and I'm trying to combine some
> > similar parts together in a score which may contain quoted
> > sections. However, it seems that using quoteDuring screws up the
> > layout. Instead of getting neat chords, the stem direction isn't
> > right, it prints "Solo II" even though both parts have notes (there
> > shouldn't be any solo), and I get warnings that say "warning: this
> > Voice needs a \voiceXx or \shiftXx setting".
> >
> > %%% BEGIN SNIPPET %%%
> > \version "2.23.2"
> >
> > flute = \fixed c' { c4 c g g a a g2 f4 f e e d d c2 }
> > \addQuote flute \flute
> >
> > obOne = \fixed c' { \quoteDuring flute { s1*4 } }
> > obTwo = \fixed c' { c4 c e e f f e2 d4 d c c b, b, c2 }
> >
> > \score {
> > <<
> > \new Staff \with { instrumentName = "Flute" } \flute
> > \new Staff \with { instrumentName = "Oboes" }
> > \partCombine \obOne \obTwo
> > >>
> > }
> > %%% END SNIPPET %%%
> >
> > Adding a \voiceTwo command to the obTwo part gets rid of those
> > warnings, but still doesn't remove the bogus "Solo II" text.
>
> I don't know whether partCombine is meant to be able to handle
> quoteDuring. You can use one or the other or neither to get
> something that might be acceptable. As a British singer, the
> lower staff in the last example is most familiar. I think
> American hymnbooks use the third style, but without the a2
> marking that orchestral scores usually have printed.
>
> Cheers,
> David.
Thanks for your feedback! The last example is definitely the best
looking one for me, and the stem direction clearly indicates which
notes are played by each part. While this is a contrived example, I am
working on typesetting a larger concert band score. The flute and 1st
oboe do have many unison passages, but not all the time, so I can't
just use the same variable for both as in the example. quoteDuring
seems like the ideal solution to this, since it allows me to
selectively grab notes from other parts without ever having to write
the same thing twice. However, it seems quoteDuring has a lot of flaws
that I didn't anticipate, mainly because it doesn't actually copy notes
but just adds a "QuoteMusic" placeholder that seems to only get looked
at by the engraver, so partCombine is completely unaware of anything
inside the quote. It also doesn't work if the passage being quoted is
also a quote itself. Dynamics and _expression_ text also will not get
merged by partCombine if either is in a quoted section, so that gets
printed twice.
So, given this situation, do you have any suggestions on how to
approach this and reduce the amount of duplicated code as much as
possible? Are there any ways to work around these limitations of
quoteDuring, or should I abandon it? I supposed I could make variables
for every single time instruments play in unison, but there would be a
lot of them, and I'd need some sort of naming convention to make this
maintainable. Or maybe there's some other way to do this that I haven't
yet considered. I'm still very new to Lilypond, so I don't know all of
the possibilities.
Thanks,
Cameron
[Prev in Thread] | Current Thread | [Next in Thread] |