1.4.1 長い繰り返し

このセクションでは長い (通常は複数の小節) 繰り返しを入力する方法について議論します。繰り返しには 2 つの形式があります: 繰り返し記号によって囲まれる繰り返しと、描き出される繰り返し – これは反復の多い音楽を入力するために使用されます – です。繰り返し記号を手動で制御することもできます。


通常の繰り返し

通常の繰り返しの構文は以下の通りです。

\repeat volta repeatcount musicexpr

ここで、musicexpr は音楽表記です。

入れ替えを持たない 1 回の繰り返しは以下のようになります:

\repeat volta 2 { c4 d e f }
c2 d
\repeat volta 2 { d4 e f g }

[image of music]

繰り返し時に入れ替えて演奏する部分は \alternative を用いて作り出すことができます。入れ替えの各グループを波括弧で囲んで、このブロックの中に配置します。

\repeat volta repeatcount musicexpr
\alternative {
  { musicexpr }
}

ここで、musicexpr は音楽表記です。

繰り返し回数が入れ替え部分の数よりも多い場合、始めの方の繰り返しには最初の入れ替え部分が使用されます。

繰り返しが 1 回で、入れ替えも 1 つの場合は以下のようになります:

\repeat volta 2 { c4 d e f | }
\alternative {
  { c2 e | }
  { f2 g | }
}
c1

[image of music]

複数の入れ替え部分を 1 回ずつ演奏する繰り返しは以下のようになります:

\repeat volta 4 { c4 d e f | }
\alternative {
  { c2 e | }
  { f2 g | }
}
c1

[image of music]

繰り返し部分を複数回繰り返す場合は以下のようになります:

\repeat volta 3 { c4 d e f | }
\alternative {
  { c2 e | }
  { f2 g | }
  { a2 g | }
}
c1

[image of music]

Note: 入れ替えが複数ある場合、入れ替えの閉じ波括弧と次の入れ替えの開始の波括弧の間に何かを置くべきではありません。さもないと、予期せぬ数の入れ替えが発生します。

Note: Voice コンテキストを明示的にインスタンス化せずに\relative\repeat の中に配置すると、余計な譜が表示されます。 余計な譜が表示される を参照してください。

繰り返しが小節の途中から始まり、入れ替え部分が無い場合、風通は繰り返しの終わりも小節の途中になります。そのため、1 つ小節に 2 つの終わりが加えられます。そのような場合、繰り返し記号は本来の小節線とは異なります。繰り返し記号を譜刻する場所で \partila コマンドや小節チェックを使わないで下さい:

% ここで \partial を使わないで下さい
c4 e g  % ここで小節チェックを行わないで下さい
% ここで \partial を使わないで下さい
\repeat volta 4 {
  e4 |
  c2 e |
  % ここで \partial を使わないで下さい
  g4 g g  % ここで小節チェックを行わないで下さい
}
% ここで \partial を使わないで下さい
g4 |
a2 a |
g1 |

[image of music]

同様に、繰り返しが楽譜の先頭の部分小節から始まり、入れ替え部分を持たない場合、楽譜の先頭で \partial コマンドを配置する必要があることを除いて、上の例と同じ条件が適用されます:

\partial 4  % \partial が必要です
\repeat volta 4 {
  e4 |
  c2 e |
  % ここで \partial を使わないで下さい
  g4 g g  % ここで小節チェックを行わないで下さい
}
% ここで \partial を使わないで下さい
g4 |
a2 a |
g1 |

[image of music]

完全な長さを持たない小節で始まる小節に入れ替え部分を付け加える場合、以下の場所で Timing.measureLength コンテキスト プロパティを手動で設定する必要があります:

\partial 4
\repeat volta 2 { e4 | c2 e | }
\alternative {
  {
    f2 d |
    \set Timing.measureLength = #(ly:make-moment 3/4)
    g4 g g  % optional bar check is allowed here
  }
  {
    \set Timing.measureLength = #(ly:make-moment 4/4)
    a2 a |
  }
}
g1 |

[image of music]

measureLength プロパティについての説明は 時間管理 にあります。

\inStaffSegno コマンドを用いて、セーニョ記号を配置して \repeat volta コマンドと連携させることができます。差し替えの小節線記号は Score コンテキストの中でプロパティ segnoType, startRepeatSegnoType, endRepeatSegnoType あるいは doubleRepeatSegnoType を必要に応じてオーバライドすることにより設定することができます。

e1
\repeat volta 2 {
  \inStaffSegno
  f2 g a b
}
c1_"D.S." \bar "|."

[image of music]

繰り返しの 2 回目の部分にタイを付け加えることもできます:

c1
\repeat volta 2 { c4 d e f~ }
\alternative {
  { f2 d }
  { f2\repeatTie f, }
}

[image of music]

Selected Snippets

Shortening volta brackets

