LilyPond 記譜法リファレンス: 1.2.3 リズムを表示する

### 1.2.3 リズムを表示する

#### 拍子

拍子は以下のようにセットします:

>     \time 2/4 c2
>     \time 3/4 c2.

拍子は楽曲の始まりと拍子が変更されたときに譜刻されます。行の終わりで変更が起こる場合、警告の拍子が行の終わりに譜刻されます。デフォルトの振る舞いを変更することができます。Visibility of objects を参照してください。

>     \time 2/4
>     c2 c
>     \break
>     c c
>     \break
>     \time 4/4
>     c c c c

2/2 や 4/4 で使用される拍子は数字を使用するスタイルに変更することができます:

>     % デフォルトのスタイル
>     \time 4/4 c1
>     \time 2/2 c1
>     % 数字を使うスタイルに変更します
>     \numericTimeSignature
>     \time 4/4 c1
>     \time 2/2 c1
>     % デフォルトのスタイルに戻します
>     \defaultTimeSignature
>     \time 4/4 c1
>     \time 2/2 c1

定量拍子については Mensural time signatures でカバーされています。

#### 定義済みコマンド

`\numericTimeSignature`, `\defaultTimeSignature`

譜刻される拍子を設定することに加えて、`\time` コマンドは拍子に基づくプロパティ `baseMoment`, `beatStructure`, それに `beamExceptions` のデフォルト値も設定します。これらのプロパティにあらかじめ定義されているデフォルト値は ‘`scm/time-signature-settings.scm`’ で見つかります。既存のデフォルト値を変更したり、新しいデフォルト値を変更したりすることができます:

>     \score {
>       \new Staff {
>         \relative c' {
>           \overrideTimeSignatureSettings
>             #'(4 . 4)  % timeSignatureFraction
>             #'(1 . 4)  % baseMomentFraction
>             #'(3 1)    % beatStructure
>             #'()       % beamExceptions
>           \time 4/4
>           \repeat unfold 8 { c8 } |
>         }
>       }
>     }

`\overrideTimeSignatureSettings` は 4 つの引数をとります:

1. `timeSignatureFraction`, 拍子を示す Scheme ペア。
2. `baseMomentFraction`, 拍子の基本タイミングの単位となる分子と分母を保持する Scheme ペア。
3. `beatStructure`, 小節の拍構造を示す Scheme リスト。基本タイミングを単位とします。
4. `beamExceptions`, 指定された拍子でそれぞれの拍で終了しない連桁のルールを保持する配列リスト。自動連桁の振る舞いを設定する に説明があります。

`\overrideTimeSignatureSettings` を保持するコンテキストは、その `\overrideTimeSignatureSettings` 呼び出しが実行される前にインスタンス化されている必要があります。このことは、そのようなコンテキストは明示的にインスタンス化するか、そのコンテキスト内で `\overrideTimeSignatureSettings` の前に音楽を置いておく必要があるということを意味します:

>     \score {
>       \relative c' {
>         % コンテキストがまだインスタンス化されていないため、この呼び出しは失敗します
>         \overrideTimeSignatureSettings
>           #'(4 . 4)  % timeSignatureFraction
>           #'(1 . 4)  % baseMomentFraction
>           #'(3 1)    % beatStructure
>           #'()       % beamExceptions
>         \time 4/4
>         c8^\markup {"Beamed (2 2)"}
>         \repeat unfold 7 { c8 } |
>         % この呼び出しは成功します
>         \overrideTimeSignatureSettings
>           #'(4 . 4)  % timeSignatureFraction
>           #'(1 . 4)  % baseMomentFraction
>           #'(3 1)    % beatStructure
>           #'()       % beamExceptions
>         \time 4/4
>         c8^\markup {"Beamed (3 1)"}
>         \repeat unfold 7 { c8 } |
>       }
>     }

デフォルトの拍子プロパティ値の変更を元の値に戻すことができます:

>     \score{
>       \relative c' {
>         \repeat unfold 8 { c8 } |
>         \overrideTimeSignatureSettings
>           #'(4 . 4)  % timeSignatureFraction
>           #'(1 . 4)  % baseMomentFraction
>           #'(3 1)    % beatStructure
>           #'()       % beamExceptions
>         \time 4/4
>         \repeat unfold 8 { c8 } |
>         \revertTimeSignatureSettings #'(4 . 4)
>         \time 4/4
>         \repeat unfold 8 { c8 } |
>       }
>     }

`Timing_translator` と `Default_bar_line_engraver` を`Score` コンテキストから `Staff` コンテキストに移動させることにより、異なる譜に対して異なる値のデフォルト拍子プロパティを割り当てることができます。

