partcombine and quote don't play well together

classic Classic list List threaded Threaded
12 messages Options
Reply | Threaded
Open this post in threaded view
|

partcombine and quote don't play well together

Kieren MacMillan
Hello all,

The snippet below contains a [M]WE showing how partcombine and quote don't play well together. This limitation is interfering with my ability to put together the Awesome Divisi Choral Framework™ I'm currently working on.

In <http://lists.gnu.org/archive/html/lilypond-user/2016-08/msg00215.html>, Malte offered a solution which helped me get through the same issue when I was cramming out an orchestral score. But, as Malte points out, the method is hacky, and has limitations, and ultimately

> it would be nice if LilyPond allowed quotes that really copy the quoted music to the quoting instrument.

Is there a superior workaround?
In particular, is there a [long-term] fix/improvement we can easily and quickly get into the codebase?

Thanks,
Kieren.

%%%  SNIPPET BEGINS
\version "2.19.60"
\language "english"

sop = { c'8 r d'4 }
\addQuote #"sop" \sop

alt = \sop
altQ = {
  \quoteDuring #"sop" s2
}

\markup "Partcombine + variable = SUCCESS:"
\new Staff \partcombine \sop \alt

\markup "Partcombine + quoted = FAIL:"
\new Staff \partcombine \sop \altQ
%%%  SNIPPET ENDS
________________________________

Kieren MacMillan, composer
‣ website: www.kierenmacmillan.info
‣ email: [hidden email]


_______________________________________________
lilypond-user mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/lilypond-user
Reply | Threaded
Open this post in threaded view
|

Re: partcombine and quote don't play well together

David Kastrup
Kieren MacMillan <[hidden email]> writes:

> Hello all,
>
> The snippet below contains a [M]WE showing how partcombine and quote
> don't play well together.

Quotes pick up one (bottom) context, partcombine produces several.

--
David Kastrup

_______________________________________________
lilypond-user mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/lilypond-user
Reply | Threaded
Open this post in threaded view
|

Re: partcombine and quote don't play well together

Kieren MacMillan
Hi David,

>> The snippet below contains a [M]WE showing how partcombine and quote
>> don't play well together.
>
> Quotes pick up one (bottom) context, partcombine produces several.

Not sure if this was "I hit send early", or "teaching a man to fish", or "+1"…?

Thanks,
Kieren.
________________________________

Kieren MacMillan, composer
‣ website: www.kierenmacmillan.info
‣ email: [hidden email]


_______________________________________________
lilypond-user mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/lilypond-user
Reply | Threaded
Open this post in threaded view
|

Re: partcombine and quote don't play well together

David Kastrup
Kieren MacMillan <[hidden email]> writes:

> Hi David,
>
>>> The snippet below contains a [M]WE showing how partcombine and quote
>>> don't play well together.
>>
>> Quotes pick up one (bottom) context, partcombine produces several.
>
> Not sure if this was "I hit send early", or "teaching a man to fish",
> or "+1"…?

It was "the principles of the mechanisms are incompatible".

--
David Kastrup

_______________________________________________
lilypond-user mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/lilypond-user
Reply | Threaded
Open this post in threaded view
|

Re: partcombine and quote don't play well together

Kieren MacMillan
Hi David,

>> Not sure if this was "I hit send early", or "teaching a man to fish", or "+1"…?
> It was "the principles of the mechanisms are incompatible".

I thought that might be it…

Coincidentally, I've long wanted to help spearhead and sponsor a "Grand Unified Partcombine Project".
(Searching on the list, it seems like 2009 was my first "official" call for such a thing.)

Questions:

1. Is there some technical/coding reason that the principles of the two mechanisms *must* be incompatible? Put another way, could one (or both) be tweaked — or even rewritten (mostly or entirely) — such that the two mechanisms *aren't* incompatible?

2. Am I the only one who wants a killer part-combining framework? Is nobody else using it as much as I am (even in its highly-limited current state)?

3. Are there any programmers out there willing to work with me towards a really great partcombiner?

Thanks,
Kieren.
________________________________

Kieren MacMillan, composer
‣ website: www.kierenmacmillan.info
‣ email: [hidden email]


_______________________________________________
lilypond-user mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/lilypond-user
Reply | Threaded
Open this post in threaded view
|

Re: partcombine and quote don't play well together

David Kastrup
Kieren MacMillan <[hidden email]> writes:

> Hi David,
>
>>> Not sure if this was "I hit send early", or "teaching a man to
>> fish", or "+1"…?
>> It was "the principles of the mechanisms are incompatible".
>
> I thought that might be it…
>
> Coincidentally, I've long wanted to help spearhead and sponsor a
> "Grand Unified Partcombine Project".
> (Searching on the list, it seems like 2009 was my first "official"
> call for such a thing.)
>
> Questions:
>
> 1. Is there some technical/coding reason that the principles of the
> two mechanisms *must* be incompatible? Put another way, could one (or
> both) be tweaked — or even rewritten (mostly or entirely) — such that
> the two mechanisms *aren't* incompatible?
>
> 2. Am I the only one who wants a killer part-combining framework? Is
> nobody else using it as much as I am (even in its highly-limited
> current state)?
>
> 3. Are there any programmers out there willing to work with me towards
> a really great partcombiner?

