[ << デフォルトを変更する ] | [トップ][目次][インデックス][ ? ] | [ 記譜法マニュアル表 >> ] | ||
[ < set コマンド ] | [ 上へ : プロパティを変更する ] | [ tweak コマンド > ] |
5.3.3 \override
コマンド
特殊なタイプのコンテキスト プロパティがあります:
グラフィカル オブジェクト記述です。グラフィカル オブジェクト記述には StudlyCaps
という名前
(大文字で始まります) が付けられています。これらは、関連リストとして、ある特定の種類のグラフィカル オブジェクト用の
‘デフォルト設定’ を保持します。各グラフィカル オブジェクト記述の設定を調べるには、‘scm/define-grobs.scm’ を参照してください。各グラフィカル オブジェクト記述は \override
を用いて変更します。
\override
は、実際のところ、簡略化した記述です。
\override context.GrobName #'property = #value
これは、以下と等価です:
\set context.GrobName = #(cons (cons 'property value) <previous value of context.GrobName>)
context
.GrobName
(alist) の値は、個々のグラフィカル オブジェクトのプロパティを初期化するために使用されます。グラフィカル オブジェクトは、Scheme スタイルの名前
(小文字の単語を -
でつないだもの) のプロパティを持ちます。グラフィカル オブジェクト プロパティの値は、フォーマット処理の間ずっと変更されています:
基本的に、フォーマット処理は、コールバック関数を用いてプロパティを計算することに他なりません。
例えば、Stem
オブジェクトの thickness
プロパティをオーバライドすることによって、符幹の太さを太くすることができます:
c4 c \override Voice.Stem #'thickness = #3.0 c4 c
\override
でコンテキストを指定しなければ、最下位コンテキストが指定されます:
{ \override Staff.Stem #'thickness = #3.0 << { e4 e \override Stem #'thickness = #0.5 e4 e } \\ { c4 c c c } >> }
\override
の効果は、\revert
によって元に戻すことができます:
c4 \override Voice.Stem #'thickness = #3.0 c4 c \revert Voice.Stem #'thickness c4
\override
と \revert
の効果は、その時点から影響を受けるコンテキストの中にあるすべてのグラフィカル オブジェクトに適用されます。
{ << { e4 \override Staff.Stem #'thickness = #3.0 e4 e e } \\ { c4 c c \revert Staff.Stem #'thickness c4 } >> }
\once
を \override
と共に用いることで、カレントの時間ステップだけに効果を与えることができます:
{ << { \override Stem #'thickness = #3.0 e4 e e e } \\ { c4 \once \override Stem #'thickness = #3.0 c4 c c } >> }
参照
内部リファレンス: Backend
[ << デフォルトを変更する ] | [トップ][目次][インデックス][ ? ] | [ 記譜法マニュアル表 >> ] | ||
[ < set コマンド ] | [ 上へ : プロパティを変更する ] | [ tweak コマンド > ] |