nächstes: , voriges: Noten in Text integrieren, aufwärts: LilyPond-book


4.3 Die Musikfragment-Optionen

Im Folgenden meint ‚LilyPond-Kommando‘ ein beliebiges in den vorgehenden Abschnitten beschriebenes Kommando, welches ein LilyPond-Fragment in eine Datei einfügt und von lilypond-book verarbeitet wird. Der Einfachheit halber werden hier alle LilyPond-Kommandos in der Syntax von LaTeX dargestellt.

Zu beachten ist, dass die Optionen eines LilyPond-Kommandos von links nach rechts verarbeitet werden. Wenn eine Option also mehrfach angegeben wird, wird nur die letzte benutzt.

Die folgenden Optionen können für LilyPond-Kommandos benutzt werden:

staffsize=ht
Setzt die Höhe einer Notenzeile auf ht, angegeben in Punkten.
ragged-right
Erzeugt Notenzeilen im Flattersatz mit natürlichem Abstand der Noten. In anderen Worten: ragged-right = ##t wird in das Musikfragment eingefügt. Dies ist die Standardeinstellung für das \lilypond{} Kommando, wenn die Option line-width nicht angegeben wird. Ebenso ist dies die Standardeinstellung für die lilypond-Umgebung, wenn die Option fragment, aber keine Zeilenlänge explizit angegeben ist.
noragged-right
Streckt Musikfragmente mit nur einer Notenzeile auf die volle Breite, es wird also ragged-right = ##f in das Musikfragment eingefügt.
packed
Erzeugt Notenzeilen mit möglichst engem Notenabstand, es wird also packed = ##t in das Musikfragment eingefügt.
line-width
line-width=Breite\Einheit
Setzt die Breite der Notenzeilen auf Breite, gemessen in Vielfachen der Einheit. Als Einheit können die folgenden Zeichenfolgen angegeben werden: cm, mm, in oder pt. Diese Option hat nur Einfluss auf die Breite von Notenzeilen und Text im Musikfragment, nicht jedoch auf den restlichen Text des Dokuments.

Wird diese Option ohne einen Wert angegeben, wird die Zeilenbreite auf einen Standardwert gesetzt, der durch einen heuristischen Algorithmus bestimmt wird.

Wenn die line-width Option nicht angegeben wird, versucht lilypond-book einen geeigneten Standardwert für alle lilypond-Umgebungen zu finden, die die ragged-right Option nicht benutzen.

notime
Verhindert die Ausgabe der Taktangabe am Anfang des Fragments und schaltet Taktstriche und alle Taktangaben im Fragment ab.
fragment
Bewirkt, dass lilypond-book Standardcode um das Fragment herum einfügt, sodass z. B.
     c'4

ohne \layout, \score, etc. eingegeben werden kann.

nofragment
Verhindert das Einfügen von Standardcode um das Fragment herum. Dies ist die Standardeinstellung, insofern ist diese Option im Normalfall unnötig.
indent=Einzug\Einheit
Setzt den Einzug des ersten Notensystems auf Einzug, gemessen in Vielfachen der Einheit. Als Einheit können die folgenden Zeichenfolgen angegeben werden: cm, mm, in oder pt. Diese Option hat nur Einfluss auf den Einzug von Notenzeilen und Text im Musikfragment, nicht jedoch auf den restlichen Text des Dokuments.
noindent
Setzt den Einzug des ersten Notensystems auf 0. Diese Option hat nur Einfluss auf den Einzug von Notenzeilen und Text im Musikfragment, nicht jedoch auf den restlichen Text des Dokuments. Dies ist die Standardeinstellung, insofern ist diese Option im Normalfall unnötig.
quote
Verringert die Zeilenlänge des Musikfragments um 2*0.4in und setzt das Fragment in einen Zitat-Block. Der Wert von ‚0.4in‘ kann durch die exampleindent Option angepasst werden.
exampleindent
Setzt den Betrag, um den das Fragment bei Benutzung der quote Option eingerückt wird.
relative
relative=n
Benutzt relative Oktavenbezeichnungen. Standardmäßig werden Noten relativ zum mittleren C angegeben. Das optionale ganzzahlige Argument gibt die Oktave der ersten Note an, wobei die Standardeinstellung von 1 das mittlere C bedeutet. Die relative Option macht nur Sinn in Verbindung mit der fragment Option, weshalb fragment automatisch durch die Angabe der relative Option impliziert wird. Eine explizite Angabe der (no)fragment Option hat keinen Effekt.

LilyPond benutzt zur Erzeugung seiner eigenen Dokumentation ebenfalls lilypond-book. Zu diesem Zweck stehen noch zahlreiche spezialisierte Optionen zur Verfügung:

verbatim
Der LilyPond-Code im LilyPond-Kommando wird zum einen benutzt, um das Musikfragment in eine Grafik mit schönem Notensatz zu konvertieren, andererseits aber auch wörtlich in das Dokument eingefügt. Dies geschieht in einem ‚verbatim‘-Block, gefolgt vom Text einer möglicherweise angegebenen intertext Option1 und der Grafik des tatsächlichen Notensatzes. Diese Option funktioniert nur fehlerhaft, wenn \lilypond{} im Fließtext benutzt wird.

