[ << 専門的な記譜法 ] | [トップ][目次][インデックス][ ? ] | [ 入出力全般 >> ] | ||
[ < 延長線とハイフン ] | [ 上へ : 声楽 ] | [ 歌詞と変数に取り組む > ] |
2.1.2 歌詞に特有のテクニック
歌詞と変数に取り組む | ||
歌詞の垂直方向の配置 | ||
歌詞の水平方向の配置 | ||
歌詞と繰り返し | ||
歌詞のディヴィージ |
[ << 専門的な記譜法 ] | [トップ][目次][インデックス][ ? ] | [ 入出力全般 >> ] | ||
[ < 歌詞に特有のテクニック ] | [ 上へ : 歌詞に特有のテクニック ] | [ 歌詞の垂直方向の配置 > ] |
歌詞と変数に取り組む
歌詞を保持する変数を作成することができます。歌詞は歌詞モードで入力する必要があります:
musicOne = \relative { c''4 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 } >> }
変数が \addlyrics
または \lyricsto
で呼び出される場合、歌詞に演奏時間を付ける必要はありません。
順序が異なったり、もっと複雑だったりする場合、最も良い方法は最初に音楽と歌詞を保持する変数を定義して、
譜と歌詞の階層をセットアップして (歌詞自体は省略します) から、\context
を用いて歌詞を追加します。この方法は、\lyricsto
によって参照されるボイスが常に定義済みであることを保証します。例を挙げます:
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 } \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 } } >> }
参照
記譜法リファレンス: 歌詞の垂直方向の配置
内部リファレンス: LyricCombineMusic, Lyrics
[ << 専門的な記譜法 ] | [トップ][目次][インデックス][ ? ] | [ 入出力全般 >> ] | ||
[ < 歌詞と変数に取り組む ] | [ 上へ : 歌詞に特有のテクニック ] | [ 歌詞の水平方向の配置 > ] |
歌詞の垂直方向の配置
音楽の種類によって、歌詞が譜の上、下、あるいは間に配置されることもあります。歌詞を関連する譜の下に配置することが最も簡単で、Staff
コンテキストの下に Lyrics
コンテキストを定義するだけで実現できます:
\score { << \new Staff { \new Voice = "melody" { \relative { c''4 c c c } } } \new Lyrics { \lyricsto "melody" { Here are the words } } >> }
歌詞を譜の上に配置する方法は 2 つあります。簡単な (そして好まれる) のは、上記と同じ構文を用いて歌詞の配置を明示的に指定する方法です:
\score { << \new Staff = "staff" { \new Voice = "melody" { \relative { c''4 c c c } } } \new Lyrics \with { alignAboveContext = "staff" } { \lyricsto "melody" { Here are the words } } >> }
代替手段として、2 ステップのプロセスを用いることもできます。最初に、Staff
コンテキストと Voice
コンテキストより先に
Lyrics
コンテキストを宣言して (内容は記述しません)、それから参照する Voice
コンテキストの宣言の後に
\context
を用いて \lyricsto
コマンドを配置します。以下のようにします:
\score { << \new Lyrics = "lyrics" \with { % 譜の上に配置する歌詞は以下のオーバライドを行う必要があります \override VerticalAxisGroup.staff-affinity = #DOWN } \new Staff { \new Voice = "melody" { \relative { c''4 c c c } } } \context Lyrics = "lyrics" { \lyricsto "melody" { Here are the words } } >> }
別々の譜に配置される 2 つのボイスがある場合、上記の方法のいずれかを用いて歌詞を譜の間に配置することができます。ここでは、2 番目の方法を用いる例を挙げます:
\score { \new ChoirStaff << \new Staff { \new Voice = "sopranos" { \relative { c''4 c c c } } } \new Lyrics = "sopranos" \new Lyrics = "contraltos" \with { % 譜の上に配置する歌詞は以下のオーバライドを行う必要があります % lyrics above a staff should have this override \override VerticalAxisGroup.staff-affinity = #DOWN } \new Staff { \new Voice = "contraltos" { \relative { a'4 a a a } } } \context Lyrics = "sopranos" { \lyricsto "sopranos" { Sop -- ra -- no words } } \context Lyrics = "contraltos" { \lyricsto "contraltos" { Con -- tral -- to words } } >> }
他の歌詞と譜の組み合わせは、上記の例に磨きをかけるか、学習マニュアルの中にあるテンプレート – Vocal ensembles templates を参照してください – を吟味することによって作り出すことができます。
Selected Snippets
Obtaining 2.12 lyrics spacing in newer versions
The vertical spacing engine changed since version 2.14. This can cause lyrics to be spaced differently.
It is possible to set properties for Lyric
and Staff
contexts to get the spacing engine to behave as it did in version 2.12.
global = { \key d \major \time 3/4 } sopMusic = \relative c' { % VERSE ONE fis4 fis fis | \break fis4. e8 e4 } altoMusic = \relative c' { % VERSE ONE d4 d d | d4. b8 b4 | } tenorMusic = \relative c' { a4 a a | b4. g8 g4 | } bassMusic = \relative c { d4 d d | g,4. g8 g4 | } words = \lyricmode { Great is Thy faith -- ful -- ness, } \score { \new ChoirStaff << \new Lyrics = sopranos \new Staff = women << \new Voice = "sopranos" { \voiceOne \global \sopMusic } \new Voice = "altos" { \voiceTwo \global \altoMusic } >> \new Lyrics = "altos" \new Lyrics = "tenors" \new Staff = men << \clef bass \new Voice = "tenors" { \voiceOne \global \tenorMusic } \new Voice = "basses" { \voiceTwo \global \bassMusic } >> \new Lyrics = basses \context Lyrics = sopranos \lyricsto sopranos \words \context Lyrics = altos \lyricsto altos \words \context Lyrics = tenors \lyricsto tenors \words \context Lyrics = basses \lyricsto basses \words >> \layout { \context { \Lyrics \override VerticalAxisGroup.staff-affinity = ##f \override VerticalAxisGroup.staff-staff-spacing = #'((basic-distance . 0) (minimum-distance . 2) (padding . 2)) } \context { \Staff \override VerticalAxisGroup.staff-staff-spacing = #'((basic-distance . 0) (minimum-distance . 2) (padding . 2)) } } }
参照
学習マニュアル: Vocal ensembles templates
記譜法リファレンス: コンテキストの配置順序, コンテキストを作成して参照する
[ << 専門的な記譜法 ] | [トップ][目次][インデックス][ ? ] | [ 入出力全般 >> ] | ||
[ < 歌詞の垂直方向の配置 ] | [ 上へ : 歌詞に特有のテクニック ] | [ 歌詞と繰り返し > ] |
歌詞の水平方向の配置
歌詞の間隔を広げるには
LyricSpace
の minimum-distance
プロパティを設定します。
\relative c' { c c c c \override Lyrics.LyricSpace.minimum-distance = #1.0 c c c c } \addlyrics { longtext longtext longtext longtext longtext longtext longtext longtext }
この変更を楽譜の全ての歌詞に適用するには、\layout
ブロックの中でプロパティの設定を行います。
\score { \relative { 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 } } }
Selected Snippets
Lyrics alignment
Horizontal alignment for lyrics can be set by overriding the
self-alignment-X
property of the LyricText
object.
#-1
is left, #0
is center and #1
is right;
however, you can use #LEFT
, #CENTER
and #RIGHT
as
well.
\layout { ragged-right = ##f } \relative c'' { c1 c1 c1 } \addlyrics { \once \override LyricText.self-alignment-X = #LEFT "This is left-aligned" \once \override LyricText.self-alignment-X = #CENTER "This is centered" \once \override LyricText.self-alignment-X = #1 "This is right-aligned" }
テキスト スクリプトと歌詞がマージンの中に納まることを確認するチェックはより多くの計算を必要とします。この機能を無効にすることで、処理をわずかにスピードアップすることができます:
\override Score.PaperColumn.keep-inside-line = ##f
歌詞が小節線を避けるようにするには、以下を使います:
\layout { \context { \Lyrics \consists "Bar_engraver" \consists "Separating_line_group_engraver" \hide BarLine } }
[ << 専門的な記譜法 ] | [トップ][目次][インデックス][ ? ] | [ 入出力全般 >> ] | ||
[ < 歌詞の水平方向の配置 ] | [ 上へ : 歌詞に特有のテクニック ] | [ 歌詞のディヴィージ > ] |
歌詞と繰り返し
1 回の繰り返し
音楽 の繰り返しは別の場所で説明しています – 繰り返し を参照してください。このセクションでは、歌詞を繰り返しのある音楽に追加する方法について説明します。
繰り返しで歌詞の単語が変わらないのであれば、歌詞を音楽と同じ繰り返し構造にすることで、音楽に歌詞を付けることができます。
\score { << \new Staff { \new Voice = "melody" { \relative { a'4 a a a \repeat volta 2 { b4 b b b } } } } \new Lyrics { \lyricsto "melody" { Not re -- peat -- ed. \repeat volta 2 { Re -- peat -- ed twice. } } } >> }
繰り返しが展開された場合、歌詞も展開されます。
\score { \unfoldRepeats { << \new Staff { \new Voice = "melody" { \relative { a'4 a a a \repeat volta 2 { b4 b b b } } } } \new Lyrics { \lyricsto "melody" { Not re -- peat -- ed. \repeat volta 2 { Re -- peat -- ed twice. } } } >> } }
繰り返しが展開されて、異なる歌詞を持つ場合、単に歌詞の全ての単語を記述します:
\score { << \new Staff { \new Voice = "melody" { \relative { a'4 a a a \repeat unfold 2 { b4 b b b } } } } \new Lyrics { \lyricsto "melody" { Not re -- peat -- ed. The first time words. Sec -- ond time words. } } >> }
繰り返しの歌詞が異なる場合、並列に正しくネストされた別々の Lyrics
コンテキストに各繰り返しの歌詞を入力する必要があります:
\score { << \new Staff { \new Voice = "melody" { \relative { a'4 a a a \repeat volta 2 { b4 b b b } } } } \new Lyrics \lyricsto "melody" { Not re -- peat -- ed. << { The first time words. } \new Lyrics { \set associatedVoice = "melody" Sec -- ond time words. } >> } >> }
同様の方法でさらに歌詞の行を追加することができます:
\score { << \new Staff { \new Voice = "singleVoice" { \relative { a'4 a a a \repeat volta 3 { b4 b b b } c4 c c c } } } \new Lyrics \lyricsto "singleVoice" { Not re -- peat -- ed. << { The first time words. } \new Lyrics { \set associatedVoice = "singleVoice" Sec -- ond time words. } \new Lyrics { \set associatedVoice = "singleVoice" The third time words. } >> The end sec -- tion. } >> }
しかしながら、この構造が ChoirStaff
のような複数の譜を持つコンテキストに埋め込まれた場合、歌詞の 2 番と 3 番は譜の下に表示されます。
歌詞を正しく配置するには alignBelowContext
を用います:
\score { << \new Staff { \new Voice = "melody" { \relative { a'4 a a a \repeat volta 3 { b4 b b b } c4 c c c } } } \new Lyrics = "firstVerse" \lyricsto "melody" { Not re -- peat -- ed. << { The first time words. } \new Lyrics = "secondVerse" \with { alignBelowContext = #"firstVerse" } { \set associatedVoice = "melody" Sec -- ond time words. } \new Lyrics = "thirdVerse" \with { alignBelowContext = #"secondVerse" } { \set associatedVoice = "melody" The third time words. } >> The end sec -- tion. } \new Voice = "harmony" { \relative { f'4 f f f \repeat volta 2 { g8 g g4 g2 } a4 a8. a16 a2 } } >> }
差し替えのある繰り返し
繰り返し部分の歌詞が同じであれば、歌詞と音楽で同じ構造を使うことができます。
\score { << \new Staff { \time 2/4 \new Voice = "melody" { \relative { a'4 a a a \repeat volta 2 { b4 b } \alternative { { b b } { b c } } } } } \new Lyrics { \lyricsto "melody" { Not re -- peat -- ed. \repeat volta 2 { Re -- peat -- } \alternative { { ed twice. } { ed twice. } } } } >> }
しかしながら、繰り返し部分の歌詞が異なる場合、歌詞に繰り返し構造を用いることはできず、歌詞を適用しない差し替え部分の音符をスキップするために手動で \skip
コマンドを挿入する必要があります。
注意: 音符のスキップにアンダースコア _
を使わないでください
– アンダースコアはメリスマを意味するため、前の音節が左揃えされてしまいます。
Note: \skip
コマンドの後に数字を記述する必要があります。しかしながら、歌詞は addlyrics
や lyricsto
で関連付けた旋律の音符から演奏時間を引き出すため、この数字は無視されます。各 \skip
は後に続く数字の値に関係なく、任意の音価の音符を 1 つスキップします。
\score { << \new Staff { \time 2/4 \new Voice = "melody" { \relative { \repeat volta 2 { b'4 b } \alternative { { b b } { b c } } c4 c } } } \new Lyrics { \lyricsto "melody" { The first time words. \repeat unfold 2 { \skip 1 } End here. } } \new Lyrics { \lyricsto "melody" { Sec -- ond \repeat unfold 2 { \skip 1 } time words. } } >> }
タイが途中で複数の差し替えに分かれる場合、最初の差し替えの音符がタイで結ばれ、2 番目以降の差し替えには \repeatTie
が使用されます。この構造に歌詞が含まれることにより差し替え部分が長くなると、歌詞を音符に揃えることが困難となり、差し替え部分に含まれるタイの音符が受け入れがたい結果を発生させるかもしれません。
タイは最初の差し替えまで続くメリスマを作り出しますが、2 番目以降の差し替えには作りません。このため、歌詞を正しく揃えるには、差し替え部分でメリスマの自動作成を無効にして、手動でスキップを挿入する必要があります。
\score { << \new Staff { \time 2/4 \new Voice = "melody" { \relative { \set melismaBusyProperties = #'() \repeat volta 2 { b'4 b ~} \alternative { { b b } { b \repeatTie c } } \unset melismaBusyProperties c4 c } } } \new Lyrics { \lyricsto "melody" { \repeat volta 2 { Here's a __ } \alternative { { \skip 1 verse } { \skip 1 sec } } ond one. } } >> }
\repeatTie
を含むセクションの周辺で
\unfoldRepeats
が使われると、両方のタイプのタイが譜刻されるの避けるために
\repeatTie
は削除されます。
繰り返される部分の歌詞が異なる場合、その歌詞の周囲で \repeat
を使うことはできず、前述のように手動で \skip
コマンドを挿入する必要があります。
\score { << \new Staff { \time 2/4 \new Voice = "melody" { \relative { \repeat volta 2 { b'4 b ~} \alternative { { b b } { b \repeatTie c } } c4 c } } } \new Lyrics { \lyricsto "melody" { Here's a __ verse. \repeat unfold 2 { \skip 1 } } } \new Lyrics { \lyricsto "melody" { Here's one \repeat unfold 2 { \skip 1 } more to sing. } } >> }
繰り返し部分から差し替え部分に延長線やハイフンを描きたいのであれば、それらを手動で挿入する必要があります。差し替え部分から次の部分に延長線やハイフンを描く場合も同様です。
\score { << \new Staff { \time 2/4 \new Voice = "melody" { \relative { \repeat volta 2 { b'4 b ~} \alternative { { b b } { b \repeatTie c } } c4 c } } } \new Lyrics { \lyricsto "melody" { Here's a __ verse. \repeat unfold 2 { \skip 1 } } } \new Lyrics { \lyricsto "melody" { Here's "a_" \skip 1 "_" sec -- ond one. } } >> }
参照
記譜法リファレンス: コンテキストを残しておく, 繰り返し
[ << 専門的な記譜法 ] | [トップ][目次][インデックス][ ? ] | [ 入出力全般 >> ] | ||
[ < 歌詞と繰り返し ] | [ 上へ : 歌詞に特有のテクニック ] | [ 歌詞の節 > ] |
歌詞のディヴィージ
ピッチが同じで歌詞とリズムが異なる 2 つのパートがある場合、一時的にメリスマの自動検出を off にして、歌詞の中でのメリスマ指示する手法を用いると適切な場合があります:
\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 _ } >> }
2 つのパートの音楽と歌詞の両方が異なる場合、2 つの名前付きボイス コンテキストを作成して、それぞれに歌詞を付属させることで、異なる音楽と歌詞として表示させた方が良いかもしれません:
\score { << \new Voice = "melody" { \relative { << { \voiceOne e'4 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 } >> }
[ << 専門的な記譜法 ] | [トップ][目次][インデックス][ ? ] | [ 入出力全般 >> ] | ||
[ < 歌詞と繰り返し ] | [ 上へ : 歌詞に特有のテクニック ] | [ 歌詞の節 > ] |
他の言語: English, català, deutsch, español, français, italiano
About automatic language selection.