5.1.7 コンテキストの配置順序

通常、コンテキストは入力ファイルの中で記述した順に楽譜の段の上から下に配置されます。コンテキストがネストされている場合、外側のコンテキストは入力ファイルの中で指定されたコンテキストを内側に保持して、内側のコンテキストは外側のコンテキストの “accepts” リストに含まれます。ネストされたコンテキストのうち外側のコンテキストの “accepts” リストに含まれないものは、ネストされずに外側のコンテキストの下に再配置されます。

コンテキストの “accepts” リストを \accepts コマンドと \denies コマンドで変更することができます。\accepts はコンテキストを “accepts” リストに追加して、\denies は “accepts” リストからコンテキストを削除します。例えば、通常、コード ネームは Staff コンテキストの中にネストされないため、ChordNames コンテキストはデフォルトでは Staff コンテキストの “accepts” リストには含まれませんが、リストに含める必要があれば含めることができます:

\score {
  \new Staff {
    c' d' e' f'
    \chords { d1:m7 b1:min7.5- }
  }
}

[image of music]

\score {
  \new Staff {
    c' d' e' f'
    \chords { d1:m7 b1:min7.5- }
  }
  \layout {
    \context {
      \Staff
      \accepts "ChordNames"
    }
  }
}

[image of music]

\denies は主に、他のコンテキストをベースに新しいコンテキストを作成した時に、中にネストするコンテキストを変更するために用いられます。

例えば、VaticanaStaff コンテキストは Staff コンテキストをベースにしていますが、“accepts” リストでは Voice コンテキストの代わりに VaticanaVoice コンテキストを保持しています。

コンテキストに保持されるべきコマンドが出現して、それを保持するための適切なコンテキストが存在しない場合、コンテキストが暗黙的に作成されるということに注意してください。これは予期しない譜や楽譜を生み出す可能性があります。

参照

アプリケーション使用方法: An extra staff appears

インストールされているファイル: ‘ly/engraver-init.ly


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

LilyPond — 記譜法リファレンス

inserted by FC2 system