Guide, node Updating translation committishes..
@end ignore
-@c \version "2.12.0"
+@c \version "2.13.36"
@node Vocal music
@section Vocal music
Music Glossary:
@rglos{ambitus}.
+Snippets:
+@rlsr{Vocal music}.
+
@node Entering lyrics
@unnumberedsubsubsec Entering lyrics
-Lyrics are entered in lyric mode. This section explains how this
-done.
-
-@cindex lyrics
+@cindex lyrics, entering
+@cindex entering lyrics
+@cindex punctuation in lyrics
+@cindex lyrics punctuation
+@cindex spaces in lyrics
+@cindex quotes in lyrics
@funindex \lyricmode
-@cindex punctuation
-@cindex spaces, in lyrics
-@cindex quotes, in lyrics
-@c TODO: this section is to be rewritten.
-Since LilyPond input files are text, there is at least one
-issue to consider when working with vocal music:
-song texts must be interpreted as text, not notes. For example, the
-input@tie{}@code{d} should be interpreted as a one letter syllable,
-not the note@tie{}D.
-Therefore, a special lyric mode has to be used, either explicitly
-or using some abbreviated methods.
+@c TODO should we explain hyphens here
Lyrics are entered in a special input mode, which can be introduced
by the keyword @code{\lyricmode}, or by using @code{\addlyrics} or
-@code{\lyricsto}. In this mode you can enter lyrics,
-with punctuation and accents, and the input @code{d} is not parsed as
-a pitch, but rather as a one letter syllable. Syllables are entered
-like notes, but with pitches replaced by text. For example,
+@code{\lyricsto}. In this special input mode, the input @code{d}
+is not parsed as the pitch @notation{D}, but rather as a one-letter
+syllable of text. In other words, syllables are entered like notes
+but with pitches replaced by text.
+
+For example:
@example
-\lyricmode @{ Twin-4 kle4 twin- kle litt- le star2 @}
+\lyricmode @{ Three4 blind mice,2 three4 blind mice2 @}
@end example
-There are two main methods to specify the horizontal placement
+There are two main methods for specifying the horizontal placement
of the syllables, either by specifying the duration of each syllable
-explicitly, like in the example above, or by automatically aligning
-the lyrics to a melody or other voice of music, using @code{\addlyrics}
-or @code{\lyricsto}.
-@c TODO: broken
-@c For more details see @ref{The Lyrics context}.
+explicitly, as in the example above, or by leaving the lyrics to be
+aligned automatically to a melody or other voice of music, using
+@code{\addlyrics} or @code{\lyricsto}. The former method is
+described below in @ref{Manual syllable durations}. The latter
+method is described in @ref{Automatic syllable durations}.
-A word or syllable of lyrics begins with an alphabetic character, and ends
-with
-any space or digit. The following characters can be any character
-that is not a digit or white space.
+A word or syllable of lyrics begins with an alphabetic character
+(plus some other characters, see below) and is terminated by any
+white space or a digit. Later characters in the syllable can be any
+character that is not a digit or white space.
-Any character that is not a digit or white space will be regarded as
-part of the syllable; one important consequence of this is that a word
-can end with @code{@}}, which often leads to the following mistake:
+Because any character that is not a digit or white space is regarded
+as part of the syllable, a word is valid even if it ends with
+@code{@}}, which often leads to the following mistake:
@example
-\lyricmode @{ lah- lah@}
+\lyricmode @{ lah lah lah@}
@end example
In this example, the @code{@}} is included in the final syllable, so the
opening brace is not balanced and the input file will probably not
-compile.
+compile. Instead, braces should always be surrounded with white space:
+@example
+\lyricmode @{ lah lah lah @}
+@end example
-@funindex \property in \lyricmode
+@cindex overrides in lyric mode
+@funindex \override in \lyricmode
-@noindent
-Similarly, a period which follows an alphabetic sequence is included in
-the resulting string. As a consequence, spaces must be inserted around
-property commands: do @emph{not} write
+Similarly, in lyric mode, a period will be included in the
+alphabetic sequence that it follows. As a consequence, spaces
+must be inserted around the period in @code{\override} commands.
+Do @emph{not} write
@example
\override Score.LyricText #'font-shape = #'italic
\override Score . LyricText #'font-shape = #'italic
@end example
-To enter lyrics with characters from non-English languages, or with
-accented and special characters (such as the heart symbol or slanted quotes),
-simply insert the characters directly into the input file and save
-it with UTF-8 encoding. See @ref{Text encoding}, for more info.
+Punctuation, lyrics with accented characters, characters from
+non-English languages, or special characters (such as the heart
+symbol or slanted quotes), may simply be inserted directly
+into the input file, providing it is saved with UTF-8 encoding.
+For more information, see @ref{Text encoding}.
-@lilypond[quote,ragged-right,fragment,verbatim]
-\relative c' { e4 f e d e f e2 }
-\addlyrics { He said: “Let my peo ple go”. }
+@lilypond[quote,verbatim]
+\relative c'' { d8 c16 a bes8 f e' d c4 }
+\addlyrics { „Schad’ um das schö -- ne grü -- ne Band, }
@end lilypond
-To use normal quotes in lyrics, add a backslash before the
-quotes. For example,
+Normal quotes may be used in lyrics, but they have to be preceded
+with a backslash character and the whole syllable has to be
+enclosed between additional quotes. For example,
-@lilypond[quote,ragged-right,fragment,verbatim]
+@lilypond[quote,verbatim]
\relative c' { \time 3/4 e4 e4. e8 d4 e d c2. }
-\addlyrics { "\"I" am so lone- "ly\"" said she }
+\addlyrics { "\"I" am so lone -- "ly,\"" said she }
@end lilypond
-The full definition of a word start in Lyrics mode is somewhat more
-complex.
-
-A word in Lyrics mode begins with: an alphabetic character, @code{_},
-@code{?}, @code{!}, @code{:}, @code{'}, the control characters @code{^A}
-through @code{^F}, @code{^Q} through @code{^W}, @code{^Y}, @code{^^},
-any 8-bit character with ASCII code over 127, or a two-character
+The full definition of a word start in lyrics mode is somewhat more
+complex. A word in lyrics mode is one that begins with an
+alphabetic character, @code{_}, @code{?}, @code{!}, @code{:},
+@code{'}, the control characters @code{^A} through @code{^F},
+@code{^Q} through @code{^W}, @code{^Y}, @code{^^}, any 8-bit
+character with an ASCII code over 127, or a two-character
combination of a backslash followed by one of @code{`}, @code{'},
@code{"}, or @code{^}.
@c " to balance double quotes for not-so-bright context-sensitive editors
-To define variables containing lyrics, the function @code{lyricmode}
-must be used.
-
-@example
-verseOne = \lyricmode @{ Joy to the world the Lord is come @}
-\score @{
- <<
- \new Voice = "one" \relative c'' @{
- \autoBeamOff
- \time 2/4
- c4 b8. a16 g4. f8 e4 d c2
- @}
- \addlyrics @{ \verseOne @}
- >>
-@}
-@end example
-
-
@seealso
+Learning Manual:
+@rlearning{Songs}.
+
Notation Reference:
-@ref{Fonts}.
+@ref{Automatic syllable durations},
+@ref{Fonts},
+@ref{Input modes},
+@ref{Manual syllable durations}.
Internals Reference:
-@rinternals{LyricText},
-@rinternals{LyricSpace}.
+@rinternals{LyricText}.
@node Aligning lyrics to a melody
@unnumberedsubsubsec Aligning lyrics to a melody
+@cindex lyrics, aligning to a melody
+@cindex @code{associatedVoice}
@funindex \lyricmode
@funindex \addlyrics
@funindex \lyricsto
-@c TODO: this stuff is to be rewritten. -vv
-
-Aligning of text with melodies can be made automatically, but if you
-specify the durations of the syllables it can also be made manually.
-Lyrics aligning and typesetting are prepared with the help of skips,
-hyphens and extender lines.
-
Lyrics are printed by interpreting them in the context called
-@code{Lyrics}; see @rinternals{Lyrics}, for more.
+@code{Lyrics}, see @ref{Contexts explained}.
@example
-\new Lyrics \lyricmode @dots{}
+\new Lyrics \lyricmode @{ @dots{} @}
@end example
-There are two main methods to specify the horizontal placement
-of the syllables:
+Lyrics can be aligned with melodies in two main ways:
@itemize
+
@item
-by automatically aligning
-the lyrics to a melody or other voice of music, using @code{\addlyrics}
-or @code{\lyricsto}
+Lyrics can be aligned automatically, with the durations of the
+syllables being taken from another voice of music or (in special
+circumstances) an associated melody, using @code{\addlyrics},
+@code{\lyricsto}, or by setting the @code{associatedVoice} property.
+For more details, see @ref{Automatic syllable durations}.
+
+@lilypond[quote,ragged-right,verbatim]
+<<
+ \new Staff <<
+ \time 2/4
+ \new Voice = "one" \relative c'' {
+ \voiceOne
+ c4 b8. a16 g4. r8 a4 ( b ) c2
+ }
+ \new Voice = "two" \relative c' {
+ \voiceTwo
+ s2 s4. f8 e4 d c2
+ }
+ >>
+
+% takes durations and alignment from notes in "one"
+ \new Lyrics \lyricsto "one" {
+ Life is __ _ love, live __ life.
+ }
+
+% takes durations and alignment from notes in "one" initially
+% then switches to "two"
+ \new Lyrics \lyricsto "one" {
+ No more let
+ \set associatedVoice = "two" % must be set one syllable early
+ sins and sor -- rows grow.
+ }
+>>
+@end lilypond
+
+The first stanza shows the normal way of entering lyrics.
+
+The second stanza shows how the voice from which the lyric
+durations are taken can be changed. This is useful if the words to
+different stanzas fit the notes in different ways and all the
+durations are available in Voice contexts. For more details, see
+@ref{Stanzas}.
@item
-or by specifying the duration of each syllable
-explicitly, using @code{\lyricmode}
+Lyrics can be aligned independently of the duration of any notes
+if the durations of the syllables are specified explicitly,
+and entered with @code{\lyricmode}.
+
+@lilypond[quote,ragged-right,verbatim]
+<<
+ \new Voice = "one" \relative c'' {
+ \time 2/4
+ c4 b8. a16 g4. f8 e4 d c2
+ }
+
+% uses previous explicit duration of 2;
+ \new Lyrics \lyricmode {
+ Joy to the earth!
+ }
+
+% explicit durations, set to a different rhythm
+ \new Lyrics \lyricmode {
+ Life4 is love,2. live4 life.2
+ }
+>>
+@end lilypond
+
+The first stanza is not aligned with the notes because the durations
+were not specified, and the previous value of 2 is used for each
+word.
+
+The second stanza shows how the words can be aligned quite
+independently from the notes. This is useful if the words to
+different stanzas fit the notes in different ways and the required
+durations are not available in a music context. For more details
+see @ref{Manual syllable durations}. This technique is also useful
+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
-The @code{Voice} context containing the melody to which the lyrics
-are being aligned must not have @qq{died}, or the lyrics after that
-point will be lost. This can happen if there are periods when that
-voice has nothing to do. For methods of keeping contexts alive, see
-@ref{Keeping contexts alive}.
+@seealso
+Learning Manual:
+@rlearning{Aligning lyrics to a melody}.
+Internals Reference:
+@rinternals{Lyrics}.
@node Automatic syllable durations
@unnumberedsubsubsec Automatic syllable durations
@cindex syllable durations, automatic
@cindex lyrics and melodies
+@cindex associatedVoice
+@funindex \addlyrics
+@funindex \lyricsto
-The lyrics can be aligned under a given melody
-automatically. This is achieved by combining the
-melody and the lyrics with the @code{\lyricsto} expression
+Lyrics can be automatically aligned to the notes of a melody in
+three ways:
-@example
-\new Lyrics \lyricsto @var{name} @dots{}
-@end example
+@itemize
-@noindent
-This aligns the lyrics to the
-notes of the @code{Voice} context called @var{name}, which must
-already exist. Therefore normally the @code{Voice} is specified first, and
-then the lyrics are specified with @code{\lyricsto}. The command
-@code{\lyricsto} switches to @code{\lyricmode} mode automatically, so the
-@code{\lyricmode} keyword may be omitted.
+@item
+by specifying the named Voice context containing the melody with
+@code{\lyricsto},
-The following example uses different commands for entering lyrics.
+@item
+by introducing the lyrics with @code{\addlyrics} and placing them
+immediately after the Voice context containing the melody,
-@lilypond[quote,fragment,ragged-right,verbatim]
-<<
- \new Voice = "one" \relative c'' {
- \autoBeamOff
- \time 2/4
- c4 b8. a16 g4. f8 e4 d c2
- }
+@item
+by setting the @code{associatedVoice} property, the alignment of
+the lyrics may be switched to a different named Voice context at
+any musical moment.
-% not recommended: left-aligned syllables
- \new Lyrics \lyricmode { Joy4 to8. the16 world!4. the8 Lord4 is come.2 }
+@end itemize
-% wrong: durations needed
- \new Lyrics \lyricmode { Joy to the earth! the Sa -- viour reigns. }
+In all three methods hyphens can be drawn between the syllables of
+a word and extender lines can be drawn beyond the end of a word. For
+details, see @ref{Extenders and hyphens}.
-%correct
- \new Lyrics \lyricsto "one" { No more let sins and sor -- rows grow. }
+The @code{Voice} context containing the melody to which the lyrics
+are being aligned must not have @qq{died}, or the lyrics after that
+point will be lost. This can happen if there are periods when that
+voice has nothing to do. For methods of keeping contexts alive, see
+@ref{Keeping contexts alive}.
+
+@subheading Using @code{\lyricsto}
+
+@cindex \lyricsto
+@funindex \lyricsto
+
+Lyrics can be aligned under a melody automatically by specifying
+the named Voice context containing the melody with
+@code{\lyricsto}:
+
+@lilypond[quote,verbatim,relative=2]
+<<
+ \new Voice = "melody" {
+ a4 a a a
+ }
+ \new Lyrics \lyricsto "melody" {
+ These are the words
+ }
>>
@end lilypond
-The second stanza is not properly aligned because the durations
-were not specified. A solution for that would be to use @code{\lyricsto}.
+@noindent
+This aligns the lyrics to the notes of the named @code{Voice}
+context, which must already exist. Therefore normally the
+@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}.
+
+@subheading Using @code{\addlyrics}
@cindex \addlyrics
+@funindex \addlyrics
-The @code{\addlyrics} command is actually just a convenient way
-to write a more complicated LilyPond structure that sets up the
-lyrics.
+The @code{\addlyrics} command is just a convenient shortcut that
+can sometimes be used instead of having to set up the lyrics
+through a more complicated LilyPond structure.
@example
@{ MUSIC @}
is the same as
@example
-\new Voice = "blah" @{ music @}
+\new Voice = "blah" @{ MUSIC @}
\new Lyrics \lyricsto "blah" @{ LYRICS @}
@end example
Here is an example,
-@lilypond[ragged-right,verbatim,fragment,quote]
-\time 3/4
-\relative c' { c2 e4 g2. }
-\addlyrics { play the game }
+@lilypond[verbatim,quote]
+{
+ \time 3/4
+ \relative c' { c2 e4 g2. }
+ \addlyrics { play the game }
+}
@end lilypond
More stanzas can be added by adding more
-@code{\addlyrics} sections
+@code{\addlyrics} sections:
+
@lilypond[ragged-right,verbatim,fragment,quote]
\time 3/4
\addlyrics { joue le jeu }
@end lilypond
-The command @code{\addlyrics} cannot handle polyphony settings.
-For these cases you should use @code{\lyricsto} and
-@code{\lyricmode}, for details see @ref{Entering lyrics}.
-
-@node Manual syllable durations
-@unnumberedsubsubsec Manual syllable durations
-
-Lyrics can also be entered without @code{\addlyrics} or
-@code{\lyricsto}. In this case,
-syllables are entered like notes -- but with pitches replaced by text -- and the
-duration of each syllable must be entered explicitly. For example:
+The command @code{\addlyrics} cannot handle polyphonic settings.
+For these cases one should use @code{\lyricsto}.
-@example
-play2 the4 game2.
-sink2 or4 swim2.
-@end example
+@subheading Using associatedVoice
-The alignment to a melody can be specified with the
-@code{associatedVoice} property,
+The melody to which the lyrics are being aligned can be changed by
+setting the @code{associatedVoice} property,
@example
\set associatedVoice = #"lala"
@end example
@noindent
-The value of the property (here: @code{"lala"}) should be the name of
-a @code{Voice} context. Without this setting, extender lines
-will not be formatted properly.
-Here is an example demonstrating manual lyric durations,
+The value of the property (here: @code{"lala"}) should be the name
+of a @code{Voice} context. For technical reasons, the @code{\set}
+command must be placed one syllable before the one to which the
+change in voice is to apply.
+
+Here is an example demonstrating its use:
+
+@lilypond[quote,ragged-right,verbatim]
+<<
+ \new Staff <<
+ \time 2/4
+ \new Voice = "one" \relative c'' {
+ \voiceOne
+ c4 b8. a16 g4. r8 a4 ( b ) c2
+ }
+ \new Voice = "two" \relative c' {
+ \voiceTwo
+ s2 s4. f8 e8 d4. c2
+ }
+ >>
+% takes durations and alignment from notes in "one" initially
+% then switches to "two"
+ \new Lyrics \lyricsto "one" {
+ No more let
+ \set associatedVoice = "two" % must be set one syllable early
+ sins and sor -- rows grow.
+ }
+>>
+@end lilypond
+
+@seealso
+Notation Reference:
+@ref{Extenders and hyphens},
+@ref{Keeping contexts alive}.
+
+@node Manual syllable durations
+@unnumberedsubsubsec Manual syllable durations
+
+In some complex vocal music, it may be desirable to place lyrics
+completely independently of notes. In this case do not use
+@code{\lyricsto} or @code{\addlyrics} and do not set
+@code{associatedVoice}. Syllables are entered like notes --
+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
+as usual, but extender lines cannot be drawn when there is no
+associated voice.
+
+Here are two examples:
+
+@lilypond[relative=1,verbatim,quote]
+<<
+ \new Voice = "melody" {
+ \time 3/4
+ c2 e4 g2 f
+ }
+ \new Lyrics \lyricmode {
+ play1 the4 game4
+ }
+>>
+@end lilypond
+
+
+@lilypond[quote,verbatim,ragged-right]
+<<
+ \new Staff {
+ \relative c'' {
+ c2 c2
+ d1
+ }
+ }
+ \new Lyrics {
+ \lyricmode {
+ I2 like4. my8 cat!1
+ }
+ }
+ \new Staff {
+ \relative c' {
+ c8 c c c c c c c
+ c8 c c c c c c c
+ }
+ }
+>>
+@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.
-@lilypond[relative=1,ragged-right,verbatim,fragment,quote]
-<< \new Voice = "melody" {
+@lilypond[relative=1,verbatim,quote]
+<<
+ \new Voice = "melody" {
\time 3/4
- c2 e4 g2.
- }
- \new Lyrics \lyricmode {
- \set associatedVoice = #"melody"
- play2 the4 game2.
- } >>
+ c2 e4 g f g
+ }
+ \new Lyrics \lyricmode {
+ \set associatedVoice = #"melody"
+ play2 the4 game2. __
+ }
+>>
@end lilypond
+@c TODO see also feature request 707 - show how to do this with manual durations
@seealso
Notation Reference:
-@ref{Keeping contexts alive}.
+@ref{Dialogue over music}.
Internals Reference:
@rinternals{Lyrics},
In order to assign more than one syllable to a single note with
spaces between the syllables, you can surround the phrase with
quotes or use a @code{_} character. Alternatively, you can use
-code the tilde symbol (@code{~}) to get a lyric tie. The lyric
+code the tilde symbol (@code{~}) to get a lyric tie. The lyric
tie is implemented with the Unicode character U+203F, so be
sure to have a font (like DejaVuLGC) installed that includes this
glyph.
@rinternals{LyricCombineMusic}.
-@c Here come the section which used to be "Melismata"
-@c the new title might be more self-explanatory
-
-
@node Multiple notes to one syllable
@unnumberedsubsubsec Multiple notes to one syllable
@cindex melisma
@cindex melismata
@cindex phrasing, in lyrics
+@funindex \melisma
+@funindex \melismaEnd
-Sometimes, particularly in Medieval music, several notes are to be sung on one
-single syllable; such vocalises are called melismas, or melismata.
+Sometimes, particularly in Medieval music, several notes are to be
+sung on one syllable; such vocalises are called melismata, or
+@rglos{melisma}s. The syllable to a melisma is usually
+left-aligned with the first note of the melisma.
-@c this method seems to be the simplest; therefore
-@c it might be better to present it first - vv
+When a melisma occurs on a syllable other that the last one in a
+word, that syllable is usually joined to the following one with a
+hyphenated line. This is indicated by placing a double hyphen,
+@code{--}, immediately after the syllable.
-You can define melismata entirely in the lyrics, by entering @code{_}
-for every extra note that has to be added to the melisma.
+Alternatively, when a melisma occurs on the last or only syllable in
+a word an extender line is usually drawn from the end of the syllable
+to the last note of the melisma. This is indicated by placing a
+double underscore, @code{__}, immediately after the word.
-@c TODO: clarify: __ is used to crate a lyric extender,
-@c _ is used to add a note to a melisma, so both __ and _ are needed.
+There are five ways in which melismata can be indicated:
-@c verbose! --FV
-@c duplicated: TODO fix
-Additionally, you can make an extender line to be typeset to indicate
-the melisma in the score, writing a double underscore next to the
-first syllable of the melisma. This example shows the three elements
-that are used for this purpose (all of them surrounded by spaces):
-double hyphens to separate syllables in a word, underscores to add
-notes to a melisma, and a double underscore to put an extender line.
+@itemize
+
+@item
+Melismata are created automatically over notes which are tied
+together:
-@c wrong: extender line only on last syllable of a word. Change example
-@lilypond[relative=1,verbatim,fragment,quote]
-{ \set melismaBusyProperties = #'()
- c d( e) f f( e) e e }
-\addlyrics
- { Ky -- _ _ ri __ _ _ _ e }
+@lilypond[quote,relative=2,verbatim]
+<<
+ \new Voice = "melody" {
+ \time 3/4
+ f4 g2 ~ |
+ g4 e2 ~ |
+ e8
+ }
+ \new Lyrics \lyricsto "melody" {
+ Ki -- ri -- e __
+ }
+>>
@end lilypond
-In this case, you can also have ties and slurs in the melody if you
-set @code{melismaBusyProperties}, as is done in the example above.
+@item
+Melismata can be created automatically from the music by placing
+slurs over the notes of each melisma. This is the usual way of
+entering lyrics:
-However, the @code{\lyricsto} command can also
-detect melismata automatically: it only puts one
-syllable under a tied or slurred group of notes. If you want to force
-an unslurred group of notes to be a melisma, insert @code{\melisma}
-after the first note of the group, and @code{\melismaEnd} after the
-last one, e.g.,
+@lilypond[quote,relative=2,verbatim]
+<<
+ \new Voice = "melody" {
+ \time 3/4
+ f4 g8 ( f e f )
+ e8 ( d e2 )
+ }
+ \new Lyrics \lyricsto "melody" {
+ Ki -- ri -- e __
+ }
+>>
+@end lilypond
+
+@item
+Notes are considered a melisma if they are manually beamed,
+providing automatic beaming is switched off. See
+@ref{Setting automatic beam behavior}.
+
+@lilypond[quote,relative=2,verbatim]
+<<
+ \new Voice = "melody" {
+ \time 3/4
+ \autoBeamOff
+ f4 g8[ f e f]
+ e2.
+ }
+ \new Lyrics \lyricsto "melody" {
+ Ki -- ri -- e
+ }
+>>
+@end lilypond
+
+Clearly this is not suited to melismata over notes which are longer
+than eighth notes.
+
+@item
+An unslurred group of notes will be treated as a melisma if they
+are bracketed between @code{\melisma} and @code{\melismaEnd}.
-@lilypond[quote,relative=2,ragged-right,fragment,verbatim]
+@lilypond[quote,relative=2,verbatim]
<<
- \new Voice = "lala" {
+ \new Voice = "melody" {
\time 3/4
f4 g8
\melisma
f e f
\melismaEnd
- e2
+ e2.
}
- \new Lyrics \lyricsto "lala" {
- la di __ daah
+ \new Lyrics \lyricsto "melody" {
+ Ki -- ri -- e
}
>>
@end lilypond
-In addition, notes are considered a melisma if they are manually
-beamed, and automatic beaming (see @ref{Setting automatic beam
-behavior}) is switched off.
+Note that this method cannot be used to indicate two melismata if
+the first one is immediately followed by another.
+
+@item
+A melisma can be defined entirely in the lyrics by entering a
+single underscore character, @code{_}, for every extra note that has
+to be added to the melisma.
-@lilypond[quote,relative=2,ragged-right,fragment,verbatim]
+@lilypond[verbatim, quote, relative=2]
<<
- \new Voice = "lala" {
+ \new Voice = "melody" {
\time 3/4
- \autoBeamOff
- f4 g8[ f e f]
- e2
+ f4 g8 f e f
+ e8 d e2
}
- \new Lyrics \lyricsto "lala" {
- la di __ daah
+ \new Lyrics \lyricsto "melody" {
+ Ki -- ri -- _ _ _ e __ _ _
}
>>
@end lilypond
-@c TODO: this now links to LM -vv
-@c umm, yeah... so what? -gp
+@end itemize
-@cindex SATB
-@cindex choral score
+It is possible to have ties, slurs and manual beams in the melody
+without their indicating melismata. To do this, set
+@code{melismaBusyProperties} and indicate the melismata with single
+underscores in the lyrics, one underscore for each extra note:
-A complete example of a SATB score setup is in
-@rlearning{Vocal ensembles}.
+@lilypond[relative=1,verbatim,quote]
+<<
+ \new Voice = "melody" {
+ \time 3/4
+ \set melismaBusyProperties = #'()
+ c4 d ( e )
+ g8 [ f ] f4( e)
+ d e ~ e
+ }
+ \new Lyrics \lyricsto "melody" {
+ Ky -- _ _ _ _ ri -- _ _ e __ _
+ }
+>>
+@end lilypond
+Other settings for @code{melismaBusyProperties} can be used to
+include or exclude ties, slurs, and beams from the automatic
+detection of melismata; see @code{melismaBusyProperties} in
+@rinternals{Tunable context properties}.
@predefined
-@funindex \melisma
+
+@code{\autoBeamOff},
+@code{\autoBeamOn},
@code{\melisma},
-@funindex \melismaEnd
@code{\melismaEnd}.
-@endpredefined
+@seealso
+Musical Glossary:
+@rglos{melisma}.
-@c @seealso
-@c @lsr{vocal,lyric@/-combine.ly}.
+Learning Manual:
+@rlearning{Aligning lyrics to a melody}.
+Notation Reference:
+@ref{Aligning lyrics to a melody},
+@ref{Automatic syllable durations},
+@ref{Setting automatic beam behavior}.
+
+Internals Reference:
+@rinternals{Tunable context properties}.
@knownissues
-Melismata are not detected automatically, and extender lines must be
-inserted by hand.
+Extender lines under melismata are not created automatically; they
+must be inserted manually with a double underscore.
@node Skipping notes
@unnumberedsubsubsec Skipping notes
Making a lyric line run slower than the melody can be achieved by
inserting @code{\skip}s into the lyrics. For every @code{\skip},
-the text will be delayed another note. The @code{\skip} command
+the text will be delayed by another note. The @code{\skip} command
must be followed by a valid duration, but this is ignored when
-@code{\skip} is used in lyrics.
+@code{\skip} is used in lyrics which derive their durations from the
+notes in an associated melody through @code{\addlyrics} or
+@code{\lyricsto}.
@lilypond[verbatim,ragged-right,quote]
\relative c' { c c g' }
@cindex melisma
@cindex extender
+@c TODO cf Multiple notes to one syllable; should this be merged in?
+
@c leave this as samp. -gp
In the last syllable of a word, melismata are sometimes indicated with
a long horizontal line starting in the melisma syllable, and ending in
@cindex hyphens
@c leave this as samp. -gp
-Centered hyphens are entered as @samp{ -- } between syllables of a same word
-(note the spaces before and after the two hyphen characters). The hyphen
-will be centered between the syllables, and its length will be adjusted
-depending on the space between the syllables.
+Centered hyphens are entered as @samp{ -- } between syllables of a
+same word (note the spaces before and after the two hyphen
+characters). The hyphen will be centered between the syllables, and
+its length will be adjusted depending on the space between the
+syllables.
In tightly engraved music, hyphens can be removed. Whether this
happens can be controlled with the @code{minimum-distance} (minimum
distance between two syllables) and the @code{minimum-length}
-(threshold below which hyphens are removed).
+(threshold below which hyphens are removed) properties of
+@code{LyricHyphen}.
@seealso
@node Techniques specific to lyrics
@subsection Techniques specific to lyrics
-@c TODO This whole section is to be reorganized. -vv
+@c TODO this whole section is to be reorganised
@menu
* Working with lyrics and variables::
+* Placing lyrics vertically::
+* Placing syllables horizontally::
* Lyrics and repeats::
* Divisi lyrics::
-* Lyrics independent of notes::
-* Spacing out syllables::
-* Placement of lyrics between staves::
@end menu
-@node Working with lyrics and variables
-@unnumberedsubsubsec Working with lyrics and variables
+@node Working with lyrics and variables
+@unnumberedsubsubsec Working with lyrics and variables
+
+@cindex lyrics, using variables
+
+Variables containing lyrics can be created, but the lyrics must be
+entered in lyric mode:
+
+@lilypond[quote,verbatim]
+musicOne = \relative c'' {
+ c4 b8. a16 g4. f8 e4 d c2
+}
+verseOne = \lyricmode {
+ Joy to the world, the Lord is come.
+}
+\score {
+ <<
+ \new Voice = "one" {
+ \time 2/4
+ \musicOne
+ }
+ \new Lyrics \lyricsto "one" {
+ \verseOne
+ }
+ >>
+}
+@end lilypond
+
+Durations do not need to be added if the variable is to be invoked
+with @code{\addlyrics} or @code{\lyricsto}.
+
+For different or more complex orderings, the best way is to define
+the music and lyric variables first, then set up the hierarchy of
+staves and lyrics, omitting the lyrics themselves, and then add the
+lyrics using @code{\context} underneath. This ensures that the
+voices referenced by @code{\lyricsto} have always been defined
+earlier. For example:
+
+@lilypond[quote,verbatim]
+sopranoMusic = \relative c'' { c4 c c c }
+contraltoMusic = \relative c'' { a4 a a a }
+sopranoWords = \lyricmode { Sop -- ra -- no words }
+contraltoWords = \lyricmode { Con -- tral -- to words }
+
+\score {
+ \new ChoirStaff <<
+ \new Staff {
+ \new Voice = "sopranos" {
+ \sopranoMusic
+ }
+ }
+ \new Lyrics = "sopranos"
+ \new Lyrics = "contraltos"
+ \new Staff {
+ \new Voice = "contraltos" {
+ \contraltoMusic
+ }
+ }
+ \context Lyrics = "sopranos" {
+ \lyricsto "sopranos" {
+ \sopranoWords
+ }
+ }
+ \context Lyrics = "contraltos" {
+ \lyricsto "contraltos" {
+ \contraltoWords
+ }
+ }
+ >>
+}
+@end lilypond
+
+
+@seealso
+Notation Reference:
+@ref{Placing lyrics vertically}.
+
+Internals Reference:
+@rinternals{LyricCombineMusic},
+@rinternals{Lyrics}.
+
+
+@node Placing lyrics vertically
+@unnumberedsubsubsec Placing lyrics vertically
+
+@cindex placement of lyrics
+@cindex lyrics, positioning
+
+Depending on the type of music, lyrics may be positioned
+above the staff, below the staff, or between staves. Placing
+lyrics below the associated staff is the easiest, and can be
+achieved by simply defining the Lyrics context below the Staff
+context:
+
+@lilypond[quote,verbatim]
+\score {
+ <<
+ \new Staff {
+ \new Voice = "melody" {
+ \relative c'' { c4 c c c }
+ }
+ }
+ \new Lyrics {
+ \lyricsto "melody" {
+ Here are the words
+ }
+ }
+ >>
+}
+@end lilypond
+
+Lyrics may be positioned above the staff using one of
+two methods. The simplest is to use the same syntax as
+above and explicitly specify the position of the lyrics:
+
+@lilypond[quote,verbatim]
+\score {
+ <<
+ \new Staff = "staff" {
+ \new Voice = "melody" {
+ \relative c'' { c4 c c c }
+ }
+ }
+ \new Lyrics \with { alignAboveContext = "staff" } {
+ \lyricsto "melody" {
+ Here are the words
+ }
+ }
+ >>
+}
+@end lilypond
+
+Alternatively, a two-step process may be used. First the Lyrics
+context is declared (without any content) before the Staff and
+Voice contexts, then the @code{\lyricsto} command is placed after
+the Voice declaration it references by using @code{\context}, as
+follows:
+
+@lilypond[quote,verbatim]
+\score {
+ <<
+ \new Lyrics = "lyrics"
+ \new Staff {
+ \new Voice = "melody" {
+ \relative c'' { c4 c c c }
+ }
+ }
+ \context Lyrics = "lyrics" {
+ \lyricsto "melody" {
+ Here are the words
+ }
+ }
+ >>
+}
+@end lilypond
+
+When there are two voices on separate staves the lyrics may be
+placed between the staves using either of these methods. Here
+is an example of the second method:
+
+@lilypond[quote,verbatim]
+\score {
+ \new ChoirStaff <<
+ \new Staff {
+ \new Voice = "sopranos" {
+ \relative c'' { c4 c c c }
+ }
+ }
+ \new Lyrics = "sopranos"
+ \new Lyrics = "contraltos"
+ \new Staff {
+ \new Voice = "contraltos" {
+ \relative c'' { a4 a a a }
+ }
+ }
+ \context Lyrics = "sopranos" {
+ \lyricsto "sopranos" {
+ Sop -- ra -- no words
+ }
+ }
+ \context Lyrics = "contraltos" {
+ \lyricsto "contraltos" {
+ Con -- tral -- to words
+ }
+ }
+ >>
+}
+@end lilypond
+
+Other combinations of lyrics and staves may be generated by
+elaborating these examples, or by examining the
+@rlearning{Vocal ensembles} templates in the Learning Manual.
+
+@seealso
+Learning Manual:
+@rlearning{Vocal ensembles}.
+
+Notation Reference:
+@ref{Aligning contexts},
+@ref{Creating contexts}.
+
+@node Placing syllables horizontally
+@unnumberedsubsubsec Placing syllables horizontally
+
+@cindex Spacing lyrics
+@cindex Lyrics, increasing space between
+
+To increase the spacing between lyrics, set the @code{minimum-distance}
+property of @code{LyricSpace}.
+
+@lilypond[relative,verbatim,fragment,quote,ragged-right]
+{
+ c c c c
+ \override Lyrics.LyricSpace #'minimum-distance = #1.0
+ c c c c
+}
+\addlyrics {
+ longtext longtext longtext longtext
+ longtext longtext longtext longtext
+}
+@end lilypond
+
+@noindent
+To make this change for all lyrics in the score, set the property in the
+@code{\layout} block.
+
+@lilypond[verbatim,quote,ragged-right]
+\score {
+ \relative c' {
+ c c c c
+ c c c c
+ }
+ \addlyrics {
+ longtext longtext longtext longtext
+ longtext longtext longtext longtext
+ }
+ \layout {
+ \context {
+ \Lyrics
+ \override LyricSpace #'minimum-distance = #1.0
+ }
+ }
+}
+@end lilypond
-@cindex lyrics, variables
+@snippets
+@lilypondfile[verbatim,lilyquote,ragged-right,texidoc,doctitle]
+{lyrics-alignment.ly}
-To define variables containing lyrics, the function @code{\lyricmode}
-must be used. You do not have to enter durations though, if you add
-@code{\addlyrics} or @code{\lyricsto}
-when invoking your variable.
+@c TODO: move to LSR -vv
-@example
-verseOne = \lyricmode @{ Joy to the world the Lord is come @}
-\score @{
- <<
- \new Voice = "one" \relative c'' @{
- \autoBeamOff
- \time 2/4
- c4 b8. a16 g4. f8 e4 d c2
- @}
- \addlyrics @{ \verseOne @}
- >>
-@}
-@end example
+Checking to make sure that text scripts and lyrics are within the margins is
+a relatively large computational task. To speed up processing, LilyPond does
+not perform such calculations by default; to enable it, use
-For different or more complex orderings, the best way is to set up the
-hierarchy of staves and lyrics first, e.g.,
@example
-\new ChoirStaff <<
- \new Voice = "soprano" @{ @emph{music} @}
- \new Lyrics = "sopranoLyrics" @{ s1 @}
- \new Lyrics = "tenorLyrics" @{ s1 @}
- \new Voice = "tenor" @{ @emph{music} @}
->>
+\override Score.PaperColumn #'keep-inside-line = ##t
@end example
-@noindent
-and then combine the appropriate melodies and lyric lines
+To make lyrics avoid bar lines as well, use
@example
-\context Lyrics = sopranoLyrics \lyricsto "soprano"
-@emph{the lyrics}
+\layout @{
+ \context @{
+ \Lyrics
+ \consists "Bar_engraver"
+ \consists "Separating_line_group_engraver"
+ \override BarLine #'transparent = ##t
+ @}
+@}
@end example
-@noindent
-The final input would resemble
-
-@example
-<<\new ChoirStaff << @emph{setup the music} >>
- \lyricsto "soprano" @emph{etc}
- \lyricsto "alto" @emph{etc}
-@emph{etc}
->>
-@end example
+@c TODO Create and add lsr example of lyricMelismaAlignment
+@c It's used like this to center-align all lyric syllables,
+@c even when notes are tied. -td
@ignore
-@c TODO
-http://code.google.com/p/lilypond/issues/detail?id=329
-The problem cannot be reproduced.
-The following has no sense, because the issue seems to be fixed.
-A comment is in tracker waiting for response ---FV
-
-
-Be careful when defining a variable with lyrics that creates a new
-context, for example, using the deprecated @code{\lyrics} command. See
-the next erroneous example:
-
-@example
-words = \lyrics{ %warning: this creates a new context
- one two
+\layout
+{
+ \context { \Score lyricMelismaAlignment = #0 }
}
-<<
- \new Voice = "sop" { c1 }
- \new Lyrics \lyricsto "sop" { \words }
- \new Voice = "alt" { c2 c }
- \new Lyrics \lyricsto "alt" { \words }
->>
-@end example
-
-the problem is that \lyricsto will try to connect the "sop" melody with the context
-created by "\new Lyrics".
-
-Then \lyrics in \words creates another context, and the original "\new Lyrics" one
-remains empty.
-
@end ignore
-@seealso
-@c TODO: document \new Staff << Voice \lyricsto >> bug
-Internals Reference:
-@rinternals{LyricCombineMusic},
-@rinternals{Lyrics}.
-
-
@node Lyrics and repeats
@unnumberedsubsubsec Lyrics and repeats
}
@end lilypond
-If the repeated section has different words and is unfolded simply
-enter all the words:
+If the repeated section is to be unfolded and has different words,
+simply enter all the words:
@lilypond[verbatim,quote,ragged-right]
\score {
@cindex lyric skip
@funindex \skip
-When the words to a repeated volta section are different the words
+When the words to a repeated volta section are different, the words
to each repeat must be entered in separate @code{Lyrics} contexts.
Earlier unrepeated sections must be skipped in the second and
subsequent repeats. The easiest way to skip several notes is to
-use @code{\repeat unfold} around the lyric skip symbol, @code{_}.
-The @code{\skip} command can be used instead of @code{_} if desired.
+use @code{\repeat unfold} around the @code{\skip} command.
+
+Note: do not use an underscore, @code{_}, to skip notes in this
+particular case. As this syntax indicates a melisma, it will cause
+the preceding syllable to be left-aligned.
@warning{The @code{@bs{}skip} command must be followed by a number,
-but this number is ignored in lyric mode. Each @code{@bs{}skip}
-skips a single note of any value, irrespective of the value of the
-following number.}
+but this number is ignored in lyrics which derive their durations
+from the notes in an associated melody through @code{\addlyrics} or
+@code{\lyricsto}. Each @code{@bs{}skip} skips a single note of any
+value, irrespective of the value of the following number.}
@lilypond[verbatim,quote]
\score {
\new Lyrics {
\lyricsto "melody" {
% skip 4 notes of any duration
- \repeat unfold 4 { _ }
+ \repeat unfold 4 { \skip 1 }
Sec -- ond time words.
}
}
But when the repeated section has different words, a repeat
construct cannot be used around the words and @code{\skip} commands
-or lyric skips, @code{_}, have to be inserted manually as described
-in the previous section to skip over the notes in the alternative
-sections which do not apply.
+have to be inserted manually as described in the previous section to
+skip over the notes in the alternative sections which do not apply.
@lilypond[verbatim,quote,ragged-right]
\score {
\new Lyrics {
\lyricsto "melody" {
The first time words.
- _ _ End here.
+ \repeat unfold 2 { \skip 1 }
+ End here.
}
}
\new Lyrics {
\lyricsto "melody" {
- Sec -- ond _ _ time words.
+ Sec -- ond
+ \repeat unfold 2 { \skip 1 }
+ time words.
}
}
>>
\lyricsto "melody" {
\repeat volta 2 { Here's a __ }
\alternative {
- { _ verse }
- { _ sec }
+ { \skip 1 verse }
+ { \skip 1 sec }
}
ond one.
}
removed to avoid both types of tie being printed.
When the repeated section has different words a @code{\repeat}
-cannot be used around the lyrics and skips need to be inserted
-manually, as before.
+cannot be used around the lyrics and @code{\skip} commands need to
+be inserted manually, as before.
@lilypond[quote,verbatim]
\score {
\new Lyrics {
\lyricsto "melody" {
Here's a __ verse.
- _ _ to sing.
+ \repeat unfold 2 { \skip 1 }
}
}
\new Lyrics {
\lyricsto "melody" {
- Here's one _ _ more
+ Here's one
+ \repeat unfold 2 { \skip 1 }
+ more to sing.
}
}
>>
\new Lyrics {
\lyricsto "melody" {
Here's a __ verse.
- _ _ -ond one.
+ \repeat unfold 2 { \skip 1 }
}
}
\new Lyrics {
\lyricsto "melody" {
- Here's "a_" _ "_" sec-
+ Here's "a_"
+ \skip 1
+ "_" sec -- ond one.
}
}
>>
@node Divisi lyrics
@unnumberedsubsubsec Divisi lyrics
-You can display alternate (or divisi) lyrics by naming voice
-contexts and attaching lyrics to those specific contexts.
-
-@lilypond[verbatim,ragged-right,quote]
-\score{ <<
- \new Voice = "melody" {
- \relative c' {
- c4
- <<
- { \voiceOne c8 e }
- \new Voice = "splitpart" { \voiceTwo c4 }
- >>
- \oneVoice c4 c | c
- }
- }
- \new Lyrics \lyricsto "melody" { we shall not o- ver- come }
- \new Lyrics \lyricsto "splitpart" { will }
->> }
-@end lilypond
-
-
-You can use this trick to display different lyrics for a repeated
-section.
-
-@lilypond[verbatim,ragged-right,quote]
-\score{ <<
- \new Voice = "melody" \relative c' {
- c2 e | g e | c1 |
- \new Voice = "verse" \repeat volta 2 {c4 d e f | g1 | }
- a2 b | c1}
- \new Lyrics = "mainlyrics" \lyricsto melody \lyricmode {
- do mi sol mi do
- la si do }
- \context Lyrics = "mainlyrics" \lyricsto verse \lyricmode {
- do re mi fa sol }
- \new Lyrics = "repeatlyrics" \lyricsto verse \lyricmode {
- dodo rere mimi fafa solsol }
->>
-}
-@end lilypond
-
-
-
-@node Lyrics independent of notes
-@unnumberedsubsubsec Lyrics independent of notes
-
-@cindex Devnull context
-
-In some complex vocal music, it may be desirable to place
-lyrics completely independently of notes. Music defined
-inside @code{lyricrhythm} disappears into the
-@code{Devnull} context, but the rhythms can still be used
-to place the lyrics.
-
-@lilypond[quote,verbatim,ragged-right]
-voice = {
- c''2
- \tag #'music { c''2 }
- \tag #'lyricrhythm { c''4. c''8 }
- d''1
-}
-
-lyr = \lyricmode { I like my cat! }
-
-<<
- \new Staff \keepWithTag #'music \voice
- \new Devnull="nowhere" \keepWithTag #'lyricrhythm \voice
- \new Lyrics \lyricsto "nowhere" \lyr
- \new Staff { c'8 c' c' c' c' c' c' c'
- c' c' c' c' c' c' c' c' }
->>
-@end lilypond
-
-This method is recommended only if the music in the @code{Devnull}
-context does not contain melismata. Melismata are defined by the
-@code{Voice} context. Connecting lyrics to a @code{Devnull} context
-makes the voice/lyrics links to get lost, and so does the info on
-melismata. Therefore, if you link lyrics to a @code{Devnull} context,
-the implicit melismata get ignored.
+@cindex divided lyrics
+@cindex lyrics, divided
-@c Conclusion: do not use devnull for lyrics -FV
-
-@c this clarifies http://code.google.com/p/lilypond/issues/detail?id=248
-
-@node Spacing out syllables
-@unnumberedsubsubsec Spacing out syllables
-
-@cindex Spacing lyrics
-@cindex Lyrics, increasing space between
-
-To increase the spacing between lyrics, set the @code{minimum-distance}
-property of @code{LyricSpace}.
+When just the words and rhythms of the two parts differ with the
+pitches remaining the same, temporarily turning off the automatic
+detection of melismata and indicating the melisma in the lyrics
+may be the appropriate method to use:
-@lilypond[relative,verbatim,fragment,quote,ragged-right]
-{
- c c c c
- \override Lyrics.LyricSpace #'minimum-distance = #1.0
- c c c c
-}
-\addlyrics {
- longtext longtext longtext longtext
- longtext longtext longtext longtext
+@lilypond[quote,verbatim]
+\score {
+ <<
+ \new Voice = "melody" {
+ \relative c' {
+ \set melismaBusyProperties = #'()
+ \slurDown
+ \slurDashed
+ e4 e8 ( e ) c4 c |
+ \unset melismaBusyProperties
+ c
+ }
+ }
+ \new Lyrics \lyricsto "melody" {
+ They shall not o -- ver -- come
+ }
+ \new Lyrics \lyricsto "melody" {
+ We will _
+ }
+ >>
}
@end lilypond
-@noindent
-To make this change for all lyrics in the score, set the property in the
-layout.
+When both music and words differ it may be better to display
+the differing music and lyrics by naming voice contexts and
+attaching lyrics to those specific contexts:
-@lilypond[verbatim,quote,ragged-right]
+@lilypond[verbatim,ragged-right,quote]
\score {
- \relative c' {
- c c c c
- c c c c
- }
- \addlyrics {
- longtext longtext longtext longtext
- longtext longtext longtext longtext
- }
- \layout {
- \context {
- \Lyrics
- \override LyricSpace #'minimum-distance = #1.0
+ <<
+ \new Voice = "melody" {
+ \relative c' {
+ <<
+ {
+ \voiceOne
+ e4 e8 e
+ }
+ \new Voice = "splitpart" {
+ \voiceTwo
+ c4 c
+ }
+ >>
+ \oneVoice
+ c4 c |
+ c
+ }
}
- }
+ \new Lyrics \lyricsto "melody" {
+ They shall not o -- ver -- come
+ }
+ \new Lyrics \lyricsto "splitpart" {
+ We will
+ }
+ >>
}
@end lilypond
-@c @snippets
-@c This snippet has been renamed to "lyrics-alignment.ly"
-@c update as soon as lsr/is updated -vv
-@c @lilypondfile[verbatim,lilyquote,ragged-right,texidoc,doctitle]
-@c {lyrics-alignment.ly}
-
-@c TODO: move to LSR -vv
-@snippets
-
-Checking to make sure that text scripts and lyrics are within the margins is
-a relatively large computational task. To speed up processing, LilyPond does
-not perform such calculations by default; to enable it, use
-
-@example
-\override Score.PaperColumn #'keep-inside-line = ##t
-@end example
-
-To make lyrics avoid bar lines as well, use
-
-@example
-\layout @{
- \context @{
- \Lyrics
- \consists "Bar_engraver"
- \consists "Separating_line_group_engraver"
- \override BarLine #'transparent = ##t
- @}
-@}
-@end example
-
-@c TODO Create and add lsr example of lyricMelismaAlignment
-@c It's used like this to center-align all lyric syllables,
-@c even when notes are tied. -td
-
-@ignore
-\layout
-{
- \context { \Score lyricMelismaAlignment = #0 }
-}
-@end ignore
-
-
-@node Placement of lyrics between staves
-@unnumberedsubsubsec Placement of lyrics between staves
-
-@c TODO Add text from -user
-@c TODO Add new spacing properties, centering lyrics, etc
-TBC
@node Stanzas
@subsection Stanzas
@subsubheading Ignoring melismata
One possibility is that the text has a melisma in one stanza, but
-multiple syllables in another one. One solution is to make the faster
+multiple syllables in another. One solution is to make the faster
voice ignore the melisma. This is done by setting
@code{ignoreMelismata} in the Lyrics context.
@node References for songs
@unnumberedsubsubsec References for songs
-@c TODO chords, setting simple songs (LM), stanzas
-TBC
+Songs are usually written on three staves with the melody for the
+singer on the top staff and two staves of piano accompaniment at
+the bottom. The lyrics of the first stanza are printed immediately
+underneath the top staff. If there are just a small number of
+further stanzas these can be printed immediately under the first
+one, but if there are more stanzas than can be easily accommodated
+there the second and subsequent stanzas are printed after the music
+as stand-alone text.
+
+All the notational elements needed to write songs are fully described
+elsewhere:
+
+@itemize
+
+@item
+For constructing the staff layout, see @ref{Displaying staves}.
+
+@item
+For writing piano music, see
+@ref{Keyboard and other multi-staff instruments}.
+
+@item
+For writing the lyrics to a melody line, see
+@ref{Common notation for vocal music}.
+
+@item
+For placing the lyrics, see @ref{Placing lyrics vertically}.
+
+@item
+For entering stanzas, see @ref{Stanzas}.
+
+@item
+Songs are frequently printed with the chording indicated by chord
+names above the staves. This is described in
+@ref{Displaying chords}.
+
+@item
+To print fret diagrams of the chords for guitar accompaniment or
+accompaniment by other fretted instruments, see @qq{Fret diagram
+markups} in @ref{Common notation for fretted strings}.
+
+@end itemize
+
+@seealso
+Learning Manual:
+@rlearning{Songs}.
+
+Notation Reference:
+@ref{Common notation for vocal music},
+@ref{Displaying chords},
+@ref{Displaying staves},
+@ref{Keyboard and other multi-staff instruments},
+@ref{Placing lyrics vertically},
+@ref{Stanzas}.
+
+Snippets:
+@rlsr{Vocal music}.
@node Lead sheets
@unnumberedsubsubsec Lead sheets
@ref{Shape note heads},
@ref{Single-staff polyphony}.
+Snippets:
+@rlsr{Vocal music}.
+
Internals Reference:
@rinternals{ChoirStaff},
@rinternals{Lyrics},
@ref{Fitting music onto fewer pages},
@ref{Page formatting},
@ref{Score layout},
-See @ref{Separating systems},
+@ref{Separating systems},
@ref{Setting the staff size},
@ref{Using an extra voice for breaks},
@ref{Vertical spacing}.
@rglos{Frenched staves},
@rglos{transposing instrument}.
-Notation Manual:
+Notation Reference:
@ref{Grouping staves},
@ref{Hiding staves},
@ref{Instrument transpositions},
@ref{Writing parts},
@ref{Writing text}.
+Snippets:
+@rlsr{Vocal music}.
+
@node Character names
@unnumberedsubsubsec Character names
@cindex names, character
Character names are usually shown to the left of the staff when the
-staff is dedicated to that character alone. The instrument name can
-be used for this purpose.
+staff is dedicated to that character alone:
@lilypond[quote,verbatim,ragged-right]
\score {
<<
\new Staff {
- \set Staff.instrumentName = #"Kaspar"
- \set Staff.shortInstrumentName = #"Kas"
+ \set Staff.vocalName = \markup \smallCaps Kaspar
+ \set Staff.shortVocalName = \markup \smallCaps Kas.
\relative c' {
\clef "G_8"
c4 c c c
}
}
\new Staff {
- \set Staff.instrumentName = #"Melchior"
- \set Staff.shortInstrumentName = #"Mel"
+ \set Staff.vocalName = \markup \smallCaps Melchior
+ \set Staff.shortVocalName = \markup \smallCaps Mel
\clef "bass"
\relative c' {
a4 a a a
@ref{Formatting cue notes}. But when many cues have to be
inserted, for example, as an aid to a conductor in a vocal score,
the instrument name must be positioned carefully just before and
-close to the start of the cued notes. The following example shows
-how this is done. Note that the name of the grob for overriding
-the cued instrument name is @code{InstrumentSwitch}.
+close to the start of the cue notes. The following example shows
+how this is done.
@lilypond[quote,verbatim]
flute = \relative c'' {
pianoRH = \relative c'' {
c4. g8
- % position name of cued instrument just before the cued notes
- \once \override CueVoice.InstrumentSwitch
- #'self-alignment-X = #RIGHT
- % position name of cued instrument above the staff
- \once \override CueVoice.InstrumentSwitch #'direction = #UP
- \set CueVoice.instrumentCueName = "Flute"
+ % position name of cue-ing instrument just before the cue notes,
+ % and above the staff
+ s1*0^\markup { \right-align { \tiny "Flute" } }
\cueDuring "flute" #UP { g4 bes4 }
}
pianoLH = \relative c { c4 <c' e> e, <g c> }
}
@end lilypond
-If a transposing instrument is being cued the instrument part should
-specify its key so the conversion of its cued notes will be done
+If a transposing instrument is being quoted the instrument part should
+specify its key so the conversion of its cue notes will be done
automatically. The example below shows this transposition for a
B-flat clarinet. The notes in this example are low on the staff so
@code{#DOWN} is specified in @code{\cueDuring} (so the stems are
down) and the instrument name is positioned below the staff. Note
also that the piano right-hand voice is explicitly declared. This
-is because the cued notes in this example begin at the start of the
+is because the cue notes in this example begin at the start of the
first bar and this would otherwise cause the entire piano right-hand
notes to be placed in a @code{CueVoice} context.
pianoRH = \relative c'' {
\transposition c'
- % position name of cued instrument just before the cued notes
- \once \override CueVoice.InstrumentSwitch
- #'self-alignment-X = #RIGHT
- % position name of cued instrument below the staff
- \once \override CueVoice.InstrumentSwitch #'direction = #DOWN
- \set CueVoice.instrumentCueName = "Clar."
+ % position name of cue-ing instrument below the staff
+ s1*0_\markup { \right-align { \tiny "Clar." } }
\cueDuring "clarinet" #DOWN { c4. g8 }
g4 bes4
}
@end lilypond
From these two examples it is clear that inserting many cues in a
-Vocal Score would be extremely tedious, and the notes of the piano
-part would be obscured by the many overrides. However, as the
-following snippet shows, it is possible to define a music function
-to reduce the amount of typing and to make the piano notes clearer.
+Vocal Score would be tedious, and the notes of the piano part would
+become obscured. However, as the following snippet shows, it is
+possible to define a music function to reduce the amount of typing
+and to make the piano notes clearer.
@snippets
@lilypondfile[verbatim,lilyquote,ragged-right,texidoc,doctitle]
@ref{Using music functions}.
Snippets:
-@rlsr{vocal-music}.
+@rlsr{Vocal music}.
Internals Reference:
@rinternals{InstrumentSwitch},
@knownissues
@code{\cueDuring} automatically inserts a @code{CueVoice} context
and all cue notes are placed in that context. This means it is not
-possible to have two overlapping sequences of cued notes by this
+possible to have two overlapping sequences of cue notes by this
technique. Overlapping sequences could be entered by explicitly
declaring separate @code{CueVoice} contexts and using
-@code{\quoteDuring} to extract and insert the cued notes.
+@code{\quoteDuring} to extract and insert the cue notes.
@node Spoken music
@node Dialogue over music
@unnumberedsubsubsec Dialogue over music
-TBC
+Dialogue over music is usually printed over the staves in an italic
+font, with the start of each phrase keyed in to a particular music
+moment.
+
+For short interjections a simple markup suffices.
+
+@lilypond[quote,verbatim,relative=2]
+a4^\markup { \smallCaps { Alex - } \italic { He's gone } } a a a
+a4 a a^\markup { \smallCaps { Bethan - } \italic Where? } a
+a4 a a a
+@end lilypond
+
+For longer phrases it may be necessary to expand the music to make
+the words fit neatly. There is no provision in LilyPond to do this
+fully automatically, and some manual intervention to layout the
+page will be necessary.
+
+For long phrases or for passages with a lot of closely packed
+dialogue, using a Lyrics context will give better results. The
+Lyrics context should not be associated with a music Voice; instead
+each section of dialogue should be given an explicit duration. If
+there is a gap in the dialogue, the final word should be separated
+from the rest and the duration split between them so that the
+underlying music spaces out smoothly.
+
+If the dialogue extends for more than one line it will be necessary
+to manually insert @code{\break}s and adjust the placing of the
+dialogue to avoid running into the right margin. The final word of
+the last measure on a line should also be separated out, as above.
+
+Here is an example illustating how this might be done.
+
+@c This should be a snippet, but it can't be as it needs to be
+@c manually adjusted to suit the imposed line length. -td
+
+@lilypond[quote,verbatim,ragged-right]
+music = \relative c'' {
+ \repeat unfold 3 { a4 a a a }
+}
+
+dialogue = \lyricmode {
+ \markup {
+ \fontsize #1 \upright \smallCaps Abe:
+ "Say this over measures one and"
+ }4*7
+ "two"4 |
+ \break
+ "and this over measure"4*3
+ "three"4 |
+}
+
+\score {
+ <<
+ \new Lyrics \with {
+ \override LyricText #'font-shape = #'italic
+ \override LyricText #'self-alignment-X = #LEFT
+ }
+ { \dialogue }
+ \new Staff {
+ \new Voice { \music }
+ }
+ >>
+}
+@end lilypond
+
+@c TODO show use of \column to produce dialogue on two lines
+
+@seealso
+Notation Reference:
+@ref{Manual syllable durations},
+@ref{Text}.
+
+Internal Reference:
+@rinternals{LyricText}.
@node Chants psalms and hymns
Notation reference:
@ref{Ancient notation}.
+Snippets:
+@rlsr{Vocal music}.
+
@node Setting a chant
@unnumberedsubsubsec Setting a chant