Guide, node Updating translation committishes..
@end ignore
-@c \version "2.17.30"
+@c \version "2.19.21"
@node Vocal music
@section Vocal music
@item
Vocal music is likely to require the use of @code{markup} mode,
either for lyrics or for other text elements (characters' names,
-etc.) This syntax is described in @ref{Text markup introduction}.
+etc.). This syntax is described in @ref{Text markup introduction}.
@item
@notation{Ambitus} may be added at the beginning of vocal staves,
For more information, see @ref{Special characters}.
@lilypond[quote,verbatim]
-\relative c'' { d8 c16 a bes8 f e' d c4 }
+\relative { d''8 c16 a bes8 f ees' d c4 }
\addlyrics { „Schad’ um das schö -- ne grü -- ne Band, }
@end lilypond
enclosed between additional quotes. For example,
@lilypond[quote,verbatim]
-\relative c' { \time 3/4 e4 e4. e8 d4 e d c2. }
+\relative { \time 3/4 e'4 e4. e8 d4 e d c2. }
\addlyrics { "\"I" am so lone -- "ly,\"" said she }
@end lilypond
@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
<<
\new Staff <<
\time 2/4
- \new Voice = "one" \relative c'' {
+ \new Voice = "one" \relative {
\voiceOne
- c4 b8. a16 g4. r8 a4 ( b ) c2
+ c''4 b8. a16 g4. r8 a4 ( b ) c2
}
- \new Voice = "two" \relative c' {
+ \new Voice = "two" \relative {
\voiceTwo
- s2 s4. f8 e4 d c2
+ s2 s4. f'8 e4 d c2
}
>>
@lilypond[quote,ragged-right,verbatim]
<<
- \new Voice = "one" \relative c'' {
+ \new Voice = "one" \relative {
\time 2/4
- c4 b8. a16 g4. f8 e4 d c2
+ c''4 b8. a16 g4. f8 e4 d c2
}
% uses previous explicit duration of 2;
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
the named Voice context containing the melody with
@code{\lyricsto}:
-@lilypond[quote,verbatim,relative=2]
+@lilypond[quote,verbatim]
<<
- \new Voice = "melody" {
- a1 a4. a8 a2
+ \new Voice = "melody" \relative {
+ a'1 a4. a8 a2
}
\new Lyrics \lyricsto "melody" {
These are the words
@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}
@lilypond[verbatim,quote]
{
\time 3/4
- \relative c' { c2 e4 g2. }
+ \relative { c'2 e4 g2. }
\addlyrics { play the game }
}
@end lilypond
@lilypond[ragged-right,verbatim,quote]
{
\time 3/4
- \relative c' { c2 e4 g2. }
+ \relative { c'2 e4 g2. }
\addlyrics { play the game }
\addlyrics { speel het spel }
\addlyrics { joue le jeu }
<<
\new Staff <<
\time 2/4
- \new Voice = "one" \relative c'' {
+ \new Voice = "one" \relative {
\voiceOne
- c4 b8. a16 g4. r8 a4 ( b ) c2
+ c''4 b8. a16 g4. r8 a4 ( b ) c2
}
- \new Voice = "two" \relative c' {
+ \new Voice = "two" \relative {
\voiceTwo
- s2 s4. f8 e8 d4. c2
+ s2 s4. f'8 e8 d4. c2
}
>>
% takes durations and alignment from notes in "one" initially
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.
Here are two examples:
-@lilypond[relative=1,verbatim,quote]
+@lilypond[verbatim,quote]
<<
- \new Voice = "melody" {
- \time 3/4
- c2 e4 g2 f
+ \new Voice = "melody" \relative {
+ c''2 a f f e e
}
\new Lyrics \lyricmode {
- play1 the4 game4
+ c4. -- a -- f -- f -- e2. -- e
}
>>
@end lilypond
@lilypond[quote,verbatim,ragged-right]
<<
\new Staff {
- \relative c'' {
- c2 c2
+ \relative {
+ c''2 c2
d1
}
}
}
}
\new Staff {
- \relative c' {
- c8 c c c c c c c
+ \relative {
+ c'8 c c c c c c c
c8 c c c c c c c
}
}
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]
+@lilypond[verbatim,quote]
<<
- \new Voice = "melody" {
+ \new Voice = "melody" \relative {
\time 3/4
- c2 e4 g f g
+ c'2 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}.
quotes or use a @code{_} character. Alternatively, you can use
the tilde symbol (@code{~}) to get a lyric tie.
-@lilypond[quote,ragged-right,verbatim,relative=2]
+@lilypond[quote,ragged-right,verbatim]
{
- { \autoBeamOff
- r8 b c fis, fis c' b e,
+ \relative {
+ \autoBeamOff
+ r8 b' c fis, fis c' b e,
}
\addlyrics
{
Melismata are created automatically over notes which are tied
together:
-@lilypond[quote,relative=2,verbatim]
+@lilypond[quote,verbatim]
<<
- \new Voice = "melody" {
+ \new Voice = "melody" \relative {
\time 3/4
- f4 g2 ~ |
- g4 e2 ~ |
- e8
+ f''4 g2 ~ |
+ 4 e2 ~ |
+ 8
}
\new Lyrics \lyricsto "melody" {
Ky -- ri -- e __
slurs over the notes of each melisma. This is the usual way of
entering lyrics:
-@lilypond[quote,relative=2,verbatim]
+@lilypond[quote,verbatim]
<<
- \new Voice = "melody" {
+ \new Voice = "melody" \relative {
\time 3/4
- f4 g8 ( f e f )
+ f''4 g8 ( f e f )
e8 ( d e2 )
}
\new Lyrics \lyricsto "melody" {
providing automatic beaming is switched off. See
@ref{Setting automatic beam behavior}.
-@lilypond[quote,relative=2,verbatim]
+@lilypond[quote,verbatim]
<<
- \new Voice = "melody" {
+ \new Voice = "melody" \relative {
\time 3/4
\autoBeamOff
- f4 g8[ f e f]
+ f''4 g8[ f e f]
e2.
}
\new Lyrics \lyricsto "melody" {
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,verbatim]
+@lilypond[quote,verbatim]
<<
- \new Voice = "melody" {
+ \new Voice = "melody" \relative {
\time 3/4
- f4 g8
+ f''4 g8
\melisma
f e f
\melismaEnd
single underscore character, @code{_}, for every extra note that has
to be added to the melisma.
-@lilypond[verbatim, quote, relative=2]
+@lilypond[verbatim, quote]
<<
- \new Voice = "melody" {
+ \new Voice = "melody" \relative {
\time 3/4
- f4 g8 f e f
+ f''4 g8 f e f
e8 d e2
}
\new Lyrics \lyricsto "melody" {
without their indicating melismata. To do this, set
@code{melismaBusyProperties}:
-@lilypond[relative=1,verbatim,quote]
+@lilypond[verbatim,quote]
<<
- \new Voice = "melody" {
+ \new Voice = "melody" \relative {
\time 3/4
\set melismaBusyProperties = #'()
- c4 d ( e )
- g8 [ f ] f4 ~ f
+ c'4 d ( e )
+ g8 [ f ] f4 ~ 4
}
\new Lyrics \lyricsto "melody" {
Ky -- ri -- e e -- le -- i -- son
placing a single underscore in the lyrics for each note which
should be included in the melisma:
-@lilypond[relative=1,verbatim,quote]
+@lilypond[verbatim,quote]
<<
- \new Voice = "melody" {
+ \new Voice = "melody" \relative {
\time 3/4
\set melismaBusyProperties = #'()
- c4 d ( e )
- g8 [ f ] ~ f4 ~ f
+ c'4 d ( e )
+ g8 [ f ] ~ 4 ~ f
}
\new Lyrics \lyricsto "melody" {
Ky -- ri -- _ e __ _ _ _
@predefined
-
@code{\autoBeamOff},
@code{\autoBeamOn},
@code{\melisma},
@code{\melismaEnd}.
+@endpredefined
@seealso
Musical Glossary:
entered in lyric mode:
@lilypond[quote,verbatim]
-musicOne = \relative c'' {
- c4 b8. a16 g4. f8 e4 d c2
+musicOne = \relative {
+ c''4 b8. a16 g4. f8 e4 d c2
}
verseOne = \lyricmode {
Joy to the world, the Lord is come.
earlier. For example:
@lilypond[quote,verbatim]
-sopranoMusic = \relative c'' { c4 c c c }
-contraltoMusic = \relative c'' { a4 a a a }
+sopranoMusic = \relative { c''4 c c c }
+contraltoMusic = \relative { a'4 a a a }
sopranoWords = \lyricmode { Sop -- ra -- no words }
contraltoWords = \lyricmode { Con -- tral -- to words }
<<
\new Staff {
\new Voice = "melody" {
- \relative c'' { c4 c c c }
+ \relative { c''4 c c c }
}
}
\new Lyrics {
<<
\new Staff = "staff" {
\new Voice = "melody" {
- \relative c'' { c4 c c c }
+ \relative { c''4 c c c }
}
}
\new Lyrics \with { alignAboveContext = "staff" } {
}
\new Staff {
\new Voice = "melody" {
- \relative c'' { c4 c c c }
+ \relative { c''4 c c c }
}
}
\context Lyrics = "lyrics" {
\new ChoirStaff <<
\new Staff {
\new Voice = "sopranos" {
- \relative c'' { c4 c c c }
+ \relative { c''4 c c c }
}
}
\new Lyrics = "sopranos"
}
\new Staff {
\new Voice = "contraltos" {
- \relative c'' { a4 a a a }
+ \relative { a'4 a a a }
}
}
\context Lyrics = "sopranos" {
To increase the spacing between lyrics, set the
@code{minimum-distance} property of @code{LyricSpace}.
-@lilypond[relative=1,verbatim,quote,ragged-right]
-{
+@lilypond[verbatim,quote,ragged-right]
+\relative c' {
c c c c
\override Lyrics.LyricSpace.minimum-distance = #1.0
c c c c
@lilypond[verbatim,quote,ragged-right]
\score {
- \relative c' {
- c c c c
+ \relative {
+ c' c c c
c c c c
}
\addlyrics {
<<
\new Staff {
\new Voice = "melody" {
- \relative c'' {
- a4 a a a
+ \relative {
+ a'4 a a a
\repeat volta 2 { b4 b b b }
}
}
<<
\new Staff {
\new Voice = "melody" {
- \relative c'' {
- a4 a a a
+ \relative {
+ a'4 a a a
\repeat volta 2 { b4 b b b }
}
}
<<
\new Staff {
\new Voice = "melody" {
- \relative c'' {
- a4 a a a
+ \relative {
+ a'4 a a a
\repeat unfold 2 { b4 b b b }
}
}
<<
\new Staff {
\new Voice = "melody" {
- \relative c'' {
- a4 a a a
+ \relative {
+ a'4 a a a
\repeat volta 2 { b4 b b b }
}
}
<<
\new Staff {
\new Voice = "singleVoice" {
- \relative c'' {
- a4 a a a
+ \relative {
+ a'4 a a a
\repeat volta 3 { b4 b b b }
c4 c c c
}
<<
\new Staff {
\new Voice = "melody" {
- \relative c'' {
- a4 a a a
+ \relative {
+ a'4 a a a
\repeat volta 3 { b4 b b b }
c4 c c c
}
The end sec -- tion.
}
\new Voice = "harmony" {
- \relative c' {
- f4 f f f \repeat volta 2 { g8 g g4 g2 } a4 a8. a16 a2
+ \relative {
+ f'4 f f f \repeat volta 2 { g8 g g4 g2 } a4 a8. a16 a2
}
}
>>
@cindex repeating lyrics with alternative endings
@cindex alternative endings and lyrics
-If the words of the repeated section are the same, exactly the
-same structure can be used for both the lyrics and music.
+If the words of the repeated section are the same, and none of the
+@code{\alternative} blocks start with a rest, exactly the same
+structure can be used for both the lyrics and music. This has the
+advantage that @code{\unfoldRepeats} will expand both music and
+lyrics correctly.
@lilypond[quote,verbatim]
\score {
\new Staff {
\time 2/4
\new Voice = "melody" {
- \relative c'' {
- a4 a a a
+ \relative {
+ a'4 a a a
\repeat volta 2 { b4 b }
\alternative { { b b } { b c } }
}
@cindex skipping notes in lyrics
@cindex lyrics, skipping notes
-But when the repeated section has different words, a repeat
+But when the repeated section has different words, or when one
+of the @code{\alternative} blocks starts with a rest, a repeat
construct cannot be used around the words and @code{\skip} commands
have to be inserted manually to skip over the notes in the
alternative sections which do not apply.
\new Staff {
\time 2/4
\new Voice = "melody" {
- \relative c'' {
- \repeat volta 2 { b4 b }
+ \relative {
+ \repeat volta 2 { b'4 b }
\alternative { { b b } { b c } }
c4 c
}
\new Staff {
\time 2/4
\new Voice = "melody" {
- \relative c'' {
+ \relative {
\set melismaBusyProperties = #'()
- \repeat volta 2 { b4 b ~}
+ \repeat volta 2 { b'4 b ~}
\alternative { { b b } { b \repeatTie c } }
\unset melismaBusyProperties
c4 c
\new Staff {
\time 2/4
\new Voice = "melody" {
- \relative c'' {
- \repeat volta 2 { b4 b ~}
+ \relative {
+ \repeat volta 2 { b'4 b ~}
\alternative { { b b } { b \repeatTie c } }
c4 c
}
\new Staff {
\time 2/4
\new Voice = "melody" {
- \relative c'' {
- \repeat volta 2 { b4 b ~}
+ \relative {
+ \repeat volta 2 { b'4 b ~}
\alternative { { b b } { b \repeatTie c } }
c4 c
}
\score {
<<
\new Voice = "melody" {
- \relative c' {
+ \relative {
<<
{
\voiceOne
- e4 e8 e
+ e'4 e8 e
}
\new Voice = "splitpart" {
\voiceTwo
>>
@end lilypond
-The @code{NullVoice} context must be placed within a @code{Staff}
-context and contain notes that are already being displayed in that staff and that are also 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:
aligner = \relative { b'8( c d c) d( d d d) }
words = \lyricmode { la __ la __ }
-\new ChoirStaff <<
- \new Staff <<
- \soprano
- \new NullVoice = "aligner" \aligner
- >>
+\new ChoirStaff \with {\accepts NullVoice } <<
+ \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
Stanza numbers can be added by setting @code{stanza}, e.g.,
-@lilypond[quote,ragged-right,verbatim,relative=2]
-\new Voice {
- \time 3/4 g2 e4 a2 f4 g2.
+@lilypond[quote,ragged-right,verbatim]
+\new Voice \relative {
+ \time 3/4 g'2 e4 a2 f4 g2.
} \addlyrics {
\set stanza = #"1. "
Hi, my name is Bert.
@code{vocalName}. A short version may be entered as
@code{shortVocalName}.
-@lilypond[ragged-right,quote,verbatim,relative=2]
-\new Voice {
- \time 3/4 g2 e4 a2 f4 g2.
+@lilypond[ragged-right,quote,verbatim]
+\new Voice \relative {
+ \time 3/4 g'2 e4 a2 f4 g2.
} \addlyrics {
\set vocalName = #"Bert "
Hi, my name is Bert.
@lilypond[verbatim,ragged-right,quote]
<<
- \relative c' \new Voice = "lahlah" {
+ \relative \new Voice = "lahlah" {
\set Staff.autoBeaming = ##f
- c4
+ c'4
\slurDotted
f8.[( g16])
a4
@cindex grace notes and lyrics
@cindex lyrics on grace notes
-By default, grace notes (e.g. via @code{\grace}) do not get assigned
+By default, grace notes (e.g., via @code{\grace}) do not get assigned
syllables when using @code{\lyricsto}, but this behavior can be
changed:
@lilypond[verbatim,ragged-right,quote]
<<
- \new Voice = melody \relative c' {
- f4 \appoggiatura a32 b4
+ \new Voice = melody \relative {
+ f'4 \appoggiatura a32 b4
\grace { f16 a16 } b2
\afterGrace b2 { f16[ a16] }
\appoggiatura a32 b4
@lilypond[verbatim,quote]
<<
- \relative c' \new Voice = "lahlah" {
+ \relative \new Voice = "lahlah" {
\set Staff.autoBeaming = ##f
- c4
+ c'4
<<
\new Voice = "alternative" {
\voiceOne
@code{\markup}.
@lilypond[ragged-right,verbatim,quote]
-melody = \relative c' {
-e d c d | e e e e |
+melody = \relative {
+e' d c d | e e e e |
d d e d | c1 |
}
output in LilyPond.
@lilypond[ragged-right,quote,verbatim]
-melody = \relative c' {
- c4 c c c | d d d d
+melody = \relative {
+ c'4 c c c | d d d d
}
text = \lyricmode {
@code{\oneVoice},
@code{\voiceOne},
@code{\voiceTwo}.
+@endpredefined
@seealso
Learning Manual:
\new ChoirStaff <<
\new Staff {
\new Voice {
- \relative c'' { g4\f g g g }
+ \relative { g'4\f g g g }
}
}
\new Staff {
\new Voice {
- \relative c' { d4 d d\p d }
+ \relative { d'4 d d\p d }
}
}
>>
@end lilypond
@predefined
-@code{\dynamicUp}, @code{\dynamicDown}, @code{\dynamicNeutral}.
+@code{\dynamicUp},
+@code{\dynamicDown},
+@code{\dynamicNeutral}.
+@endpredefined
@seealso
Notation Reference:
@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:
\new Staff {
\set Staff.vocalName = \markup \smallCaps Kaspar
\set Staff.shortVocalName = \markup \smallCaps Kas.
- \relative c' {
+ \relative {
\clef "G_8"
- c4 c c c
+ c'4 c c c
\break
c4 c c c
}
\set Staff.vocalName = \markup \smallCaps Melchior
\set Staff.shortVocalName = \markup \smallCaps Mel
\clef "bass"
- \relative c' {
+ \relative {
a4 a a a
a4 a a a
}
applying to that character. This can be done with markup. Often a
specific font is used for this purpose.
-@lilypond[quote,verbatim,relative=1]
-\clef "G_8"
-c4^\markup \fontsize #1 \smallCaps Kaspar
-c c c
-\clef "bass"
-a4^\markup \fontsize #1 \smallCaps Melchior
-a a a
-\clef "G_8"
-c4^\markup \fontsize #1 \smallCaps Kaspar
-c c c
+@lilypond[quote,verbatim]
+\relative c' {
+ \clef "G_8"
+ c4^\markup \fontsize #1 \smallCaps Kaspar
+ c c c
+ \clef "bass"
+ a4^\markup \fontsize #1 \smallCaps Melchior
+ a a a
+ \clef "G_8"
+ c4^\markup \fontsize #1 \smallCaps Kaspar
+ 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
how this is done.
@lilypond[quote,verbatim]
-flute = \relative c'' {
- s4 s4 e g
+flute = \relative {
+ s4 s4 e'' g
}
\addQuote "flute" { \flute }
-pianoRH = \relative c'' {
- c4. g8
+pianoRH = \relative {
+ c''4. g8
% position name of cue-ing instrument just before the cue notes,
% and above the staff
- \new CueVoice {
- \override InstrumentSwitch.self-alignment-X = #RIGHT
- \set instrumentCueName = "Flute"
- }
+ <>^\markup { \right-align { \tiny "Flute" } }
\cueDuring "flute" #UP { g4 bes4 }
}
-pianoLH = \relative c { c4 <c' e> e, <g c> }
+pianoLH = \relative { c4 <c' e> e, <g c> }
\score {
\new PianoStaff <<
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 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.
+down) and the instrument name is positioned below the staff.
@lilypond[quote,verbatim]
clarinet = \relative c' {
pianoRH = \relative c'' {
\transposition c'
% position name of cue-ing instrument below the staff
- \new CueVoice {
- \override InstrumentSwitch.self-alignment-X = #RIGHT
- \override InstrumentSwitch.direction = #DOWN
- \set instrumentCueName = "Clar."
- }
+ <>_\markup { \right-align { \tiny "Clar." } }
\cueDuring "clarinet" #DOWN { c4. g8 }
g4 bes4
}
-pianoLH = \relative c { c4 <c' e> e, <g c> }
+pianoLH = \relative { c4 <c' e> e, <g c> }
\score {
<<
@rlsr{Vocal music}.
Internals Reference:
-@rinternals{InstrumentSwitch},
@rinternals{CueVoice}.
@knownissues
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
+@lilypond[quote,verbatim]
+\relative {
+ a'4^\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
@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 }
+music = \relative {
+ \repeat unfold 3 { a'4 a a a }
}
dialogue = \lyricmode {
\score {
\new StaffGroup <<
\new Staff {
- \relative c'' {
- a4 b c2 |
+ \relative {
+ a'4 b c2 |
a4 b c2 |
a4 b c2 |
}
}
\new Staff {
- \relative c'' {
- a4 b c2 |
+ \relative {
+ a'4 b c2 |
a4 b c2 |
a4 b c2 |
}
\new ChoirStaff <<
\new Staff
\with { \remove "Bar_engraver" } {
- \relative c'' {
- a4 b c2 |
+ \relative {
+ a'4 b c2 |
a4 b c2 |
a4 b c2 |
}
}
\new Staff {
- \relative c'' {
- a4 b c2 |
+ \relative {
+ a'4 b c2 |
a4 b c2 |
a4 b c2 |
}
cadenza. If the section is long you may need to insert dummy
bar lines with @code{\bar ""} to show where the line should break.
-@lilypond[verbatim,quote,relative=2]
-a4 b c2 |
-\cadenzaOn
-a4 b c2
-a4 b c2
-\bar ""
-a4 b c2
-a4 b c2
-\cadenzaOff
-a4 b c2 |
-a4 b c2 |
+@lilypond[verbatim,quote]
+\relative a' {
+ a4 b c2 |
+ \cadenzaOn
+ a4 b c2
+ a4 b c2
+ \bar ""
+ a4 b c2
+ a4 b c2
+ \cadenzaOff
+ a4 b c2 |
+ a4 b c2 |
+}
@end lilypond
Rests or pauses in chants can be indicated by modified bar lines.
-@lilypond[verbatim, quote,relative=2]
-a4
-\cadenzaOn
-b c2
-a4 b c2
-\bar "'"
-a4 b c2
-a4 b c2
-\bar ";"
-a4 b c2
-\bar "!"
-a4 b c2
-\bar "||"
+@lilypond[verbatim, quote]
+\relative a' {
+ a4
+ \cadenzaOn
+ b c2
+ a4 b c2
+ \bar "'"
+ a4 b c2
+ a4 b c2
+ \bar ";"
+ a4 b c2
+ \bar "!"
+ a4 b c2
+ \bar "||"
+}
@end lilypond
Alternatively, the notation used in Gregorian chant for pauses or
}
\score {
- \relative c'' {
- g2 a4 g
+ \relative {
+ g'2 a4 g
\divisioMinima
g2 a4 g
\divisioMaior
@lilypond[verbatim,quote]
\score {
\new Staff {
- \relative c'' {
- a4 b c2 |
+ \relative {
+ a'4 b c2 |
a4 b c2 |
a4 b c2 |
}
the @qq{reciting note}. Chants are usually centered on the page.
@lilypond[verbatim,quote]
-SopranoMusic = \relative g' {
- g1 | c2 b | a1 | \bar "||"
+SopranoMusic = \relative {
+ g'1 | c2 b | a1 | \bar "||"
a1 | d2 c | c b | c1 | \bar "||"
}
-AltoMusic = \relative c' {
- e1 | g2 g | f1 |
+AltoMusic = \relative {
+ e'1 | g2 g | f1 |
f1 | f2 e | d d | e1 |
}
-TenorMusic = \relative a {
- c1 | c2 c | c1 |
+TenorMusic = \relative {
+ c'1 | c2 c | c1 |
d1 | g,2 g | g g | g1 |
}
-BassMusic = \relative c {
+BassMusic = \relative {
c1 | e2 e | f1 |
d1 | b2 c | g' g | c,1 |
}