GNU LilyPond Programmbenutzung: 4.3 Music fragment options

## 4.3 Music fragment options

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.

`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

  Wenn Kommentare und Variablen im Zitat, aber nicht im Quelltext übersetzt werden sollen, kann die Umgebungsvariable `LYDOC_LOCALEDIR` auf einen Verzeichnispfad gesetzt werden. Das Verzeichnis sollte einen Baum an ‘`.mo`’-Nachrichtenkatalogen beinhalten mit `lilypond-doc` als Domain.

`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 --pdf --process="lilypond \
  >       -dbackend=eps --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`.

`nogettext`

  Nur für Texinfo-Ausgabe: Kommentare und Variablenbezeichnungen im zitierten Quelltext des Schnipsel werden nicht übersetzt.

`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.

Other languages: English, español.

#### Programmbenutzung