>     \score {
>       \new StaffGroup <<
>          \new Staff {
>             \overrideTimeSignatureSettings
>               #'(4 . 4)  % timeSignatureFraction
>               #'(1 . 4)  % baseMomentFraction
>               #'(3 1)    % beatStructure
>               #'()       % beamExceptions
>             \time 4/4
>             \repeat unfold 8 {c''8}
>          }
>          \new Staff {
>             \overrideTimeSignatureSettings
>               #'(4 . 4)  % timeSignatureFraction
>               #'(1 . 4)  % baseMomentFraction
>               #'(1 3)    % beatStructure
>               #'()       % beamExceptions
>             \time 4/4
>             \repeat unfold 8 {c''8}
>          }
>       >>
>       \layout {
>         \context {
>           \Score
>           \remove "Timing_translator"
>           \remove "Default_bar_line_engraver"
>         }
>         \context {
>           \Staff
>           \consists "Timing_translator"
>           \consists "Default_bar_line_engraver"
>         }
>       }
>     }

#### 定義済みコマンド

`\numericTimeSignature`, `\defaultTimeSignature`

#### Selected Snippets

Changing the time signature without affecting the beaming

The `\time` command sets the properties `timeSignatureFraction`, `beatLength`, `beatGrouping` and `measureLength` in the `Timing` context, which is normally aliased to `Score`. Changing the value of `timeSignatureFraction` causes the new time signature symbol to be printed without changing any of the other properties:

>     \markup {
>       This snippet is deprecated as of 2.13.5 and will be removed in 2.14
>     }

Compound time signatures

Odd 20th century time signatures (such as "5/8") can often be played as compound time signatures (e.g. "3/8 + 2/8"), which combine two or more inequal metrics. LilyPond can make such music quite easy to read and play, by explicitly printing the compound time signatures and adapting the automatic beaming behavior. (Graphic measure grouping indications can also be added; see the appropriate snippet in this database.)

