lilypond-user
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Four Part Piano Staff


From: David Wright
Subject: Re: Four Part Piano Staff
Date: Tue, 2 Feb 2016 13:13:45 -0600
User-agent: Mutt/1.5.21 (2010-09-15)

On Mon 01 Feb 2016 at 20:31:27 (-0800), Mark Stephen Mrotek wrote:

> In the past I have used the "variable" format.

Naturally.

> This leads to some repeated adjustments in the placement of the second voice.

I don't understand what you mean by "repeated adjustments".

> I prefer not to use variable, yet rather code within the Piano Staff group.

But that throws away one of the great strengths of LP: the separation
of form and content. Obviously one can replace any use of a variable
by its definition, as in

foo = { a b c d }
\new Voice { \foo }

replaced by

\new Voice { a b c d }

but look at what you lose...

Here's a carol with four independent lines, completely defined in
nine variables (drastically compressed for this email):

[... some house-style includes, version, language ...]

global = { \tempo "Leggiero e scherzando" 4=120 \key bf \major \time 4/4
  s1 * 13 \bar "||" \key g \major \time 3/4 s2. * 8 \time 4/4 s1 * 4 ... }
soprano = \relative { R1 R1 R1 r2 r4 bf'8 ^\mf c ... }
alto = \relative { R1 R1 r2 r4 r8 ef' ^\mf ... }
tenor = \relative { R1 r2 r4 r8 bf ^\mf c8 d ef c d4~ d8 r ... }
bass = \relative { r2 r4 f8 ^\mf f f4 bf8 bf bf4 bf8 r R1 ... }
sopranotext = \lyricmode { and a pro -- per Christ -- mas tree.” ... }
altotext = \lyricmode { “I’ve bought a nice fresh tur -- key ... }
tenortext = \lyricmode { my true love said to me, __ ... }
basstext = \lyricmode { On the first day of Christ -- mas }

First we generate five cyberbass-style midi files with a
potted ily that overrides the dynamics, for tutti and all
four parts. I have files for saatb, sattb, etc but won't
bother with their implementation here.

\include "Midi-satb.ily"

Now the vocal score with beams broken at the crochet beat:

#(set-global-staff-size 16)
\book { \bookOutputSuffix "vocal" \score {
  \new GrandStaff << \set GrandStaff.beamExceptions = ...
    \new Staff << \clef treble \global
      \new Voice { \soprano } \addlyrics { \sopranotext } >>
    \new Staff << \clef treble \global
      \new Voice { \alto } \addlyrics { \altotext } >>
    \new Staff << \clef "treble_8" \global
      \new Voice { \tenor } \addlyrics { \tenortext } >>
    \new Staff << \clef bass \global
      \new Voice { \bass } \addlyrics { \basstext } >>
  >> \layout { }
  }
}

Now a piano version for people who don't play from four staves,
with longer beams, and dynamics removed for clarity.

#(set-global-staff-size 17)
\book { \bookOutputSuffix "piano" \score {
  \new PianoStaff <<
    \new Staff << \clef treble \global
      \new Voice { \voiceOne \soprano } \new Voice { \voiceTwo \alto } >>
    \new Staff << \clef bass \global
      \new Voice { \voiceOne \tenor } \new Voice { \voiceTwo \bass } >>
  >> \layout { \context { \Voice \remove "Dynamic_engraver" } }
  }
}

I routinely do transposed parts for altos (who don't appreciate
singing early music from tenor clefs in low keys), and so on.
So much is impractical without putting the music into variables.

Cheers,
David.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]