[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: addQuote/quoteDuring plus \partcombine doesn't accurately indicate a
From: |
Malte Meyn |
Subject: |
Re: addQuote/quoteDuring plus \partcombine doesn't accurately indicate a2 passage |
Date: |
Fri, 12 Aug 2016 20:39:57 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.2.0 |
Am 12.08.2016 um 15:48 schrieb Kieren MacMillan:
My expectation (and desires) would be that it would say “a2” (or whatever the
aDueText is) in m1.
Instead, it says “solo” (or whatever the soloText is).
Am I misusing either the quote mechanism or the partcombine mechanism? Or is
this expected behaviour, and if so, is there a mechanism to automatically
handle such a circumstance such that it accurately indicates who is playing m1?
I think the problem is that \quoteDuring sets only a QuoteMusic event
instead of copying music. This is also why quotes are not transitive, i.
e. if B quotes A and C quotes B *at the same time* the music of A
doesn’t appear in C.
I made a hacky workaround that redefines addQuote and defines a new
function \replaceQuotes that replaces QuoteMusic events by actual music.
This has some limitations though: You have to use \addQuote on every
instrument, even if it isn’t quoted. And the name of the quote changes
the name of the variable; see lines 168 to 171 of the attached file.
(The file alignTo.ily mentioned at line 172ff. is another hack of mine
which you don’t need.) And you have to call \replaceQuotes by hand.
Probably there are some other bugs/limitations but maybe it helps ;)
Of course it would be nice if LilyPond allowed quotes that really copy
the quoted music to the quoting instrument.
%%%%%%%% this is how to use the solution
\version "2.19.46"
\include "transitiveReplace.ily"
hornI = {
c'4 4 4 4
d'4 4 4 4
}
\addQuote "hornI" \hornI
hornII = \displayMusic {
\quoteDuring "hornI" s1
b4 4 4 4
}
\addQuote "hornII" \hornII
\replaceQuotes
\score {
\new Staff \partcombine \hornI \hornII
}
transitiveReplace.ily
Description: Text document