Guide, node Updating translation committishes..
@end ignore
-@c \version "2.17.30"
+@c \version "2.19.2"
@node Vocal music
@section Vocal music
@funindex \addlyrics
@funindex \lyricsto
-Lyrics are printed by interpreting them in the context called
-@code{Lyrics}, see @ref{Contexts explained}.
+Lyrics are interpreted in @code{\lyricmode} and printed in a
+@code{Lyrics} context, see @ref{Contexts explained}.
@example
\new Lyrics \lyricmode @{ @dots{} @}
@end example
+Two variants of @code{\lyricmode} additionally set an associated
+context used to synchronise the lyric syllables to music. The more
+convenient @code{\addlyrics} immediately follows the musical content
+of the Voice context with which it should be synchronised, implicitly
+creating a Lyrics context of its own. The more versatile
+@code{\lyricsto} requires both specifying the associated Voice context
+by name and explicitly creating a containing Lyrics context. For
+details see @ref{Automatic syllable durations}.
+
Lyrics can be aligned with melodies in two main ways:
@itemize
when setting dialogue over music; for examples showing this, see
@ref{Dialogue over music}.
-When entered in this way the words are left-aligned to the notes
-by default, but may be center-aligned to the notes of a melody by
-specifying an associated voice, if one exists. For details, see
-@ref{Manual syllable durations}.
-
@end itemize
@seealso
@code{Voice} context is specified first, followed by the
@code{Lyrics} context. The lyrics themselves follow the
@code{\lyricsto} command. The @code{\lyricsto} command
-invokes lyric mode automatically, so the @code{\lyricmode} keyword
-may be omitted. By default, the lyrics are placed underneath the
-notes. For other placements, see @ref{Placing lyrics vertically}.
+invokes lyric mode automatically. By default, the lyrics are placed
+underneath the notes. For other placements, see
+@ref{Placing lyrics vertically}.
@subheading Using @code{\addlyrics}
but with pitches replaced by text -- and the duration of each
syllable is entered explicitly after the syllable.
-By default, syllables will be left-aligned to the corresponding
-musical moment. Hyphenated lines may be drawn between syllables
+Hyphenated lines may be drawn between syllables
as usual, but extender lines cannot be drawn when there is no
associated voice.
@lilypond[relative=1,verbatim,quote]
<<
\new Voice = "melody" {
- \time 3/4
- c2 e4 g2 f
+ c'2 a f f e e
}
\new Lyrics \lyricmode {
- play1 the4 game4
+ c4. -- a -- f -- f -- e2. -- e
}
>>
@end lilypond
This technique is useful when writing dialogue over music, see
@ref{Dialogue over music}.
-To center-align syllables on the notes at the corresponding musical
-moments, set @code{associatedVoice} to the name of the Voice context
-containing those notes. When @code{associatedVoice} is set, both
-double hyphens and double underscores can be used to draw
-hyphenated lines and extenders under melismata correctly.
+To change syllable alignment, simply override the @code{self-alignment-X}
+property:
@lilypond[relative=1,verbatim,quote]
<<
\new Voice = "melody" {
\time 3/4
- c2 e4 g f g
+ c2 e4 g2 f
}
\new Lyrics \lyricmode {
- \set associatedVoice = #"melody"
- play2 the4 game2. __
+ \override LyricText.self-alignment-X = #LEFT
+ play1 a4 game4
}
>>
@end lilypond
-@c TODO see also feature request 707 - show how to do this with manual durations
-
@seealso
Notation Reference:
@ref{Dialogue over music}.
\new Voice = "melody" {
\time 3/4
f4 g2 ~ |
- g4 e2 ~ |
- e8
+ 4 e2 ~ |
+ 8
}
\new Lyrics \lyricsto "melody" {
Ky -- ri -- e __
\time 3/4
\set melismaBusyProperties = #'()
c4 d ( e )
- g8 [ f ] f4 ~ f
+ g8 [ f ] f4 ~ 4
}
\new Lyrics \lyricsto "melody" {
Ky -- ri -- e e -- le -- i -- son
\time 3/4
\set melismaBusyProperties = #'()
c4 d ( e )
- g8 [ f ] ~ f4 ~ f
+ g8 [ f ] ~ 4 ~ f
}
\new Lyrics \lyricsto "melody" {
Ky -- ri -- _ e __ _ _ _
>>
@end lilypond
-The @code{NullVoice} context must be inside a @code{Staff}
-context, and should only contain notes that are already being
-displayed in that staff, and in the same octave. Otherwise the
-@code{NullVoice} may interact with the printed voices in
-unexpected ways. For example, arbitrary notes in the
-@code{NullVoice} may cause accidentals to appear (or disappear) on
-the staff.
-
This method also can be used with the @code{\partcombine}
function, which does not allow lyrics on its own:
>>
@end lilypond
+@knownissues
+The @code{\addLyrics} function only works with @code{Voice} lyrics
+and so cannot be used with @code{NullVoice}.
+
@noindent
The @code{\partcombine} function is described in
@ref{Automatic part combining}.
words = \lyricmode { la __ la __ }
\new ChoirStaff <<
- \new Staff <<
- \soprano
- \new NullVoice = "aligner" \aligner
- >>
+ \new Staff \soprano
+ \new NullVoice = "aligner" \aligner
\new Lyrics \lyricsto "aligner" \words
\new Staff \partcombine \altoOne \altoTwo
>>
@end lilypond
-However, note that in the second half of the measure above, the
-notes in the @code{NullVoice} context reflect the rhythm of the
-lower staff, but they do not deviate from the single pitch being
-displayed in the staff to which the @code{NullVoice} belongs.
-While not actually required in this particular example, it is a
-good idea in general to enter the notes in this way.
-
-
@node Stanzas
@subsection Stanzas
@item
An introduction to creating an SATB vocal score can be found in
the Learning Manual, see @rlearning{Four-part SATB vocal score}.
+There is also a built-in template which simplifies the entry of
+SATB vocal music, see @rlearning{Built-in templates}.
@item
Several templates suitable for various styles of choral music can
@ref{Score layout},
@ref{Separating systems},
@ref{Setting the staff size},
-@ref{Using an extra voice for breaks},
+@ref{Breaks},
@ref{Vertical spacing}.
Internals Reference:
c c c
@end lilypond
-Alternatively, if there are many character changes, it may be
-easier to set up @qq{instrument} definitions for each character at
-the top level so that @code{\instrumentSwitch} can be used to
-indicate each change.
+Alternatively, if there are many character changes, it may be easier
+to set up variables to hold the definitions for each character so
+that the switch of characters can be indicated easily and concisely.
@lilypond[quote,verbatim]
-\addInstrumentDefinition #"kaspar"
- #`((instrumentTransposition . ,(ly:make-pitch -1 0 0))
- (shortInstrumentName . "Kas.")
- (clefGlyph . "clefs.G")
- (clefTransposition . -7)
- (middleCPosition . 1)
- (clefPosition . -2)
- (instrumentCueName . ,(markup #:fontsize 1 #:smallCaps "Kaspar"))
- (midiInstrument . "voice oohs"))
-
-\addInstrumentDefinition #"melchior"
- #`((instrumentTransposition . ,(ly:make-pitch 0 0 0))
- (shortInstrumentName . "Mel.")
- (clefGlyph . "clefs.F")
- (clefTransposition . 0)
- (middleCPosition . 6)
- (clefPosition . 2)
- (instrumentCueName . ,(markup #:fontsize 1 #:smallCaps "Melchior"))
- (midiInstrument . "choir aahs"))
+kaspar = {
+ \clef "G_8"
+ \set Staff.shortVocalName = "Kas."
+ \set Staff.midiInstrument = "voice oohs"
+ <>^\markup \smallCaps "Kaspar"
+}
+
+melchior = {
+ \clef "bass"
+ \set Staff.shortVocalName = "Mel."
+ \set Staff.midiInstrument = "choir aahs"
+ <>^\markup \smallCaps "Melchior"
+}
\relative c' {
- \instrumentSwitch "kaspar"
+ \kaspar
c4 c c c
- \instrumentSwitch "melchior"
+ \melchior
a4 a a a
- \instrumentSwitch "kaspar"
+ \kaspar
c4 c c c
}
@end lilypond
@seealso
+Learning Manual:
+@rlearning{Organizing pieces with variables}.
+
Notation Reference:
-@ref{Instrument names},
-@ref{Scheme functions},
@ref{Text},
@ref{Text markup commands}.
-Extending LilyPond:
-@rextend{Markup construction in Scheme}.
-
@node Musical cues
@unnumberedsubsubsec Musical cues