| [ < ] | [ > ] | [ << ] | [ 上へ ] | [ >> ] | [トップ] | [目次] | [インデックス] | [ ? ] |
@translationof Explaining the Internals Reference
| 5.2.1 内部リファレンスを使いこなす | ||
| 5.2.2 レイアウト インターフェイス | ||
| 5.2.3 グラフィカル オブジェクト プロパティを決定する | ||
| 5.2.4 命名規約 |
| [ < ] | [ > ] | [ << ] | [ 上へ ] | [ >> ] | [トップ] | [目次] | [インデックス] | [ ? ] |
@translationof Navigating the program reference
以下の譜面の運指記号を移動させたいとします:
c''-2
運指指示のドキュメント (運指の指示) を見ると、以下のようなセクションがあることに気付くはずです:
参照
内部リファレンス: (internals)Fingering section ‘Fingering’ in Internals Reference
(internals)Fingering section ‘Fingering’ in Internals Reference へのリンクを辿ってください。ページの先頭に、以下のような記述があります:
Fingering objects are created by: (internals)Fingering_engraver section ‘Fingering_engraver’ in Internals Reference and (internals)New_fingering_engraver section ‘New_fingering_engraver’ in Internals Reference.
内部リファレンスの中にある関連リンクを辿っていくことで、プログラム内部の情報フローを追っていくことができます:
( (internals)Fingering section ‘Fingering’ in Internals Reference: (internals)Fingering section ‘Fingering’ in Internals Reference オブジェクトを作成するのは: (internals)Fingering_engraver section ‘Fingering_engraver’ in Internals Reference)
( (internals)Fingering_engraver section ‘Fingering_engraver’ in Internals Reference: 受け取る音楽タイプは: (internals)fingering-event section ‘fingering-event’ in Internals Reference)
fingering-event is in
Music expressions named
(internals)FingeringEvent section ‘FingeringEvent’ in Internals Reference
(
(internals)fingering-event section ‘fingering-event’ in Internals Reference:
音楽イベント タイプ fingering-event は
(internals)FingeringEvent section ‘FingeringEvent’ in Internals Reference という名前の音楽表記の中にあります)
このパスは、プログラム内部での情報フローとは逆向きです: 出力からスタートして、入力イベントで終わっています。入力イベントからスタートして、情報フローを読み進め、最後は出力オブジェクトに辿り着くこともできます。
内部リファレンスを通常のドキュメントのように読むこともできます。内部リファレンスに含まれる章は、 (internals)Music definitions section ‘Music definitions’ in Internals Reference, (internals)Translation section ‘Translation’ in Internals Reference, それに (internals)Backend section ‘Backend’ in Internals Reference です。 各章は、使用されているすべての定義と調整可能なすべてのプロパティをリストアップしています。
| [ < ] | [ > ] | [ << ] | [ 上へ ] | [ >> ] | [トップ] | [目次] | [インデックス] | [ ? ] |
@translationof Layout interfaces
前のセクションで見た HTML ページには、 (internals)Fingering section ‘Fingering’ in Internals Reference と呼ばれるレイアウト オブジェクトについての記述がありました。そのようなオブジェクトは楽譜で記号となります。レイアウト オブジェクトは (太さや向きのような) 数値を保持するプロパティを持っていますが、関連オブジェクトへのポインタも持っています。レイアウト オブジェクトは Grob – これはグラフィカル オブジェクトを縮めたものです – とも呼ばれます。Grob についての詳細は、 (internals)grob-interface section ‘grob-interface’ in Internals Reference を参照してください。
Fingering のページは、Fingering オブジェクトの定義をリストアップしています。例えば、このページには以下のような記述があります:
padding(dimension, in staff space):
0.5
これは、この運指記号は少なくとも符頭の 0.5 倍の距離を保つということを意味します。
各レイアウト オブジェクトは、記譜要素あるいは写植要素としての機能をいくつか持つ場合があります。例えば、Fingering オブジェクトは以下の側面を持っています:
(このオブジェクトのサイズは、スラーや連桁と異なり、水平方向のスペースとは無関係です)
(このオブジェクトはテキストです。通常、これは非常に短いテキストです。)
(このテキストは、スラーや連桁と異なり、フォントで写植されます。)
(水平方向では、この記号の中心は符頭の中心に揃えられます。)
(垂直方向では、この記号は音符や譜の近く配置されます。)
(また、垂直方向の位置は、他の上付き記号や下付き記号との調整によって決まります。)
これらの側面はそれぞれ、いわゆる インターフェイス として捉えられます。それらは、 (internals)Fingering section ‘Fingering’ in Internals Reference ページの最下部でリストアップされています。
This object supports the following interfaces:
(このオブジェクトは以下のインターフェイスをサポートします:)
(internals)item-interface section ‘item-interface’ in Internals Reference, (internals)self-alignment-interface section ‘self-alignment-interface’ in Internals Reference, (internals)side-position-interface section ‘side-position-interface’ in Internals Reference, (internals)text-interface section ‘text-interface’ in Internals Reference, (internals)text-script-interface section ‘text-script-interface’ in Internals Reference, (internals)font-interface section ‘font-interface’ in Internals Reference, (internals)finger-interface section ‘finger-interface’ in Internals Reference, and (internals)grob-interface section ‘grob-interface’ in Internals Reference.
リンクのいずれかをクリックすると、それぞれのオブジェクト インターフェイスのページに行くことができます。各インターフェイスはいくつかのプロパティを持ちます。それらプロパティの中には、ユーザにとって役に立たないもの (‘内部プロパティ’) もありますが、それ以外は変更可能です。
これまで Fingering オブジェクトについて話してきましたが、これは実際にはそれほど多くのことをしているわけではありません。初期化ファイル (
(learning)その他の情報源 section ‘その他の情報源’ in Learning Manual を参照してください)
‘scm/define-grobs.scm’ がこの ‘オブジェクト’ の本質を示しています:
(Fingering
. ((padding . 0.5)
(avoid-slur . around)
(slur-padding . 0.2)
(staff-padding . 0.5)
(self-alignment-X . 0)
(self-alignment-Y . 0)
(script-priority . 100)
(stencil . ,ly:text-interface::print)
(direction . ,ly:script-interface::calc-direction)
(font-encoding . fetaText)
(font-size . -5) ; don't overlap when next to heads.
(meta . ((class . Item)
(interfaces . (finger-interface
font-interface
text-script-interface
text-interface
side-position-interface
self-alignment-interface
item-interface))))))
|
見て取ることができるように、Fingering オブジェクトは変数設定の塊に過ぎず、内部リファレンスの中にある Web ページは、この定義から直接生成されたに過ぎません。
| [ < ] | [ > ] | [ << ] | [ 上へ ] | [ >> ] | [トップ] | [目次] | [インデックス] | [ ? ] |
@translationof Determining the grob property
以下の 2 の位置を変更しようとしていたことを思い出してください:
c''-2
垂直方向で見て、2 は元の音符の隣に配置されるのですから、この配置に関連するインターフェイスに干渉する必要があります。これは side-position-interface を用いて行います。このインターフェイスについてのページには、以下のように記述されています:
side-position-interfacePosition a victim object (this one) next to other objects (the support). The property
directionsignifies where to put the victim object relative to the support (left or right, up or down?)(対象オブジェクトを他のオブジェクト (サポート オブジェクト) の隣に配置します。このプロパティ
directionは、対象オブジェクトをどこに配置するかをサポート オブジェクトからの相対位置で示します (左あるいは右、上あるいは下?))
この記述の下に、以下のような変数 padding についての記述があります:
padding(dimension, in staff space) (譜スペースを単位とする距離)
Add this much extra space between objects that are next to each other. (隣り合うオブジェクトの間にスペースを付け加えます)
padding の値を増やすことで、運指記号を符頭から離すことができます。以下のコマンドは、音符と運指記号の間に “3 譜スペース”分の距離を加えます:
\once \override Voice.Fingering.padding = #3 |
パディングを運指記号オブジェクトが作成される前に挿入すると、以下のようになります:
\once \override Voice.Fingering.padding = #3 c''-2
このケースでは、調整されるコンテキストは Voice です。
(internals)Fingering_engraver section ‘Fingering_engraver’ in Internals Reference プラグインを参照してください。以下のように説明されています:
Fingering_engraver is part of contexts: … (internals)Voice section ‘Voice’ in Internals Reference
(Fingering_engraver は次のコンテキストの一部です: … (internals)Voice section ‘Voice’ in Internals Reference)
| [ < ] | [ > ] | [ << ] | [ 上へ ] | [ >> ] | [トップ] | [目次] | [インデックス] | [ ? ] |
@translationof Naming conventions
内部リファレンスについて他に説明しておくべき事柄として、さまざまな命名規約についての概要があります:
ly: を付けます
– 例: ly:plus-scheme-style
このような疑問があります:
| [ < ] | [ > ] | [ << ] | [ 上へ ] | [ >> ] |
This document was generated by gub on 7 月 13, 2020 using texi2html 1.82.
他の言語: English, català, deutsch, español, français, italiano
About automatic language selection.