5.1.5 コンテキストのデフォルト設定を変更する

プロパティを変更する で説明したように、コンテキストとグラフィカル オブジェクトのプロパティを \set コマンドや \override コマンドで変更することができます。これらのコマンドは音楽イベントを生成して、楽譜処理中にコマンドが出現するポイントで変更に効果を発揮させます。

対照的に、このセクションではコンテキストが作成された時点でコンテキストとグラフィカル オブジェクトのプロパティの デフォルト 値を変更する方法を説明します。これを行う方法は 2 つあります。1 つはある特定のタイプの全コンテキストのデフォルト値を変更する方法で、もう 1 つはただ 1 つのコンテキストのインスタンスのデフォルト値を変更する方法です。


同じタイプの全コンテキストを変更する

Score, Staff, Voice, その他のコンテキストにおいてデフォルトで使用される譜刻のためのコンテキスト設定は、\layout ブロックの中の\context ブロックで指定することができます。\layout ブロックは、それを適用する \score ブロックの中で、かつ、音楽表記の後に配置する必要があります。

譜刻ではなく MIDI 出力に関する設定をする場合は、\midi ブロックに別々に指定する必要があります (出力定義 - コンテキストの青写真を参照してください)。

\layout {
  \context {
    \Voice
    [すべての Voice コンテキストのコンテキスト設定]
  }
  \context {
    \Staff
    [context settings for all Staff contexts]
  }
}

以下のタイプの設定を指定することができます:

プロパティ設定コマンドは、\context ブロックで囲まずに、\layout ブロックの中に配置することができます。そのような設定は、指定されたタイプの任意のコンテキストの開始時にプロパティ設定コマンドをインクルードするのと等価です。コンテキストを指定しない場合、すべての 下位コンテキストに影響を与えます – 下位コンテキスト - ボイス を参照してください。\layout ブロックの中でのプロパティ設定コマンドの構文は、音楽ストリームの中で同じコマンドを記述するのと同じです。

\score {
  \new Staff {
    \relative {
      a'4^"Smaller font" a a a
      a4 a a a
    }
  }
  \layout {
    \accidentalStyle dodecaphonic
    \set fontSize = #-4
    \override Voice.Stem.thickness = #4.0
  }
}

[image of music]


指定したコンテキストだけを変更する

\with ブロックで指定したコンテキスト インスタンスのコンテキスト プロパティだけを変更することができます。他の全ての同じタイプのコンテキスト インスタンスは、LilyPond に組み込まれてスコープ内の \layout ブロックによって変更されたデフォルト設定のままです。\with ブロックは \new context-type コマンドの直後に配置する必要があります:

\new Staff \with { [このコンテキスト インスタンスだけに適用されるコンテキスト設定] }
{
  …
}

あるいは、もし入力モードを指定するような簡略記法のコマンド (例えば \chordmode の代わりに \chords を使うなど) を用いて音楽を入力する場合、\with をそのようなコマンドのすぐ後に配置する必要があります:

\chords \with { [この (暗黙的) コンテキスト インスタンスだけに適用されるコンテキスト設定] }
{
  …
}

このような記法によって作られる暗黙的なコンテキストが変更されます。 これは、同様な入力モードを指定する簡略記法のコマンドにも当てはまります (\drums, \figures)。入力モード を参照してください。

\with ブロックで行われるコンテキストの変更は音楽の内部にあるため、出力定義内での変更とは異なり、全ての 出力 (楽譜と MIDI の両方) に影響が及びます。

以下のタイプの設定を指定することができます:

参照

記譜法リファレンス: 入力モード


適用順序

ある特定のタイミングで適用されるプロパティの値は以下のように決定されます:

参照

学習マニュアル: Modifying context properties

記譜法リファレンス: コンテキストの説明, 下位コンテキスト - ボイス, \set コマンド, \override コマンド, \layout ブロック


LilyPond — 記譜法リファレンス v2.22.1 (安定版).