What does that mean?

Over the time span since 2009 a lot of partcombiner related issues
(partly rather complex stuff like making \once part of property
overrides in order to be able to properly deal with forced partcombine
decisions) have been tackled by various people in various issues without
your spearheading and sponsoring or even review comments getting
triggered.

And we are talking about significant additions and refactorings by Dan
Eble, important fixes and refactorings by myself, additions by Keith and
others, documentation work by Phil and Trevor and so on.  All that stuff
happened without any involvement or interest of you visible in the
trackers (at least on cursory inspection).

I'd put in my usual rant about the ungrateful and underpaid work to
improve infrastructure until user-accessible features become low-hanging
fruit and can be implemented for a smile and a song, but it is a bit
pointless since there aren't smiles and songs for those either.

I don't really see a lot happening apart from "people do what they want
to see done themselves".

In your case, you might want to take a look at add-quotable at the end
of scm/part-combiner.scm, see how you could possibly extract multiple
contexts from there, design a user interface for quoting those multiple
contexts resulting from a partcombine operation (or pick out a Lyrics
context instead of a Voice context) and go from there.

--
David Kastrup

_______________________________________________
lilypond-user mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/lilypond-user
Reply | Threaded
Open this post in threaded view
|

Re: partcombine and quote don't play well together

Kieren MacMillan
Hi David,

> I'd put in my usual rant about the ungrateful and underpaid work to
> improve infrastructure until user-accessible features become low-hanging
> fruit and can be implemented for a smile and a song, but it is a bit
> pointless since there aren't smiles and songs for those either.

1. I have often given my explicit thanks (both on-list and off-list) for improvements at both infrastructure and "low-hanging fruit" levels. Every time I notice a particularly nice improvement, I do so. I will continue to do so, despite the fact that my effort apparently isn't registering.

2. On several occasions, I've offered (either on-list or off-list) unsolicited post-hoc payment for such work. Most of the time, they have been explicitly refused by the associated programmer. At least twice, it was suggested that I pay someone other than the associated programmer — which I promptly did. I will continue to do so, despite the fact that my effort apparently isn't registering.

3. I have always been, and continue to be, happy to sponsor infrastructure improvements. That being said: (a) I am in no financial position to offer a monthly amount of any significance; and (b) nobody has ever asked me to sponsor infrastructure *other* than "please consider a monthly donation".

On the rare occasions that I do have some extra money burning a hole in my pocket, I am happy to sponsor whatever moves Lilypond forward the fastest. If there are other "smiles and songs" that you need, please let me know so I can consider them.

> I don't really see a lot happening apart from "people do what they want to see done themselves".

I get that. And I don't begrudge that. Which was exactly why I asked if I'm the only one who wants to see partcombine improve further.

> In your case, you might want to take a look at add-quotable at the end
> of scm/part-combiner.scm, see how you could possibly extract multiple
> contexts from there, design a user interface for quoting those multiple
> contexts resulting from a partcombine operation (or pick out a Lyrics
> context instead of a Voice context) and go from there.

Thank you for the concrete suggestion.

Regards,
Kieren.
________________________________

Kieren MacMillan, composer
‣ website: www.kierenmacmillan.info
‣ email: [hidden email]


_______________________________________________
lilypond-user mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/lilypond-user
Reply | Threaded
Open this post in threaded view
|

Re: partcombine and quote don't play well together

Karlin High 1
In reply to this post by Kieren MacMillan
On 6/6/2017 11:30 AM, Kieren MacMillan wrote:
> 2. Am I the only one who wants a killer part-combining framework? Is nobody else using it as much as I am (even in its highly-limited current state)?
>
> 3. Are there any programmers out there willing to work with me towards a really great partcombiner?

I use the part combiner in every project I do. Improvements to it in the
2.19 versions have been remarkable. I still have occasional struggles
with it, though. Like this SSATTBB choral piece
https://youtu.be/N5PWE_uHkR4 ending with different durations and lyrics
in each voice.

As far as helping with such a project, my experience with LilyPond
amounts to only a year or so. The various Davids around here have
probably forgotten more about it than I will ever learn. I can code a
little, but I'm a spreadsheets-and-databases sort of person. Code
related to drawing and graphics I'd probably struggle to fathom. Plus,
my native coding language is Microsoft Office Visual Basic for
Applications, and some C++. I know nothing at all about Scheme-family
languages, other than that someday they will deplete the world's supply
of parentheses. :) Perhaps a position like "documentation janitor" is
something I could aspire to.
--
Karlin High
Missouri, USA
_______________________________________________
lilypond-user mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/lilypond-user
Reply | Threaded
Open this post in threaded view
|

Re: partcombine and quote don't play well together

Rutger Hofman-2
In reply to this post by Kieren MacMillan
Judicious use of \partcombineUnisono and \undo of same might help with
quoting combined with \partcombine. E.g. where you start quoting, you
can try to specify \partcombineUnisono etc.