By default, the volta brackets will be drawn over all of the alternative music, but it is possible to shorten them by setting voltaSpannerDuration. In the next example, the bracket only lasts one measure, which is a duration of 3/4.

\relative c'' {
  \time 3/4
  c4 c c
  \set Score.voltaSpannerDuration = #(ly:make-moment 3/4)
  \repeat volta 5 { d4 d d }
  \alternative {
    {
      e4 e e
      f4 f f
    }
    { g4 g g }
  }
}

[image of music]

Adding volta brackets to additional staves

The Volta_engraver by default resides in the Score context, and brackets for the repeat are thus normally only printed over the topmost staff. This can be adjusted by adding the Volta_engraver to the Staff context where the brackets should appear; see also the “Volta multi staff” snippet.

<<
  \new Staff { \repeat volta 2 { c'1 } \alternative { c' } }
  \new Staff { \repeat volta 2 { c'1 } \alternative { c' } }
  \new Staff \with { \consists "Volta_engraver" } { c'2 g' e' a' }
  \new Staff { \repeat volta 2 { c'1 } \alternative { c' } }
>>

[image of music]

Setting the double repeat default for volte

There are three different styles of double repeats for volte, that can be set using doubleRepeatType.

\relative c'' {
  \repeat volta 1 { c1 }
  \set Score.doubleRepeatType = #":..:"
  \repeat volta 1 { c1 }
  \set Score.doubleRepeatType = #":|.|:"
  \repeat volta 1 { c1 }
  \set Score.doubleRepeatType = #":|.:"
  \repeat volta 1 { c1 }
}

[image of music]

Alternative bar numbering

Two alternative methods for bar numbering can be set, especially for when using repeated music.

\relative c'{
  \set Score.alternativeNumberingStyle = #'numbers
  \repeat volta 3 { c4 d e f | }
    \alternative {
      { c4 d e f | c2 d \break }
      { f4 g a b | f4 g a b | f2 a | \break }
      { c4 d e f | c2 d }
    }
  c1 \break
  \set Score.alternativeNumberingStyle = #'numbers-with-letters
  \repeat volta 3 { c,4 d e f | }
    \alternative {
      { c4 d e f | c2 d \break }
      { f4 g a b | f4 g a b | f2 a | \break }
      { c4 d e f | c2 d }
    }
  c1
}

[image of music]

参照

音楽用語集: repeat, volta

記譜法リファレンス: 小節線, コンテキストのプラグインを変更する, タイとスラーの形状を変更する, 時間管理

コード断片集: Repeats

内部リファレンス: VoltaBracket, RepeatedMusic, VoltaRepeatedMusic, UnfoldedRepeatedMusic

既知の問題と警告

\repeat ブロックから \alternative ブロックまで続くスラーは、最初の入れ替え部分に対してのみ機能します。他の入れ替え部分に対して見た目上、スラーを伸ばすには \repeatTie を使います。 しかしながら、この手法はスラーが 1 本の場合のみ可能であり、TabStaff では機能しません。複数のスラーを入れ替え部分に伸ばし、TabStaff コンテキストでも機能する手法は タイとスラーの形状を変更する で示しています。

さらに、入れ替え部分の最後から繰り返しの開始点までスラーで結ぶこともできません。

\repeat ブロックから \alternative ブロックまで続くグリッサンドは最初の入れ替え部分に対してのみ機能します。他の入れ替え部分に対して見た目上、グリッサンドを伸ばすには、見えない装飾音符から始まるグリッサンドのコードを記述します。例として、グリッサンド の楽譜断片集にある “繰り返しを跨いでグリッサンドを延長する” を参照してください。

不完全な小節で始まる繰り返しが measureLength プロパティの変更を行う\alternative ブロックを持つ場合、\unfoldRepeats を使用するとおかしな場所に小節線が引かれ、小節チェック警告が発生します。

以下のようにネストされた繰り返し

\repeat …
\repeat …
\alternative

はあいまいです。なぜなら、\alternative がどちらの \repeat に属するのかはっきりしないからです。このあいまいさは、常に \alternative を内側の \repeat に属させることによって解決されます。はっきりとさせるために、そのような状況では波括弧を使用すると賢明です。


手動の繰り返し記号

Note: 以下の手法は特殊な繰り返し構造を表示するためだけに使用され、予期しない振る舞いをする可能性があります。たいていのケースでは、繰り返しは標準の \repeat コマンドを用いるか、適切な小節線を譜刻することによって作成すべきです。更なる情報は、小節線 を参照してください。

プロパティ repeatCommands を用いて繰り返しのレイアウトを制御することができます。このプロパティの値は繰り返しコマンドの Scheme リストです。

start-repeat

|: 小節線を譜刻します。

c1
\set Score.repeatCommands = #'(start-repeat)
d4 e f g
c1

[image of music]

標準の譜刻習慣に従い、楽曲の先頭では繰り返し記号は譜刻されません。

