Hi Alasdair!

Two pretty easy options here as transposing a whole lot of stuff is pretty
straight forward in lilypond:

You could exchange the lines like
   \new Staff << \global \global_two \global_prelude \prelude_two >>
with
   \new Staff << \transpose #FROM #TO { \global \global_two \global_prelude
\prelude_two } >>
with #FROM and #TO being the respective pitches you want to transpose the
music.

Or you could use a custom transpose function, that you define at the
beginning, for example:
   tsp =
      #(define-music-function (parser location msc) (ly:music?)
         #{
            \transpose #FROM #TO #msc
         #}
   )
and exchange the same line from before with
   \new Staff << \tsp { \global \global_two \global_prelude \prelude_two }
>>

In the first option you'd have to exchange the transposition for every
movement, in the second version only at the one point in the beginning of
the document.

Hope this helps,
Christian

PS: I really recommend you to work through the notation manual
systematically even though you may not need most of it right now.

Am Do., 10. Feb. 2022 um 00:18 Uhr schrieb Alasdair McAndrew <
amc...@gmail.com>:

> Thank you all so much for your help and advice.  Given that there might
> have been some confusion about what I was asking, I've added below a sort
> of template of what I'm doing.  Note that this is a duet, and the notes for
> the first part (first instrument) are given as variables *_one; and for the
> second part (second instrument) as *_two.
>
> The use of the "french" clef is just to check with the original - they
> will be changed to "\clef treble" before final typesetting.
>
> What I want to do is to produce a version of this where the second part is
> taken by a bass instrument.  This will require two things: first a change
> of the \global_two decoration, and second a change of relative pitch in its
> music.
>
> There are 8 movements, which would mean - in my example - changing the
> relative pitch for each variable containing music for this second part.
> Given that I like to separate the notes from the movement and instrument
> descriptions, I was hoping that this could be done "in one go" as it were.
> I was wondering if it would be possible to define one's own version of
> \Voice in such a way that included a relative pitch - maybe using a Scheme
> function.
>
> Anyway, I shall read all your messages with greater focus later today.
> Again, many thanks.
>
> Alasdair
>
> --
> global_one = {
>   \set Staff.instrumentName = #"Recorder"
>   \override Staff.InstrumentName.self-alignment-X = #RIGHT
>   \set Staff.midiInstrument = #"recorder"
>   \clef french
> }
>
> global_two = {
>   \set Staff.instrumentName = #"Recorder"
>   \override Staff.InstrumentName.self-alignment-X = #RIGHT
>   \set Staff.midiInstrument = #"recorder"
>   \clef french
> }
>
> global_prelude = {
>   \time 4/4
>   \key c \major
> }
>
> global_menuet = {
>   \time 3/4
>   \key c \minor
> }
>
> prelude_one = \new Voice \relative c'' {
>   notes notes notes
> }
>
> prelude_two = \new Voice \relative c'' {
>   notes notes notes
> }
>
> menuet_one = \new Voice \relative c'' {
>   notes notes notes
> }
>
> menuet_two = \new Voice \relative c'' {
>   notes notes notes
> }
>
> \score {
> \new StaffGroup <<
>    \new Staff << \global \global_one \global_prelude \prelude_one >>
>    \new Staff << \global \global_two \global_prelude \prelude_two >>
>   >>
>   \layout { }
>   \header{
>     piece = \markup {\fontsize #2 {Prelude}}
>   }
>   \midi {
>   \tempo 4 = 144}
> }
>
> \score {
> \new StaffGroup <<
>    \new Staff << \global \global_one \global_menuet \menuet_one >>
>    \new Staff << \global \global_two \global_menuet \menuet_two >>
>   >>
>   \layout { }
>   \header{
>     piece = \markup {\fontsize #2 {Menuet}}
>   }
>   \midi {
>   \tempo 4 = 144}
> }
>
> On Wed, Feb 9, 2022 at 6:16 PM Alasdair McAndrew <amc...@gmail.com> wrote:
>
>> I'm sorry about all these damn-fool queries of mine; I promise to go back
>> under my rock soon.  Anyway:
>> In the current 18th century suite I'm typesetting (for two treble
>> instruments without bass), there is a separate variable (containing the
>> notes) for each part of each movement.  Then there are global
>> declarations
>> about the instruments, and the key and time-signature of each movement;
>> and
>> these are all brought together in score blocks.
>>
>> The one thing I don't know how to do is to declare the relative pitch
>> globally.  Thus, each music variable looks like
>>
>> movement1_part1 = \new Voice \relative c'' { notes, notes, and more notes
>> }
>>
>> The difficulty is that I want to re-set the second part for a bass
>> instrument, so it might start off as
>>
>> movement1_part2 = \new Voice \relative c { notes, notes, and more notes }
>>
>> Currently this means changing the relative pitch for each movement
>> individually.  It would be much more efficient to be able to do this just
>> once at the beginning, with an appropriate global declaration.  Can this
>> be
>> done?  Is there a way to set the relative pitch of some music in a
>> \global
>> block?
>>
>> (Note, I have indeed RTFM, but it's quite hard - even with the search
>> function - to find answers to this, or examples of such use.  Hence this
>> message...)
>>
>> Thank you,
>> Alasdair
>> --
>> 0432 854 858
>> https://numbersandshapes.net
>>
>
>
> --
> Alasdair McAndrew
> mob: 0432 854 858
>
> https://numbersandshapes.net
>

Reply via email to