Rutger

On 06/06/2017 05:22 PM, Kieren MacMillan wrote:

> Hello all,
>
> The snippet below contains a [M]WE showing how partcombine and quote don't play well together. This limitation is interfering with my ability to put together the Awesome Divisi Choral Framework™ I'm currently working on.
>
> In <http://lists.gnu.org/archive/html/lilypond-user/2016-08/msg00215.html>, Malte offered a solution which helped me get through the same issue when I was cramming out an orchestral score. But, as Malte points out, the method is hacky, and has limitations, and ultimately
>
>> it would be nice if LilyPond allowed quotes that really copy the quoted music to the quoting instrument.
>
> Is there a superior workaround?
> In particular, is there a [long-term] fix/improvement we can easily and quickly get into the codebase?
>
> Thanks,
> Kieren.
>
> %%%  SNIPPET BEGINS
> \version "2.19.60"
> \language "english"
>
> sop = { c'8 r d'4 }
> \addQuote #"sop" \sop
>
> alt = \sop
> altQ = {
>    \quoteDuring #"sop" s2
> }
>
> \markup "Partcombine + variable = SUCCESS:"
> \new Staff \partcombine \sop \alt
>
> \markup "Partcombine + quoted = FAIL:"
> \new Staff \partcombine \sop \altQ
> %%%  SNIPPET ENDS
> ________________________________
>
> Kieren MacMillan, composer
> ‣ website: www.kierenmacmillan.info
> ‣ email: [hidden email]
>
>
> _______________________________________________
> lilypond-user mailing list
> [hidden email]
> https://lists.gnu.org/mailman/listinfo/lilypond-user
>


_______________________________________________
lilypond-user mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/lilypond-user
Reply | Threaded
Open this post in threaded view
|

Re: partcombine and quote don't play well together

David Kastrup
In reply to this post by Kieren MacMillan
Kieren MacMillan <[hidden email]> writes:

> 3. I have always been, and continue to be, happy to sponsor
> infrastructure improvements. That being said: (a) I am in no financial
> position to offer a monthly amount of any significance; and (b) nobody
> has ever asked me to sponsor infrastructure *other* than "please
> consider a monthly donation".

The monetary situation is a red herring: indeed by far most of the work
on LilyPond goes unpaid.

What I don't see making any sense is when you write:

> Coincidentally, I've long wanted to help spearhead and sponsor a
> "Grand Unified Partcombine Project".
> (Searching on the list, it seems like 2009 was my first "official"
> call for such a thing.)

[...]

> 2. Am I the only one who wants a killer part-combining framework? Is
> nobody else using it as much as I am (even in its highly-limited
> current state)?
>
> 3. Are there any programmers out there willing to work with me towards
> a really great partcombiner?

This is just quite at odds with the last contribution you made to
LilyPond's code being a (comparatively minor) documentation change in
2010 and you completely being out of the loop with regard to
partcombiner developments that actually did happen over the years.

It's in the nature of Free Software that there are more takers than
givers: the principal point is to multiply the available resources by
allowing the free copying and reuse of them.

Which is fine.  Nevertheless I am really at a loss of what "working with
you towards a really great partcombiner" is supposed to mean.  What is
the kind of work you are envisioning for yourself here?  And when did
you plan to start on it?

--
David Kastrup

_______________________________________________
lilypond-user mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/lilypond-user
Reply | Threaded
Open this post in threaded view
|

Re: partcombine and quote don't play well together

Kieren MacMillan
Hi David,

> Nevertheless I am really at a loss of what "working with
> you towards a really great partcombiner" is supposed to mean.

I'm sorry you're at a loss. Hopefully things will become clearer to you as time goes on.

> What is the kind of work you are envisioning for yourself here?

Whatever I can do to help Lilypond move forward.

> And when did you plan to start on it?

I've already started.

Thanks,
Kieren.
________________________________

Kieren MacMillan, composer
‣ website: www.kierenmacmillan.info
‣ email: [hidden email]


_______________________________________________
lilypond-user mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/lilypond-user
Reply | Threaded
Open this post in threaded view
|

Re: partcombine and quote don't play well together

Kieren MacMillan
In reply to this post by Karlin High 1
Hi Karlin,

Thanks for your response.

> I use the part combiner in every project I do.

That's great to hear.

> As far as helping with such a project, my experience with LilyPond
> amounts to only a year or so.

Every little bit helps.

> I know nothing at all about Scheme-family languages,
> other than that someday they will deplete the world's supply of parentheses.

:)

> Perhaps a position like "documentation janitor" is something I could aspire to.

Well, would you at least consider adding "stress-tester" to that job description?
Since you use the partcombiner a lot, your "real-world" feedback will be invaluable in the improvement process.

Thanks,
Kieren.
________________________________

Kieren MacMillan, composer
‣ website: www.kierenmacmillan.info
‣ email: [hidden email]


_______________________________________________
lilypond-user mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/lilypond-user