[ << 出力を調整する ] | [Top][Contents][Index] | [ テンプレート >> ] |
[ < 調整手段 ] | [ Up : 調整手段 ] | [ \revert コマンド > ] |
\override
コマンド
我々はすでに コンテキスト プロパティを変更する と
エングラーバを追加 / 削除する で コンテキスト のプロパティを変更したり、エングラーバ を追加/削除したりするために使用するコマンド
\set
と \with
を見てきました。ここでは更に重要ないくつかのコマンドについて見ていきます。
レイアウト オブジェクト のプロパティを変更するためのコマンドは
\override
です。このコマンドは LilyPond の奥深くにある内部プロパティを変更しなければならないため、これまで見てきたコマンドのように単純な構文ではありません。どのコンテキストの中にあるどのオブジェクトのどのプロパティを変更しなければならないのか、そこにセットする新しい値を何にするのかを正確に知っている必要があります。どのようにこれを行うのかを見ていきましょう。
このコマンドの一般的な構文は以下のようなものです:
\override Context.LayoutObject.layout-property = #value
これは Context コンテキストのメンバである LayoutObject という名前のレイアウトの layout-property という名前のプロパティに値 value をセットします。
必要とされているコンテキストが明白であり、それが最下位レベルのコンテキストである
– つまり、Voice
, ChordNames
や Lyrics
である
– 場合、その Context は省略可能であり (そして通常は省略されます)、この後の例の多くでも省略します。後ほど、コンテキストを指定しなければならない場合について見ていきます。
これから後のセクションでは広範囲に亘るプロパティとそれらの値を扱います – プロパティのタイプ を参照してください。しかしながら、このセクションではそれらのフォーマットとコマンドの使い方を示すために、容易に理解できる簡単なプロパティと値をいくつか使用してみるだけです。
LilyPond の基本的な表記は文字列やマークアップだけでなく、音符や演奏時間のような音楽要素です。数字、シンボル、リストなどのより具体的な表記は ‘Scheme モード’ で処理されます – 表記の先頭に ‘#’ を記述することでこのモードが呼び出されます。Scheme モードについての更なる情報は LilyPond Scheme syntax を参照してください。
\override
は調整で用いられる最も一般的なコマンドであり、本章の残りの大半を使ってこのコマンドの使用例を示します。まずは符頭の色を変更する簡単な例を挙げます:
\relative { c'4 d \override NoteHead.color = #red e4 f | \override NoteHead.color = #green g4 a b c | }