lilypond-devel
[Top][All Lists]
Advanced

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

Re: Splitting Staves


From: Kieren MacMillan
Subject: Re: Splitting Staves
Date: Thu, 6 Feb 2020 09:32:41 -0500

Hi Valentin,

> As it is I think one of the important features missing in Lilypond is the 
> ability to split one staff into multiple staves, which is a feature quite 
> nescessary for orchestral and choral settings.

The term "missing" is perhaps misleading: I do exactly this all the time. That 
being said, I agree with the basic idea here, i.e., that the mechanisms need to 
be codified, improved, and properly documented in order to make this "feature" 
(really, a large collection of disparate features working together for a single 
purpose) excellent.

> There is an ”official“ hack to do it by using different staves and switching 
> context,
> but this is neighter beautyful nor useful in large settings and it bears the 
> problem
> that one needs  to manually specify all these splits, including System breaks 
> &c.

One correction: you don’t need to manually specify system breaks, if you code 
the divisi staves properly.

> So what I want to work on is some sort of ”Splittable Staff“.

I love the concept… but I‘m dubious that it can be done fully and correctly 
without a proper and reliable partcombiner as well.

> → At any point in the Score a staff should be splittable
> → Splits can be denoted by a markup like divisi
> → If a split occurs within on system, one should have the choice between:
> →→ Extending the split to the whole system, doubling not split notes (as it’s 
> usually done)
> →→ Splitting the staff in the middle of the system, as sometimes done in more 
> complex scores.
> → There should be a penalty for having a longer split start or end in such a 
> way, that it eighter starts very late into the system or ends very early in 
> the system (leading to lots of duplicated stuff)
> → One should be able to specify brackets for splits
> → One should be able to specify if a split will occur only at a barline 
> (potentially doubling stuff) of at any point
> → There should be a way to make Voices work nicely with splits (so if you 
> split four Voices 1,2,3,4 from high to low into 1,2 and 3,4 they should 
> automatically be remapped to the voice configurations 1,3,4,2 when together, 
> and 1,2 and 1,2 when split.
> → It should be possible to do nested splits
> → It should be possible to specify Instrument names for split Staves

All admirable goals!

> Now, for the gist of my question: I’m very well versed with the Lilypond 
> codebase, so I appreciate if someone could give me a few directions, what 
> parts I should study to get into the right direction.

Look into "divisi staves", "partcombiner", and similar.

I would love to help you work on this, if you’re interested in collaboration. 
As you look through the archives, I’m sure you’ll see that I’ve been working on 
this problem for at least a decade.  ;)

Best,
Kieren.
________________________________

Kieren MacMillan, composer (he/him/his)
‣ website: www.kierenmacmillan.info
‣ email: address@hidden




reply via email to

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