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