LilyPond 記譜法リファレンス: 1.4.1 長い繰り返し

### 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 }

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

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

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

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

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

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

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

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

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

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

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 |

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

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

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

- `\alternative` ブロック内の不完全な小節の開始点。通常、これは (たいていの場合は) 最後の入れ替え部分を除く、各入れ替え部分の最後の小節になります。
- 最初の入れ替え部分を除く、各入れ替え部分の開始点。

>     \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 |

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

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

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

#### 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 }
>       }
>     }

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' } }
>     >>

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 }
>     }

#### 参照

音楽用語集: repeat, volta

記譜法リファレンス: 小節線, Modifying context plug-ins, 時間管理

コード断片集: Repeats

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

#### 既知の問題と警告

`\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

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

`end-repeat`

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

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

`(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

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

>     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))

テキストを 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))
>     }

#### 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
>     }

#### 参照

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

コード断片集: Repeats

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

#### 繰り返しを描き出す

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

>     \repeat unfold repeatcount musicexpr

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

>     \repeat unfold 2 { c4 d e f }
>     c1

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

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

繰り返し回数が入れ替え部分の数よりも多い場合、最初の入れ替え部分が複数回使用して、入れ替え数と繰り返し回数を合わせます。

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

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

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

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

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

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

#### 参照

コード断片集: Repeats

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

他の言語: English, deutsch, español, français

#### LilyPond — 記譜法リファレンス