David (and others), Thanks to all - I hadn't checked the NR before trying it out. Usually I'm transposing an entire score where this issue doesn't apply. Stupid me.
Peter mailto:[email protected] www.ptoye.com ------------------------- Friday, March 12, 2021, 4:49:31 PM, David Wright wrote: > On Fri 12 Mar 2021 at 11:52:36 (+0000), Peter Toye wrote: >> Thanks Christian. Not sure why that happens (bug?) but that works fine. > The problem (not a bug) is that you can't re-apply \relative > processing to absolute pitches. > \relative { … } applies the rules of relative pitch notation, an > *input* method, to { … } and yields a CHUNK of absolute pitches. > \transpose X Y { ••• } yields a CHUNK of transposed absolute pitches > from already absolute pitches. > \transpose X Y { ••• \relative { … } ••• } does both the above in turn, > but working from the *inside*. So after the \relative is processed, all > of { ••• [:CHUNK:] ••• } consists of absolute pitches to be transposed. > \relative { … … [:CHUNK:] … … [:CHUNK:] … … } applies the rules of > relative pitch notation to all the … pieces in *one* logical sequence, > treating the pitches inside the CHUNKs as invisible because they, > working from the inside, have each had their pitches frozen already > by the same rules as above. > Note particularly that any [:CHUNK:] could itself be a \relative { … }, > which is separately processed first. (It's recursive.) > One good thing—you haven't used any floating pitches, as in > tune = { c d e c d e f d }. That can complicate matters. >> Friday, March 12, 2021, 10:59:03 AM, Christian Masser wrote: >> It seems that \transpose treats the block of notes following it as absolute >> notes. If you adapt that line to explicit relative notation it probably >> yields the result you're aspiring. >> \version "2.22.0" >> \language "english" >> { >> \transpose c a, >> \relative { >> c'4 d e f g a b c >> \transpose cs df >> \relative {cs' ds es fs gs as bs cs} >> } >> } >> Am Fr., 12. März 2021 um 11:35 Uhr schrieb Peter Toye <[email protected]>: >> I am trying to engrave a transposed song. It's written without key signature >> but is very tonal. It starts in C and ends in C#. I want to transpose it >> down a minor third. The part in C is fine, but the part in C# ends up as A## >> and there are far too many double-sharps for it to be performable. >> I found the 'minimal accidental' snippet but that looks as if it messes up >> the tonality - a mixture of A sharp and B flat. >> I tried the code below, which get the note names right but the octaves go >> completely wrong. Is this a bug? It would be a useful feature if it could be >> corrected. >> \version "2.22.0" >> \language "english" >> { >> \transpose c a, >> \relative { >> c'4 d e f g a b c >> \transpose as bf >> {cs, ds es fs gs as bs cs} >> >> } >> } > Cheers, > David.