>     #(define ((compound-time one two num) grob)
>        (grob-interpret-markup grob
>                               (markup #:override '(baseline-skip . 0) #:number
>                                       (#:line ((#:column (one num))
>                                                #:vcenter "+"
>                                                (#:column (two num)))))))

>     \relative c' {
>       \override Staff.TimeSignature #'stencil = #(compound-time "2" "3" "8")
>       \time 5/8
>       \set Staff.beatStructure = #'(2 3)
>       c8 d e fis gis
>       c8 fis, gis e d
>       c8 d e4 gis8
>     }

Time signature printing only the numerator as a number (instead of the fraction)

Sometimes, a time signature should not print the whole fraction (e.g. 7/4), but only the numerator (7 in this case). This can be easily done by using `\override Staff.TimeSignature #'style = #'single-digit` to change the style permanently. By using `\revert Staff.TimeSignature #'style`, this setting can be reversed. To apply the single-digit style to only one time signature, use the `\override` command and prefix it with a `\once`.

>     \relative c'' {
>       \time 3/4
>       c4 c c
>       % Change the style permanently
>       \override Staff.TimeSignature #'style = #'single-digit
>       \time 2/4
>       c4 c
>       \time 3/4
>       c4 c c
>       % Revert to default style:
>       \revert Staff.TimeSignature #'style
>       \time 2/4
>       c4 c
>       % single-digit style only for the next time signature
>       \once \override Staff.TimeSignature #'style = #'single-digit
>       \time 5/4
>       c4 c c c c
>       \time 2/4
>       c4 c
>     }

#### 参照

音楽用語集: time signature

記譜法リファレンス: Mensural time signatures, 時間管理

コード断片集: リズム

内部リファレンス: TimeSignature, Timing_translator

#### メトロノーム記号

基本的なメトロノーム記号は単純に以下のように記述します:

>     \tempo 4 = 120
>     c2 d
>     e4. d8 c2

メトロノーム記号を 2 つの数の範囲として譜刻することもできます:

>     \tempo 4 = 40 ~ 46
>     c4. e8 a4 g
>     b,2 d4 r

テキストを持つテンポ指示にすこともできます:

>     \tempo "Allegretto"
>     c4 e d c
>     b4. a16 b c4 r4

メトロノーム記号とテキストを組み合わせると、メトロノーム記号は自動的に括弧で囲まれます:

>     \tempo "Allegro" 4 = 160
>     g4 c d e
>     d4 b g2

一般に、テキストを任意のマークアップ オブジェクトにすることができます:

>     \tempo \markup { \italic Faster } 4 = 132
>     a8-. r8 b-. r gis-. r a-. r

テキストを伴わないメトロノーム記号を括弧で囲むには、空の文字列を含めて記述します:

>     \tempo "" 8 = 96
>     d4 g e c

#### Selected Snippets

Printing metronome and rehearsal marks below the staff

By default, metronome and rehearsal marks are printed above the staff. To place them below the staff simply set the `direction` property of `MetronomeMark` or `RehearsalMark` appropriately.

>     \layout { ragged-right = ##f }

>     {
>       % Metronome marks below the staff
>       \override Score.MetronomeMark #'direction = #DOWN
>       \tempo 8. = 120
>       c''1

>       % Rehearsal marks below the staff
>       \override Score.RehearsalMark #'direction = #DOWN
>       \mark \default
>       c''1
>     }

Changing the tempo without a metronome mark

To change the tempo in MIDI output without printing anything, make the metronome mark invisible.

>     \score {
>       \new Staff \relative c' {
>         \tempo 4 = 160
>         c4 e g b
>         c4 b d c
>         \set Score.tempoHideNote = ##t
>         \tempo 4 = 96
>         d,4 fis a cis
>         d4 cis e d
>       }
>       \layout { }
>       \midi { }
>     }

Creating metronome marks in markup mode

New metronome marks can be created in markup mode, but they will not change the tempo in MIDI output.

>     \relative c' {
>       \tempo \markup {
>         \concat {
>           (
>           \smaller \general-align #Y #DOWN \note #"16." #1
>           " = "
>           \smaller \general-align #Y #DOWN \note #"8" #1
>           )
>         }
>       }
>       c1
>       c4 c' c,2
>     }

詳細は テキストをフォーマットする を参照してください。

#### 参照

音楽用語集: metronome, metronomic indication, tempo indication, metronome mark

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

コード断片集: Staff notation

内部リファレンス: MetronomeMark

#### 上拍

弱拍や上拍などのような部分小節またはピックアップ小節は、`\partial` コマンドを使って入力します。以下の構文を使用します:

>     \partial duration

`duration` は、最初の完全な長さを持つ小節の前に置かれる小節の長さです:

>     \partial 4 e4 |
>     a2. c,4 |

部分小節は、完全な長さを持つ小節よりも短い演奏時間なら、どのような長さでも持つことができます:

>     \partial 4 e4 |
>     a2. c,4 |

部分小節は 1 小節よりも短い任意の演奏時間にすることができます:

>     \partial 8*3 c8 d e |
>     a2. c,4 |

内部的には、`\partial duration` は以下のように翻訳されます:

>     \set Timing.measurePosition -duration

例えば、`\partial 8*3` は以下のようになります:

>     \set Timing.measurePosition = #(ly:make-moment -3 8)

プロパティ `measurePosition` は、ある時点でその小節はどれくらい演奏済みになっているかを示す有理数を保持します。このプロパティは `\partial` によって負の数にセットされるということに注意してください: すなわち、`\partial 4` は内部的に `-4` に翻訳され、“その小節には 4 分音符が残っている” という意味になります。

#### 参照

音楽用語集: anacrusis

記譜法リファレンス: 装飾小音符

コード断片集: リズム

内部リファレンス: Timing_translator

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

`\partial` コマンドは楽曲の開始時で使用されることだけを意図したものです。楽曲の途中でこのコマンドを使用した場合、奇妙な警告がいくつか発生するかもしれません。曲の途中では `\set Timing.measurePosition` を使用してください。

#### 無韻律の音楽

小節線と小節番号は自動的に算出されます。無韻律の音楽 (例えば、カデンツァの一部) では、この機能は望ましくありません。小節線と小節番号の自動算出を off にするにはコマンド `\cadenzaOn` を使用し、再び on にするには `\cadenzaOff` を使用します。

>     c4 d e d
>     \cadenzaOn
>     c4 c d8[ d d] f4 g4.
>     \cadenzaOff
>     \bar "|"
>     d4 e d c

小節の付番は、カデンツァが存在しないかのように、カデンツァの終了点で再開されます:

>     % すべての小節番号を表示します
>     \override Score.BarNumber #'break-visibility = #all-visible
>     c4 d e d
>     \cadenzaOn
>     c4 c d8[ d d] f4 g4.
>     \cadenzaOff
>     \bar "|"
>     d4 e d c

自動連桁は `\cadenzaOn` で off になり、`\cadenzaOff` で on になります。このため、カデンツァ内の連桁はすべて手動で入力する必要があります (手動連桁)。

>     \repeat unfold 8 { c8 }
>     \cadenzaOn
>     \repeat unfold 5 { c8 }
>     \bar"|"
>     \cadenzaOff
>     \repeat unfold 8 { c8 }

これらの定義済みコマンドは、たとえ `Voice` コンテキストの 1 つの中に配置したとしても、楽譜のすべての譜に影響を与えるということに注意してください。これを変更するには、複合拍子記譜法 で示されているように、`Timing_translator` を `Score` コンテキストから `Staff` コンテキストに移動させます。

#### 定義済みコマンド

`\cadenzaOn`, `\cadenzaOff`

#### 参照

音楽用語集: cadenza

記譜法リファレンス: Visibility of objects

コード断片集: リズム

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

LilyPond は改行と改ページを小節線の箇所にのみ挿入します。無韻律の音楽が譜の行の終わりまでに終了しないのならば、以下のように不可視の小節線を挿入して、改行または改ページを起こすことができる場所であることを示す必要があります:

>     \bar ""

`\cadenzaOn` で楽曲を始める場合、`Voice` コンテキストを明示的に作成すべきです。さもないと、奇妙なエラーが発生する可能性があります。

>     \new Voice {
>       \relative c' {
>         \cadenzaOn
>         c16[^"Solo Free Time" d e f] g2.
>         \bar "||"
>         \cadenzaOff
>       }
>     }

#### 複合拍子記譜法

複合拍子記譜法がサポートされます。明示的な複合拍子と、拍子指定を変更して音符の演奏時間を伸縮することによる複合拍子のどちらもです。

それぞれの譜は異なる拍子を持ち、小節の長さは等価である場合

この記譜を作成するには、各譜に共通の拍子をセットし、`timeSignatureFraction` に望みの分数をセットすることによって記号を手動で置き換え、各譜の演奏時間を伸縮させて共通の拍子に合わせます – 拍子 を参照してください。演奏時間の伸縮は `\scaleDurations` で行います。このコマンドの使用方法は `\times` と同じですが、連符囲みを作成しません – 演奏時間を変更する を参照してください。

この例では、3/4, 9/8 それに 10/8 の拍子を持つ音楽が並列に並べられています。2 番目の譜では、演奏時間に 2/3 が掛けられ、それによって 2/3 * 9/8 = 3/4 となっています。3 番目の譜では、演奏時間に 3/5 が掛けられ、それによって 3/5 * 10/8 = 3/4 となっています。演奏時間の伸縮は自動連桁の規則に影響を与えるため、しばしば手動で連桁を挿入することが必要になります。

>     \relative c' <<
>       \new Staff {
>         \time 3/4
>         c4 c c |
>         c c c |
>       }
>       \new Staff {
>         \time 3/4
>         \set Staff.timeSignatureFraction = #'(9 . 8)
>         \scaleDurations #'(2 . 3)
>         \repeat unfold 6 { c8[ c c] }
>       }
>       \new Staff {
>         \time 3/4
>         \set Staff.timeSignatureFraction = #'(10 . 8)
>         \scaleDurations #'(3 . 5) {
>           \repeat unfold 2 { c8[ c c] }
>           \repeat unfold 2 { c8[ c] } |
>           c4. c4. \times 2/3 { c8[ c c] } c4
>         }
>       }
>     >>

