LilyPond 記譜法リファレンス: 5.2.2 レイアウト インターフェイス

### 5.2.2 レイアウト インターフェイス

前のセクションで見た HTML ページには、 Fingering と呼ばれるレイアウト オブジェクトについての記述がありました。そのようなオブジェクトは楽譜で記号となります。レイアウト オブジェクトは (太さや向きのような) 数値を保持するプロパティを持っていますが、関連オブジェクトへのポインタも持っています。レイアウト オブジェクトは Grob – これはグラフィカル オブジェクトを縮めたものです – とも呼ばれます。Grob についての詳細は、 grob-interface を参照してください。

`Fingering` のページは、`Fingering` オブジェクトの定義をリストアップしています。例えば、このページには以下のような記述があります:

> `padding` (dimension, in staff space):

> `0.5`

これは、この運指記号は少なくとも符頭の 0.5 倍の距離を保つということを意味します。

各レイアウト オブジェクトは、記譜要素あるいは写植要素としての機能をいくつか持つ場合があります。例えば、`Fingering` オブジェクトは以下の側面を持っています:

- Its size is independent of the horizontal spacing, unlike slurs or beams.

  (このオブジェクトのサイズは、スラーや連桁と異なり、水平方向のスペースとは無関係です)

- It is a piece of text. Granted, it is usually a very short text.

  (このオブジェクトはテキストです。通常、これは非常に短いテキストです。)

- That piece of text is typeset with a font, unlike slurs or beams.

  (このテキストは、スラーや連桁と異なり、フォントで写植されます。)

- Horizontally, the center of the symbol should be aligned to the center of the note head.

  (水平方向では、この記号の中心は符頭の中心に揃えられます。)

- Vertically, the symbol is placed next to the note and the staff.

  (垂直方向では、この記号は音符や譜の近く配置されます。)

- The vertical position is also coordinated with other superscript and subscript symbols.

  (また、垂直方向の位置は、他の上付き記号や下付き記号との調整によって決まります。)

これらの側面はそれぞれ、いわゆる インターフェイス として捉えられます。それらは、 Fingering ページの最下部でリストアップされています。

> This object supports the following interfaces:

> (このオブジェクトは以下のインターフェイスをサポートします:)

> item-interface, self-alignment-interface, side-position-interface, text-interface, text-script-interface, font-interface, finger-interface, and grob-interface.

リンクのいずれかをクリックすると、それぞれのオブジェクト インターフェイスのページに行くことができます。各インターフェイスはいくつかのプロパティを持ちます。それらプロパティの中には、ユーザにとって役に立たないもの (‘内部プロパティ’) もありますが、それ以外は変更可能です。

これまで `Fingering` オブジェクトについて話してきましたが、これは実際にはそれほど多くのことをしているわけではありません。初期化ファイル ( その他の情報源 を参照してください) ‘`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 ページは、この定義から直接生成されたに過ぎません。

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

- 2. 専門的な記譜法
- 3. 入出力全般
- 4. スペースの問題
- 5. デフォルトを変更する
- A. 付表
- B. カンニング ペーパー
- C. GNU Free Documentation License
- D. LilyPond コマンド インデックス
- E. LilyPond インデックス