Über Eigenschaften
Die layout- und props-Argumente der Textbeschriftungsbefehle
bringen einen Kontext für die Interpretation der Beschriftung:
Schriftgröße, Zeilenlänge usw.
Das layout-Argument greift auf Eigenschaften zu, die in der
paper-Umgebung definiert werden, indem man die ly:output-def-lookup-Funktion
benutzt. Beispielsweise liest man die Zeilenlänge (die gleiche, die auch in
Partituren benutzt wird) aus mit:
(ly:output-def-lookup layout 'line-width)
Das props-Argument stellt einige Eigenschaften für die Textbeschriftungsbefehle
zur Verfügung. Beispielsweise wenn der Überschrifttext einer
book-Umgebung interpretiert wird, werden alle Variablen, die
in der \header-Umgebung definiert werden, automatisch zu props
hinzugefügt, sodass die Beschriftung auf Titel, Komponist usw. der
book-Umgebung zugreifen kann. Das ist auch eine Möglichkeit, das
Verhalten eines Beschriftungsbefehls zu konfigurieren: Wenn etwa ein
Befehl die Schriftgröße während der Verarbeitung einsetzt, wird die
Schriftgröße aus den props ausgelesen und nicht mit einem eigenen
font-size-Argument definiert. Beim Aufruf des Beschriftungsbefehls
kann der Wert der Schriftgröße geändert werden, womit sich auch das Verhalten
des Befehls verändert. Benutzen Sie das #:properties-Schlüsselwort
von define-markup-command um zu definieren, welche Eigenschaften aus den
props-Argumenten ausgelesen werden sollen.
Das Beispiel im nächsten Abschnitt illustriert, wie man auf Eigenschaften in einem Beschriftungsbefehl zugreifen und sie verändern kann.