LilyPond Benutzerhandbuch: 3.3.1 LilyPond-Dateien einfügen

### 3.3.1 LilyPond-Dateien einfügen

Ein größeres Projekt kann in einzelne Dateien aufgeteilt werden. Um eine andere Datei einzubinden, kann der Befehl

>     \include "andereDatei.ly"

benutzt werden.

Die Zeile `\include "andereDatei.ly"` benimmt sich genauso, also ob der Inhalt der Datei ‘`andereDatei.ly`’ komplett in die Hauptdatei eingefügt werden würde. So kann man für ein größeres Projekt die einzelnen Stimmen der Instrumente getrennt notieren und sie dann in einer Partitur-Datei benutzen. Meistens werden in den eingefügten Dateien einige Variablen definiert, die dann auch in der Hauptdatei eingesetzt werden können. Mit Marken (Tags) gekennzeichnete Abschnitte können eingesetzt werden, um die entsprechenden Noten etc. an verschiedenen Stellen in der Datei zur Verfügung zu stellen. Siehe auch Verschiedene Editionen aus einer Quelldatei.

Auf Dateien im aktuellen Verzeichnis kann einfach mit dem Dateinamen nach dem `\include`-Befehl verwiesen werden. Dateien an anderen Stellen können eingebunden werden, indem entweder ein vollständiger Pfad oder ein relativer Pfad zu der Datei angegeben wird. Hierbei sollten die für UNIX typischen Schrägstriche (/) und nicht die rückwärtsgeneigten von Windows (\) verwendet werden, um die Verzeichnisse zu trennen. Wenn etwa die Datei ‘`kram.ly`’ ein Verzeichnis höher liegt als das aktuelle Verzeichnis, sollte der Befehl so aussehen:

>     \include "../kram.ly"

Wenn die Orchesterstimmen andererseits in einem Unterordner mit der Bezeichnung `stimmen` liegen, sieht er folgendermaßen aus:

>     \include "stimmen/VI.ly"
>     \include "stimmen/VII.ly"
>     ... etc

Dateien, die eingebunden werden sollen, können selber auch wiederum ein `\include` enthalten. Diese Einbindung zweiter Ebene werden erst interpretiert, wenn sie sich in der Hauptdatei befinden, sodass die Pfadangaben hier nicht relativ zur eingebundenen Datei, sondern relativ zur Hauptdatei gesetzt werden müssen. Dieses Verhalten kann jedoch auch verändert werden, indem man lilypond die Option ‘`-drelative-includes`’ auf der Kommandozeile zuweist (oder indem man den Befehl `#(ly:set-option 'relative-includes #t)` an den Beginn der Quelldatei schreibt). Mit `relative-includes` wird der Pfad jedes `\include`-Befehls als relativ zu der Datei angenommen, in der sich der Befehl befindet. Dieses Verhalten wird empfohlen und wird in zukünftigen Versionen von LilyPond den Standard darstellen.

Dateien können auch aus einem Verzeichnis eingebunden werden, dass im Suchpfad von LilyPond liegt. Hierzu muss auf der Kommandozeile das entsprechende Verzeichnis angegeben werden und die Dateien, die eingebunden werden, müssen nur mit ihrem Namen notiert sein. Wenn etwa die Datei ‘`Haupt.ly`’ kompiliert werden soll, die Dateien aus dem Unterverzeichnis ‘`stimmen`’ einbindet, müssen sie sich im Verzeichnis von ‘`Haupt.ly`’ befinden und dann LilyPond folgendermaßen aufrufen:

>     lilypond --include=stimmen Haupt.ly

In ‘`Haupt.ly`’ steht:

>     \include "VI.ly"
>     \include "VII.ly"
>     ... usw.

Dateien, die in vielen Partituren verwendet werden sollen, können im LilyPond-Verzeichnis ‘`../ly`’ gespeichert werden. (Die Stelle, an der dieses Verzeichnis sich befindet, hängt vom Betriebssystem ab, siehe hierzu Mehr Information). Dateien in diesem Verzeichnis können einfach mit ihrem Namen eingefügt werden. So werden auch die Sprachdateien wie etwa ‘`deutsch.ly`’ eingefügt.

LilyPond lädt eine Anzahl an Dateien, wenn das Programm aufgerufen wird. Diese Dateien sind für den Benutzer nicht ersichtlich, aber die Dateien können identifiziert werden, indem LilyPond auf der Kommandozeile mit Option aufgerufen wird: `lilypond --verbose`. Hiermit wird neben anderer Information auch eine Liste von Pfaden und Dateien aufgeführt, die LilyPond benutzt. Die wichtigeren Dateien werden im Abschnitt Mehr Information besprochen. Diese Dateien können verändert werden, aber Änderungen gehen verloren, wenn eine neue LilyPond-Version installiert wird.

Einige einfache Beispiele, die die Benutzung von `\include` demonstrieren, sind dargestellt in Partituren und Stimmen.

#### Siehe auch

Handbuch zum Lernen: Mehr Information, Partituren und Stimmen.

#### Bekannte Probleme und Warnungen

Wenn eine Datei eingebunden wird, deren Name einer Datei aus dem Installationsverzeichnis von LilyPond entspricht, wird die installierte Datei anstelle der eigenen verwendet.

#### LilyPond – Notationsreferenz v2.24.4 (stabiler Zweig).