lilypond-user
[Top][All Lists]
Advanced

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

Re: Type setting chord analysis


From: Valentin Villenave
Subject: Re: Type setting chord analysis
Date: Wed, 27 Oct 2010 01:06:57 +0200

On Wed, Oct 27, 2010 at 12:31 AM, Valentin Villenave
<address@hidden> wrote:
> From: Konzen, Richard A.

> Hello,

Greetings, and welcome to the LilyPond-user mailing list! (I am not a
specialist in parallelMusic or figures, so other users may have better
answers than me.)

> I found this thread while hunting for ideas on setting figured bass
> and roman numerals for theory exercises since I’m a theory teacher and
> like the flexibility of Lilypond for harmony examples plus my own
> compositions.  I can create a score and get \figures to work, but when
> I add \lyrics I find that Lilypond wants to place one roman numeral
> per measure.  I’ve recreated the score in this thread and like the
> results, but is there a way to do this without using the
> /parallelMusic command?

It certainly is.

Long story short: use \addlyrics instead of \lyrics:
http://lilypond.org/doc/v2.13/Documentation/learning/aligning-lyrics-to-a-melody

Long story long:

Lyrics can work in two ways: either they automatically follow the
rhythm of the voice they're associated with, or they are entered with
their own rhythm, in which case you have to enter durations just as if
they were notes: thus,

syl2 -- la4 -- ble4

will give you one half-note and two quarter-notes. See also
http://lilypond.org/doc/v2.13/Documentation/notation/common-notation-for-vocal-music#manual-syllable-durations

When entering lyrics (or notes) this way, if you do not provide
LilyPond with a duration, then it will just re-use the last duration
entered (which allows you to type long sequences of notes or words
that have the same duration, without having to type numbers every
time). If you look at your example, you will see that the last
duration that is entered in the music... is a dotted half-note.
Therefore, LilyPond applies the same duration to your "words" in the
\lyrics block.

> I had another version of this that worked out rather well using
> Frescobaldi which used a piano template with multiple voices, but the
> roman numerals always appeared above the figured bass.  Using a
> /lyricsto command didn’t work out well.

Here's how to use the lyricsto syntax: as you can see, manual
durations are no longer needed.
  \new Lyrics \lyricsto "Alto"  {  I I ii }

> Thanks for taking a look at this.

So, you basically have two solutions: either use \lyrics BUT also
specify durations:
\lyrics {I2 II4 }
... or create a proper Lyrics context where you can use \lyricsto, and
specify the Voice you want the lyrics to sync with:
  \new Lyrics \lyricsto "Alto"  {  I I ii }
As long as your voices are homo-rhythmic, it doesn't really matter.

It is a bit tricky, and to be honest it is hardly the easiest way of
getting familiar with LilyPond. I hope this doesn't make you feel
discouraged; if you want to get started the easy way please have a
look at our tutorial!
http://lilypond.org/doc/v2.13/Documentation/learning/tutorial

Oh, I almost forgot. In your example you use a huge variable
containing all of your ChoirStaff:

staffSATBMixedChoir =
\new ChoirStaff <<
  \new Staff <<
    \new Voice = "melodySAT" \relative c'' { notes }
    \new Voice = "Alto" \relative c' { notes }
  >>
  \new Staff <<
    \new Voice = "Tenor" \relative c' { notes }
    \new Voice = "Bass" \relative c { notes }
  >>
>>

You might get a clearer picture if you just define each voice as a
separate variable:

mysoprano =
\relative c' { notes }

myalto =
\relative c' { notes }

mytenor =
\relative c' { notes }

mybass =
\relative c' { notes }

(and possibly even:)

myfigures =
\figures { yourfigures }

mylyrics =
\lyrics { yourlyrics }

Then it will make it easier for you to decide the structure of you
score, in the, well, \score block:

\score { <<
  \new ChoirStaff <<
    \new Staff <<
      \mysoprano
      \myalto
    >>
    \new FiguredBass \myfigures
    \new Staff <<
      \mytenor
      \mybass
    >>
    \new Lyrics \mylyrics
>>
}


This is but an example; below you'll find yet another way of
organizing your code (oh, and by the way: do try and keep your lines
short, it will make reading your code much easier and more enjoyable).

%%%%%

up =
\new Staff \with{ instrumentName="S/A" } {
    \time 3/4
    \key g \major
    <<
      \context Voice = "Soprano" \relative c'' {
        \voiceOne
        g4 g a fis4. g8 a4 |
        b b c b4. a8 g4
        a g fis g2. \bar "||"
      }
      \context Voice = "Alto" \relative c' {
        \voiceTwo
        d4 d e d4. cis8 d4
        g g a g4. fis8 g4 |
        e d d d2. \bar "||"
      }
    >>
}

down =
\new Staff \with { instrumentName="T/B" } {
    \key g \major
    \clef bass
    <<
      \context Voice = "Tenor" \relative c' {
        \voiceOne
        b4 g c a4. a8 a4 |
        d e e d4. c8 b4 |
        c b a b2. \bar "||"
      }
      \context Voice = "Bass" \relative c {
        \voiceTwo
        g4 b c d4. e8 fis4
        g e c d4. d8 e4 c
        d d g2. \bar "||"
      }
    >>
}

arabNumbers =
\figures {
  s4 <6> <6> s4. <4 3>8 <6>4
  s4 s4 <6>4 <6 4>4. <7>8 s4
  <6>4 <6 4> 4 s4 s2.
}

romanNumbers =
\lyrics {
  I2 II4 V4. % etc
}

\score { <<
    \up % upper Staff, with two Voices
    \new FiguredBass \arabNumbers
    \down % lower Staff, with two Voices.
    \new Lyrics \romanNumbers
>>
}

Hope this helps!

Valentin.



reply via email to

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