end-repeat

:|. 小節線を譜刻します。

c1
d4 e f g
\set Score.repeatCommands = #'(end-repeat)
c1

[image of music]

(volta number) ... (volta #f)

指定された番号を持つ新しい volta を作成します。Volta 囲みは明示的に終了させる必要があります。さもなければ、譜刻されません。

f4 g a b
\set Score.repeatCommands = #'((volta "2"))
g4 a g a
\set Score.repeatCommands = #'((volta #f))
c1

[image of music]

複数の繰り返しコマンドが同時に発生することもあります:

f4 g a b
\set Score.repeatCommands = #'((volta "2, 5") end-repeat)
g4 a g a
c1
\set Score.repeatCommands = #'((volta #f) (volta "95") end-repeat)
b1
\set Score.repeatCommands = #'((volta #f))

[image of music]

テキストを volta 囲みに含めることができます。テキストに使用できるのは数字やマークアップ テキストです。テキストをフォーマットする を参照してください。マークアップ テキストを使用するための最も簡単な方法は、最初にマークアップを定義し、それからそのマークアップを Scheme リストに含める方法です。

voltaAdLib = \markup { 1. 2. 3... \text \italic { ad lib. } }
\relative c'' {
  c1
  \set Score.repeatCommands =
    #(list(list 'volta voltaAdLib) 'start-repeat)
  c4 b d e
  \set Score.repeatCommands = #'((volta #f) (volta "4.") end-repeat)
  f1
  \set Score.repeatCommands = #'((volta #f))
}

[image of music]

Selected Snippets

Printing a repeat sign at the beginning of a piece

A .|: bar line can be printed at the beginning of a piece, by overriding the relevant property:

\relative c'' {
  \once \override Score.BreakAlignment.break-align-orders =
    #(make-vector 3 '(instrument-name
                      left-edge
                      ambitus
                      breathing-sign
                      clef
                      key-signature
                      time-signature
                      staff-bar
                      custos))
  \once \override Staff.TimeSignature.space-alist =
    #'((first-note . (fixed-space . 2.0))
       (right-edge . (extra-space . 0.5))
       ;; free up some space between time signature
       ;; and repeat bar line
       (staff-bar . (extra-space . 1)))
  \bar ".|:"
  c1
  d1
  d4 e f g
}

[image of music]

参照

記譜法リファレンス: 小節線, テキストをフォーマットする

コード断片集: Repeats

内部リファレンス: VoltaBracket, RepeatedMusic, VoltaRepeatedMusic


繰り返しを描き出す

unfold コマンドを用いることにより、繰り返しを単に反復する音楽を描き出すために使用することができます。構文は以下の通りです:

\repeat unfold repeatcount musicexpr

ここで、musicexpr は音楽表記であり、repeatcountmusicexpr を繰り返す回数です。

\repeat unfold 2 { c4 d e f }
c1

[image of music]

いくつかのケースでは、特に \relative コンテキストの中では、\repeat unfold 関数は音楽表記を複数回記述したものと同じにはなりません。例えば、

\repeat unfold 2 { a'4 b c }

これは以下と等価ではありません。

a'4 b c | a'4 b c

入れ替え部分がある繰り返しを展開することもできます。

\repeat unfold 2 { c4 d e f }
\alternative {
  { c2 g' }
  { c,2 b }
}
c1

[image of music]

繰り返し回数が入れ替え部分の数よりも多い場合、最初の入れ替え部分だけが適用されます。残りの入れ替えは無視されて譜刻されません。

\repeat unfold 4 { c4 d e f }
\alternative {
  { c2 g' }
  { c,2 b }
  { e2 d }
 }
c1

[image of music]

入れ替え部分の数が繰り返し回数よりも多い場合、最初の入れ替え部分が使用され、残りの繰り返し部分は無視され、譜刻されません。

\repeat unfold 2 { c4 d e f }
\alternative {
  { c2 g' }
  { c,2 b }
  { e2 d }
}
c1

[image of music]

複数の unfold 関数をネストすることも可能です。(unfold は入れ替え部分を持っていても、持っていなくても構いません。)

\repeat unfold 2 {
  \repeat unfold 2 { c4 d e f }
  \alternative {
    { c2 g' }
    { c,2 b }
  }
}
c1

[image of music]

和音構造は和音の繰り返し記号 q で繰り返すことができます。和音の繰り返し を参照してください。

Note: Voice コンテキストを明示的にインスタンス化せずに\relative\repeat の中に配置すると、余計な譜が表示されます。 余計な譜が表示される を参照してください。

参照

記譜法リファレンス: 和音の繰り返し

コード断片集: Repeats

内部リファレンス: RepeatedMusic, UnfoldedRepeatedMusic


他の言語: English, deutsch, español, français, italiano
About automatic language selection.

LilyPond — 記譜法リファレンス v2.17.97 (開発版).