4.3.3 エングラーバの説明

LilyPond によって作成された楽譜上にあるすべての記号は Engraver によって作り出されます。つまり、譜を譜刻するエングラーバがあり、符頭を譜刻するエングラーバ、符幹を譜刻するエングラーバ、連桁を譜刻するエングラーバなどなどです。そのようなエングラーバは 120 以上あります!幸いなことに、たいていの楽譜では数個のエングラーバについて知っていれば良く、簡単な楽譜ではまったく知らなくても大丈夫です。

エングラーバはコンテキストの中に存在し、そこで活動します。Metronome_mark_engraver などといった楽譜全体に影響を与えるエングラーバは最上位のコンテキスト – Score コンテキスト – で活動します。

Clef_engraverKey_engraver は各 Staff コンテキストの中で見つかります – 譜が異なれば音部記号や調号も異なるかもしれないからです。

Note_heads_engraverStem_engraver は各 Voice コンテキスト – 最下位のコンテキスト – の中にあります。

各エングラーバはそれの機能に関連付けされているある特定のオブジェクトを処理し、機能に関連するプロパティを維持します。コンテキストに関連付けされているプロパティなどのようにこれらのプロパティは、エングラーバの処理を変更するためや、譜刻される楽譜の中にある要素の見た目を変更するために、変更されるかもしれません。

エングラーバはすべてそれらの機能を記述する単語から形成された複合名を持ちます。最初の単語の最初の文字は大文字であり、その後に続く単語はアンダスコアで連結されます。ですから、Staff_symbol_engraver には譜表の線を作成する責任があり、Clef_engraver は音部記号を描くことによってピッチの参照ポイントを決定、セットします。

ここに、最も一般的なエングラーバをいくつかそれらの機能とともに挙げます。たいていの場合、名前から簡単に機能を推測でき、その逆も成り立つことがわかるでしょう。

エングラーバ機能
Accidental_engraver臨時記号 (警告的臨時記号とアドバイス的な臨時記号を含む) を作成します。
Beam_engraver連桁を譜刻します。
Clef_engraver音部記号を譜刻します。
Completion_heads_engraver小節線をまたがる音符を分割します。
Dynamic_engraver強弱記号 (クレッシェンド、デクレッシェンド) と強弱テキスト (p や f など) を作成します。
Forbid_line_break_engraver音楽要素がアクティブなままである場合に改行されることを防ぎます。(訳者: いわゆる禁則処理)
Key_engraver調号を作成します。
Metronome_mark_engraverメトロノーム記号を譜刻します。
Note_heads_engraver符頭を譜刻します。
Rest_engraver休符を譜刻します。
Staff_symbol_engraver(デフォルトで) 五線の譜表を譜刻します。
Stem_engraver符幹と単一符幹のトレモロを作成します。
Time_signature_engraver拍子記号を作成します。

後ほど、エングラーバのアクションを変更することによって LilyPond の出力がどのように変わるのかを見ていきます。

参照

内部リファレンス: Engravers and Performers

GNU LilyPond 学習マニュアル v2.25.14 (開発版).