それぞれの譜は異なる拍子を持ち、小節の長さは等価ではない場合

`Timing_translator` と `Default_bar_line_engraver` を `Staff` コンテキストに移すことによって、それぞれの譜に独立した拍子を与えることができます。

>     \layout {
>       \context {
>         \Score
>         \remove "Timing_translator"
>         \remove "Default_bar_line_engraver"
>       }
>       \context {
>         \Staff
>         \consists "Timing_translator"
>         \consists "Default_bar_line_engraver"
>       }
>     }

>     % 以上で、各譜はそれぞれに拍子を持つようになります

>     \relative c' <<
>       \new Staff {
>         \time 3/4
>         c4 c c |
>         c4 c c |
>       }
>       \new Staff {
>         \time 2/4
>         c4 c |
>         c4 c |
>         c4 c |
>       }
>       \new Staff {
>         \time 3/8
>         c4. |
>         c8 c c |
>         c4. |
>         c8 c c |
>       }
>     >>

#### Selected Snippets

Compound time signatures

Odd 20th century time signatures (such as "5/8") can often be played as compound time signatures (e.g. "3/8 + 2/8"), which combine two or more inequal metrics. LilyPond can make such music quite easy to read and play, by explicitly printing the compound time signatures and adapting the automatic beaming behavior. (Graphic measure grouping indications can also be added; see the appropriate snippet in this database.)