Wird verbatim in Verbindung mit einem lilypondfile-Kommando benutzt, so ist es auch möglich, nur ein Teil der Datei wörtlich einfügen zu lassen: Wenn die eingebundene LilyPond-Datei ein Kommentar mit dem Inhalt ‘begin verbatim’ (ohne Anführungszeichen) enthält, wird nur der Dateiinhalt ab dieser Position eingefügt. Enthält die Datei mehrere solche Kommentare, wirkt nur das letzte. Analog wird nur der Dateiinhalt bis zu einem etwaigen Kommentar mit dem Inhalt ‘end verbatim’ eingefügt. Im folgenden Beispiel wird das gesamte Musik für die Erzeugung der Grafik im relativen Oktavenmodus interpretiert, der wörtlich in das Dokument kopierte LilyPond-Code zeigt den relative-Befehl jedoch nicht.

     \relative c' { % begin verbatim
       c4 e2 g4
       f2 e % end verbatim
     }

erzeugt ein Zitat der Form

       c4 e2 g4
       f2 e

addversion
(Nur innerhalb von Texinfo-Dateien.) Stellt \version @w{"@version{}"} an den Beginn des Fragments der Ausgabe mit verbatim.
texidoc
(Nur innerhalb von Texinfo-Dateien.) Wird lilypond mit der Kommandozeilenoption --header=texidoc für eine Datei foo.ly und enthält die Datei ein texidoc-Feld im \header-Block, so wird dessen Inhalt in die Datei foo.texidoc ausgegeben. Die texidoc Option veranlasst lilypond-book, den Inhalt dieser .texidoc Dateien innerhalb eines Dokumentationsblocks direkt vor dem Musikfragment in das aktuelle Dokument einzufügen.

Enthält also die Datei foo.ly etwa den LilyPond-Code

     \header {
       texidoc = "Dieses Beispiel zeigt eine einzelne Note."
     }
     { c'4 }

und das Texinfo-Dokument text.texinfo

     @lilypondfile[texidoc]{foo.ly}

so liefert der folgende Aufruf von lilypond-book das gewünschte Ergebnis:

     lilypond-book --process="lilypond --format=tex --tex \
                   --header=texidoc test.texinfo

Die meisten Test-Dateien (im input/ Verzeichnis von LilyPond) sind kleine .ly Dateien von genau dieser Form.

Auch die Übersetzung dieser zusätzlichen Kommentare ist möglich: Dazu muss das Texinfo-Dokument den Befehl @documentlanguage LANG und der \header Block in der Datei foo.ly die Übersetzung im Feld texidocLANG enthalten. Wird nun lilypond mit der Option --header=texidocLANG aufgerufen, so wird der Inhalt der Datei foo.texidocLANG anstelle von foo.texidoc eingefügt.

lilyquote
(Nur innerhalb von Texinfo-Dateien.) Diese Option wirkt wie die quote Option, außer dass nur das Musikfragment (und natürlich optional der gesamte LilyPond-Code bei Benutzung von verbatim) in den Zitatblock eingefügt wird. Dies ist nützlich, wenn Sie ein Musikfragment zitieren möchten, nicht aber dessen texidoc Dokumentationsblock.
doctitle
(Nur innerhalb von Texinfo-Dateien.) Diese Option wirkt ähnlich wie die texidoc Option: Wenn lilypond mit der Option --header=doctitle aufgerufen wird und die Eingabedatei foo.ly ein Feld doctitle im \header-Block enthält, wird dessen Wert in die Datei foo.doctitle geschrieben. Wird die doctitle Option für ein Musikfragment benutzt, so wird der Inhalt dieser Datei, der eine einzelne Textzeile sein sollte, im Texinfo-Dokument als @lydoctitle Text eingefügt. @lydoctitle muss allerdings in Ihrem Texinfo-Dokument als Makro selbst definiert werden. Die Übersetzung funktioniert völlig analog zu texidoc.
printfilename
Wenn eine LilyPond-Datei mittels \lilypondfile und dieser Option eingebunden wird, wird der Dateiname (ohne die Pfadangabe) unmittelbar vor dem Musikfragment ausgegeben. In HTML-Dateien ist er außerdem ein Link auf die LilyPond-Datei.
fontload
Diese Option inkludiert die Schriftarten in allen EPS-Dateien, die von diesem Fragment erzeugt werden. Dies ist nötig, wenn das Fragment Schriftarten benutzt, die LaTeX nicht selbst findet.

Fußnoten

[1] Die intertext Option ist noch nicht implementiert.


Diese Seite ist für LilyPond-2.11.58 (Entwicklungszweig).

Fehler bitte an http://post.gmane.org/post.php?group=gmane.comp.gnu.lilypond.bugs melden.

Ihre Vorschläge für die Dokumentation sind willkommen.

Andere Sprachen: English, español.