>     #(define ((compound-time one two num) grob)
>        (grob-interpret-markup grob
>                               (markup #:override '(baseline-skip . 0) #:number
>                                       (#:line ((#:column (one num))
>                                                #:vcenter "+"
>                                                (#:column (two num)))))))

>     \relative c' {
>       \override Staff.TimeSignature #'stencil = #(compound-time "2" "3" "8")
>       \time 5/8
>       \set Staff.beatStructure = #'(2 3)
>       c8 d e fis gis
>       c8 fis, gis e d
>       c8 d e4 gis8
>     }

#### 参照

音楽用語集: polymetric, polymetric time signature, meter

記譜法リファレンス: 拍子, 演奏時間を変更する

コード断片集: リズム

内部リファレンス: TimeSignature, Timing_translator, Default_bar_line_engraver, Staff

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

異なる拍子を持つ譜が並列に並べられている場合、同時に起こる音符の水平方向の位置は同じになります。しかしながら、それぞれの譜の小節線により、音符の間隔は通常の異なる拍子が無い場合よりも不規則になります。

#### 自動音符分割

小節線をまたがる長い音符を自動的にタイで結ばれた音符に変換することができます。これを行うには、`Note_heads_engraver` を `Completion_heads_engraver` で置き換えます。以下の例では、小節線をまたがる音符が分割され、タイで結ばれています。

>     \new Voice \with {
>       \remove "Note_heads_engraver"
>       \consists "Completion_heads_engraver"
>     }

>     { c2. c8 d4 e f g a b c8 c2 b4 a g16 f4 e d c8. c2 }

このエングラーバは進行中の音符をすべて小節線のところで分割して、タイを挿入します。このエングラーバの用途の 1 つに複雑な楽譜のデバッグがあります: 何小節かで音符がきちんと満たされていない場合、このエングラーバで挿入されたタイが、それぞれの小節の狂いを示します。

#### 参照

音楽用語集: tie

学習マニュアル: エングラーバの説明, エングラーバを追加 / 削除する

コード断片集: リズム

内部リファレンス: Note_heads_engraver, Completion_heads_engraver, Forbid_line_break_engraver

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

すべての演奏時間を通常の音符と付点で正確に表すことはできません (特に、連符を含んでいる場合) が、`Completion_heads_engraver` が連符を挿入することはありません。

`Completion_heads_engraver` は音符にだけ作用します。休符を分割することはありません。

#### 旋律のリズムを示す

しばしば旋律のリズムだけを示したいことがあります。これはリズム譜を使うことで達成できます。そのような譜上にある音符のピッチはすべて破棄され、その譜自体は 1 本の線を持ちます:

>     <<
>       \new RhythmicStaff {
>         \new Voice = "myRhythm" {
>           \time 4/4
>           c4 e8 f g2
>           r4 g g f
>           g1
>         }
>       }
>       \new Lyrics {
>         \lyricsto "myRhythm" {
>           This is my song
>           I like to sing
>         }
>       }
>     >>

ギター コード表はしばしばつま弾き (ストラム) のリズムを示します。これは `Pitch_squash_engraver` と `\improvisationOn` を使うことで達成できます。

>     <<
>       \new ChordNames {
>         \chordmode {
>           c1 f g c
>         }
>       }
>       \new Voice \with {
>         \consists Pitch_squash_engraver
>       } \relative c'' {
>         \improvisationOn
>         c4 c8 c c4 c8 c
>         f4 f8 f f4 f8 f
>         g4 g8 g g4 g8 g
>         c4 c8 c c4 c8 c
>       }
>     >>

#### 定義済みコマンド

`\improvisationOn`, `\improvisationOff`

#### Selected Snippets

Guitar strum rhythms

For guitar music, it is possible to show strum rhythms, along with melody notes, chord names and fret diagrams.

>     \include "predefined-guitar-fretboards.ly"
>     <<
>       \new ChordNames {
>         \chordmode {
>           c1 | f | g | c
>         }
>       }
>       \new FretBoards {
>         \chordmode {
>           c1 | f | g | c
>         }
>       }
>       \new Voice \with {
>         \consists "Pitch_squash_engraver"
>       } {
>         \relative c'' {
>           \improvisationOn
>           c4 c8 c c4 c8 c
>           f4 f8 f f4 f8 f
>           g4 g8 g g4 g8 g
>           c4 c8 c c4 c8 c
>         }
>       }
>       \new Voice = "melody" {
>         \relative c'' {
>           c2 e4 e4
>           f2. r4
>           g2. a4
>           e4 c2.
>         }
>       }
>       \new Lyrics {
>         \lyricsto "melody" {
>           This is my song.
>           I like to sing.
>         }
>       }
>     >>

#### 参照

コード断片集: リズム

内部リファレンス: RhythmicStaff, Pitch_squash_engraver

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

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