1 @c -*- coding: utf-8; mode: texinfo; documentlanguage: de -*-
4 Translation of GIT committish: 7b70644b95f383b4281e9ffa146d315d2ada11d3
6 When revising a translation, copy the HEAD committish of the
7 version that you are working on. See TRANSLATION for details.
12 @c Translators: Reinhold Kainhofer
13 @c Translation checkers: Till Paala
17 @chapter @command{lilypond-book}: Noten in den Text integrieren
18 @translationof LilyPond-book
20 Wenn Sie in ein Dokument Grafiken Ihres Musiksatzes einfügen möchten, so
21 können Sie genauso machen, wie Sie andere Grafiken einfügen würden: Die
22 Bilder werden getrennt vom Dokument im PostScript- oder PNG-Format erstellt
23 und können dann in @LaTeX{} oder HTML inkludiert werden.
25 @command{lilypond-book} automatisiert diesen Prozess: Dieses
26 Programm extrahiert Musik-Schnipsel aus Ihrem Dokument,
27 ruft @command{lilypond} auf und fügt die resultierenden Bilder
28 in Ihr Dokument ein. Die Länge der Zeilen und die Schriftgroße
29 werden dabei Ihrem Dokument angepasst.
31 @command{lilypond-book} ist ein eigenständiges Programm und wird
32 üblicherweise von der Kommandozeile aufgerufen. Nähere Informationen
33 hierzu finden sich in @ref{Benutzung auf der Kommandozeile}. Wenn Sie MacOS 10.3
34 oder 10.4 benutzen und Probleme mit @code{lilypond-book} haben, lesen
36 Einrichtung für MacOS X
37 @c @ref{Einrichtung für MacOS X}.
39 Dieses Vorgehen kann bei @LaTeX{}, HTML, Texinfo oder DocBook Dokumenten
48 @cindex Dokument, Musik einfügen in
49 @cindex HTML, Musik in
50 @cindex Texinfo, Musik in
51 @cindex DocBook, Musik in
52 @cindex @LaTeX{}, Musik in
56 * Ein musikwissenschaftlicher Text als Beispiel::
57 * Noten in Text integrieren::
58 * Die Musikfragment-Optionen::
59 * lilypond-book aufrufen::
61 * Alternative Methoden, Text und Musik zu kombinieren::
64 @node Ein musikwissenschaftlicher Text als Beispiel
65 @section Ein musikwissenschaftlicher Text als Beispiel
66 @translationof An example of a musicological document
69 @cindex Musikwissenschaft
71 Zahlreiche Texte enthalten Musikbeispiele: musikwissenschaftliche
72 Abhandlungen, Liederbücher oder Handbücher wie dieses. Solche
73 Texte können händisch erzeugt werden, indem einfach die Musikbeispiele
74 als Grafik (PostScript, PNG, GIF, etc.) im Textverarbeitungsprogramm
75 eingefügt werden. Für HTML, @LaTeX{}, Texinfo und DocBook Dokumente
76 existiert jedoch ein Weg, dies automatisiert durchzuführen.
78 Das Programm @code{lilypond-book} extrahiert die Musikfragmente aus
79 dem Dokument, formatiert sie automatisiert in eine Grafik und fügt die
80 resultierenden Notenbeispiele dann wieder in das Dokument ein. Dies soll
81 hier an einem einfachen @LaTeX{}-Beispiel verdeutlicht werden. Das Beispiel
82 selbst enthält schon Erklärungen, sodass wir es hier nicht weiter diskutieren
89 \documentclass[a4paper]{article}
93 Dokumente für \verb+lilypond-book+ können Musik und Text nach Belieben
94 kombinieren. Zum Beispiel:
98 c2 g'2 \times 2/3 { f8 e d } c'2 g4
102 Optionen für \verb+lilypond+ werden dabei in eckige Klammern gesetzt.
104 \begin[fragment,quote,staffsize=26,verbatim]{lilypond}
108 Größere Beispiele können auch in einer eigenständigen Datei gespeichert
109 und dann mit \verb+\lilypondfile+ eingebunden werden.
111 \lilypondfile[quote,noindent]{screech-boink.ly}
113 (Falls nötig kann screech-boink.ly durch eine beliebige andere .ly
114 Datei im selben Verzeichnis wie diese Datei ersetzt werden.)
120 @subheading Verarbeitung
122 Speichern Sie den obigen @LaTeX{} Quellcode in eine Datei @file{lilybook.lytex}
123 und führen Sie dann in der Kommandozeile folgende Befehle aus:
125 @c keep space after @version{} so TeX doesn't choke
127 lilypond-book --output=out --pdf lilybook.lytex
128 @emph{lilypond-book (GNU LilyPond) @version{} }
129 @emph{Reading lilybook.lytex...}
130 @emph{..(viele Ausgabezeilen entfernt)..}
131 @emph{Compiling lilybook.tex...}
134 @emph{..(viele Ausgabezeilen entfernt)..}
136 @emph{(Ersetzen Sie @command{xpdf} durch Ihren PDF-Betrachter)}
139 Die Ausführung von @command{lilypond-book} und @command{latex} erzeugt
140 zahlreiche temporäre Dateien, die das Arbeitsverzeichnis unnötig
141 vollstopfen würden. Daher empfiehlt sich die Benutzung der @code{--output=@var{dir}}
142 Option, wodurch die Dateien im Unterverzeichnis @file{dir} erzeugt werden.
144 Das Endresultat des obigen @LaTeX{} Beispiels ist im nächsten Abschnitt
145 zu sehen.@footnote{Da dieses Handbuch mit Texinfo erzeugt wurde,
146 kann sich das Aussehen des Beispiels leicht von dem mit @LaTeX{}
147 erzeugten unterscheiden.}
153 Dokumente für @command{lilypond-book} können Musik und Text nach Belieben
154 kombinieren. Zum Beispiel:
158 c2 g'2 \times 2/3 { f8 e d } c'2 g4
162 Optionen für @command{lilypond} werden dabei in eckige Klammern gesetzt.
164 @lilypond[fragment,quote,staffsize=26,verbatim]
168 Größere Beispiele können auch in einer eigenständigen Datei gespeichert
169 und dann mit @code{\lilypondfile} eingebunden werden.
171 @lilypondfile[quote,noindent]{screech-boink.ly}
178 @node Noten in Text integrieren
179 @section Noten in Text integrieren
180 @translationof Integrating music and text
182 In diesem Abschnitt soll die Integration von LilyPond mit den
183 verschiedenen Dateiformaten detailliert erläutert werden.
198 @LaTeX{} ist der de-facto Standard zur Publikation von wissenschaftlichen Texten
199 in Naturwissenschaft und Technik. Es basiert auf dem Schriftsetzer @TeX{},
200 der die bestmögliche Typographie erzeugt.
202 Siehe die @uref{http://@/www@/.ctan@/.org/@/tex@/-archive/@/info/@/lshort/@/german/,
203 @emph{@LaTeX{}2e-Kurzbeschreibung}} für eine Einführung in die
204 Benutzung von @LaTeX{}.
206 Musikbeispiele können eingegeben werden als
209 \begin[Optionen,kommen,]@{lilypond@}
210 IHR LILYPOND QUELLCODE
218 \lilypondfile[Optionen,kommen,hier]@{@var{Dateiname}@}
225 \lilypond@{ IHR LILYPOND QUELLCODE @}
228 Zusätzlich kann mit @code{\lilypondversion} die benutzte Versionsnummer
229 von LilyPond angezeigt werden. Der Aufruf von @command{lilypond-book}
230 liefert eine Datei, die dann mit @LaTeX{} weiter verarbeitet werden kann.
232 Dies soll hier an einigen Beispielen gezeigt werden. Die @code{lilypond}-Umgebung
235 \begin[quote,fragment,staffsize=26]@{lilypond@}
243 @lilypond[quote,fragment,staffsize=26]
250 \lilypond[quote,fragment,staffsize=11]@{<c' e' g'>@}
256 @lilypond[quote,fragment,staffsize=11]{<c' e' g'>}
259 Innerhalb des @code{\lilypond@{@}} Befehls dürfen keine geschwungenen
260 Klammern @code{@{} oder @code{@}} vorkommen, weshalb dieser Befehl
261 nur mit der @code{fragment} Option Sinn macht.
263 Die Standardzeilenlänge wird bestimmt, indem die Angaben in der Dokumentpräambel,
264 also dem Teil der @LaTeX{} Datei vor dem @code{\begin@{document@}},
265 analysiert werden. Der @command{lilypond-book} Befehl sendet diese
266 Angaben an @LaTeX{}, um herauszufinden, wie breit der Text tatsächlich
267 ist. Die Breite der Notenzeilen wird dann an diese Textbreite angepasst.
268 Ein derartig heuristischer Algorithmus kann natürlich auch versagen,
269 wobei man in diesem Fall die Breite auch explizit durch die
270 @code{line-width} Option des @code{\lilypond@{@}} oder @code{\begin@{lilypond@}}
271 Befehls angeben kann.
273 @cindex titling and lilypond-book
274 @cindex \header in @LaTeX{} documents
276 Jedes Musikbeispiele ruft die folgenden Makros auf, wenn sie vom Benutzer
280 @item @code{\preLilyPondExample} -- wird vor der Musik aufgerufen,
282 @item @code{\postLilyPondExample} -- wird nach der Musik aufgerufen,
284 @item @code{\betweenLilyPondSystem[1]} -- wird zwischen den einzelnen
285 Systemen aufgerufen, wenn @code{lilypond-book} das Beispiel in verschiedene
286 PostScript Dateien getrennt hat. Dieser @LaTeX{}-Befehl muss so definiert
287 werden, dass er genau ein Argument erhält, nämlich die Zahl der bereits
288 in @LaTeX{} eingefügten Dateien dieses Beispiels. Als Standard wird einfach
289 ein @code{\linebreak} eingefügt.
295 @cindex Latex, Feta Schriftart
298 Um Zeichen wie Auflösungszeichen, Kreuze, Fermaten etc. aus der Feta-Schriftart
299 von LilyPond in @LaTeX{} einzufügen, muss @code{\input@{titledefs@}} benutzt werden,
300 wodurch dann der Befehl @code{\fetachar} zur Verfügung steht.
303 \documentclass[a4paper]@{article@}
314 Die Namen der Symbole sind in der Datei @file{feta20.tex} definiert. Sie finden
315 den Pfad zu dieser Datei mit dem Befehl
325 Manchmal ist es nötig, Musikelemente wie Halte- oder Bindebögen so darzustellen,
326 als ob sie am Ende des Musikausschnitten noch weitergehen würden. Eine solche
327 Ausgabe kann erreicht werden, indem ein Zeilenumbruch in die Notenzeile
328 eingefügt wird und die Ausgabe der folgenden Notenzeile unterdrückt wird.
330 In @LaTeX{} wird dazu der Befehl @code{\betweenLilyPondSystem} einfach derartig
331 programmiert, dass die Ausgabe der einzelnen Notensysteme abgebrochen wird,
332 sobald die gewünschte Anzahl an Systemen erreicht ist. Da
333 @code{\betweenLilyPondSystem} zum ersten Mal nach dem ersten System aufgerufen
334 wird, ist die Ausgabe nur eines Systems trivial.
337 \def\betweenLilyPondSystem#1@{\endinput@}
339 \begin[fragment]@{lilypond@}
340 c'1\( e'( c'~ \break c' d) e f\)
344 Um eine größere Zahl an System nötig, dann muss dementsprechend eine
345 @TeX{}-Bedingung vor dem @code{\endinput} benutzt werden:
348 \def\betweenLilyPondSystem#1@{
349 \ifnum##1<2\else\endinput\fi
353 Dieses Beispiel bricht nach genau zwei ausgegebenen Notenzeilen ab.
354 Für eine andere Anzahl braucht nur @q{2} durch die entsprechende
355 Anzahl ersetzt werden.
357 Die Definition von @code{\betweenLilyPondSystem} bleibt gültig,
358 bis @TeX{} die aktuelle Umgebung in @LaTeX{} verlässt oder der
359 Befehl durch eine neue Definition überschrieben wird.
360 Dies kann etwa folgendermaßen in der @LaTeX{}-Datei geschehen:
363 \let\betweenLilyPondSystem\undefined
366 Obige Definition von @code{\betweenLilyPondSystem} kann durch die
367 Definition eines @TeX{}-Makros auch verallgemeinert werden,
370 \def\onlyFirstNSystems#1@{
371 \def\betweenLilyPondSystem##1@{\ifnum##1<#1\else\endinput\fi@}
376 wobei diesem Makro @code{\onlyFirstNSystems} einfach die Anzahl der
377 gewünschten Systeme übergeben wird:
380 \onlyFirstNSystems@{3@}
381 \begin@{lilypond@}...\end@{lilypond@}
382 \onlyFirstNSystems@{1@}
383 \begin@{lilypond@}...\end@{lilypond@}
387 @command{lilypond-book} stellt auch zahlreiche Kommandozeilen-Optionen zur
388 Verfügung. Für eine Liste dieser Optionen und andere hilfreiche Details zur
389 Verarbeitung von @LaTeX{}-Dokumenten, siehe @ref{lilypond-book aufrufen}.
396 @translationof Texinfo
398 Texinfo ist das Standard-Dokumentationsformat des GNU Projekts. Ein Beispiel
399 für ein Dokument im Texinfo Format ist dieses Handbuch, wobei die HTML-, PDF- und
400 Info-Versionen alle aus demselben Texinfo Dokument erzeugt werden.
402 In der Eingabedatei wir Musik eingegeben als
405 @@lilypond[Optionen,kommen,hier]
406 IHR LILYPOND QUELLCODE
414 @@lilypond[Optionen,kommen,hier]@{ IHR LILYPOND QUELLCODE @}
421 @@lilypondfile[Optionen,kommen,hier]@{@var{Dateiname}@}
424 Zusätzlich kann mit @code{@@lilypondversion} die aktuelle Versionsnummer
425 von LilyPond angezeigt werden.
426 Wenn @command{lilypond-book} eine derartige Datei verarbeitet,
427 wird eine Texinfo-Datei mit der Erweiterung @file{.texi} erzeugt,
428 die @code{@@image} Befehle für die Ausgabe nach HTML, Info und PDF
429 enthält. @command{lilypond-book} erzeugt die entsprechenden Grafiken
430 der Musikbeispiele im EPS- und PDF-Format für die Ausgabe nach PDF
431 und im PNG-Format für die Ausgabe nach HTML und Info.
433 Hier sollen zwei einfache Beispiele gezeigt werden. Eine @code{lilypond} Umgebung
451 @@lilypond[fragment,staffsize=11]@{<c' e' g'>@}
457 @lilypond[fragment,staffsize=11]{<c' e' g'>}
459 Im Gegensatz zu @LaTeX{} erzeugt @code{@@lilypond@{...@}} allerdings keine Grafik
460 im Fließtext, sondern setzt sie immer in einen eigenen Absatz.
467 Musik wird eingegeben als
470 <lilypond fragment relative=2>
471 \key c \minor c4 es g2
476 @command{lilypond-book} erzeugt dann daraus eine HTML-Datei mit den entsprechenden
477 @code{<image>} Tags für die Musikbeispiele in jeweils einem eigenen Absatz.
479 @lilypond[fragment,relative=2]
480 \key c \minor c4 es g2
483 Für Grafiken im Fließtext kann @code{<lilypond ... />} benutzt werden, wobei
484 die Optionen durch einen Doppelpunkt von der Musik getrennt angegeben werden.
487 Musik <lilypond relative=2: a b c/> in derselben Zeile.
490 Um Dateien mit Musik einzubinden, kann folgendermaßen vorgegangen werden:
493 <lilypondfile @var{Option1} @var{Option2} ...>@var{Dateiname}</lilypondfile>
496 Zusätzlich gibt @code{<lilypondversion/>} die aktuelle Versionsnummer
502 @translationof DocBook
505 Bei der Einbindung von Musik im LilyPond-Format in DocBook soll die
506 Konformität unseres DocBook Dokuments erhalten bleiben und damit
507 die Bearbeiten mit DocBook-Editoren sowie die Validierung weiter
508 möglich bleiben. Aus diesem Grund werden in DocBook keine eigenen Tags
509 wie in HTML benutzt, sondern die von den vorhandenen DocBook-Elementen
510 vorgegebenen Konventionen entsprechend benützt.
512 @subheading Definitionen
514 Für die Einbindung von LilyPond Code werden in allen Fällen die
515 @code{mediaobject} und @code{inlinemediaobject} Elemente benutzt,
516 die unsere Beispiele in einem eigenen Absatz oder im Fließtext
517 einfügen. Die Optionen zur Formatierung mit LilyPond werden dabei
518 in der @code{role} Eigenschaft des innersten Elements angegeben,
519 wie im nächsten Abschnitt gezeigt wird. Die DocBook Datei, die
520 dann von @command{lilypond-book} verarbeitet wird, sollte der Klarheit
521 halber die Dateierweiterung @file{.lyxml} (jedenfalls nicht
522 @file{.xml}) besitzen.
524 @subheading Eine LilyPond-Datei einfügen
526 Dies ist der einfachste Fall: Die LilyPond-Datei besitzt die Erweiterung
527 @file{.ly} und wird einfach als @code{imageobject} eingebettet:
532 <imagedata fileref="music1.ly" role="printfilename" />
537 Für das äußerste Element kann je nach Bedarf @code{mediaobject} oder
538 @code{inlinemediaobject} benutzt werden.
540 @subheading LilyPond-Code einfügen
542 Die Einbindung von LilyPond-Code direkt in der DocBook-Datei ist
543 durch die Benutzung von @code{programlisting} möglich,
544 wobei die Sprache auf @code{lilypond} gesetzt wird:
549 <programlisting language="lilypond" role="fragment verbatim staffsize=16 ragged-right relative=2">
550 \context Staff \with @{
551 \remove Time_signature_engraver
552 \remove Clef_engraver@}
559 Das äußerste Element ist also @code{mediaobject} oder
560 @code{inlinemediaobject}, welches ein @code{textobject} mit dem
561 @code{programlisting} enthält.
563 @subheading Ein DocBook-Dokument übersetzen
565 Der Aufruf von @command{lilypond-book} mit der @file{.lyxml}-Datei
566 erzeugt ein gültiges DocBook-Dokument mit der Erweiterung @file{.xml},
567 welches normal weiterverarbeitet werden kann. Bei Benutzung von
568 @uref{http://@/dblatex@/.sourceforge@/.net@/,dblatex} wird daraus
569 automatisch eine PDF-Datei erzeugt. Für die Erzeugung von HTML (HTML
570 Hilfe, JavaHelp, etc.) können die offiziellen DocBook XSL-Stylesheets
571 benutzt werden. Eventuell müssen dafür allerdings kleinere Anpassungen
575 @node Die Musikfragment-Optionen
576 @section Die Musikfragment-Optionen
577 @translationof Music fragment options
579 Im Folgenden meint @q{LilyPond-Kommando} ein beliebiges in den vorgehenden
580 Abschnitten beschriebenes Kommando, welches ein LilyPond-Fragment in eine Datei
581 einfügt und von @command{lilypond-book} verarbeitet wird. Der Einfachheit
582 halber werden hier alle LilyPond-Kommandos in der Syntax von @LaTeX{}
585 Zu beachten ist, dass die Optionen eines LilyPond-Kommandos von links
586 nach rechts verarbeitet werden. Wenn eine Option also mehrfach angegeben
587 wird, wird nur die letzte benutzt.
589 Die folgenden Optionen können für LilyPond-Kommandos benutzt werden:
592 @item staffsize=@var{ht}
593 Setzt die Höhe einer Notenzeile auf @var{ht}, angegeben in Punkten.
596 Erzeugt Notenzeilen im Flattersatz mit natürlichem Abstand der Noten. In
597 anderen Worten: @code{ragged-right = ##t} wird in das Musikfragment
598 eingefügt. Dies ist die Standardeinstellung für das @code{\lilypond@{@}}
599 Kommando, wenn die Option @code{line-width} nicht angegeben wird.
600 Ebenso ist dies die Standardeinstellung für die @code{lilypond}-Umgebung,
601 wenn die Option @code{fragment}, aber keine Zeilenlänge
602 explizit angegeben ist.
605 Streckt Musikfragmente mit nur einer Notenzeile auf die volle Breite,
606 es wird also @code{ragged-right = ##f} in das Musikfragment eingefügt.
609 @itemx line-width=@var{Breite}\@var{Einheit}
610 Setzt die Breite der Notenzeilen auf @var{Breite}, gemessen in Vielfachen
611 der @var{Einheit}. Als Einheit können die folgenden Zeichenfolgen angegeben
612 werden: @code{cm}, @code{mm}, @code{in} oder @code{pt}. Diese Option hat
613 nur Einfluss auf die Breite von Notenzeilen und Text im Musikfragment, nicht
614 jedoch auf den restlichen Text des Dokuments.
616 Wird diese Option ohne einen Wert angegeben, wird die Zeilenbreite auf
617 einen Standardwert gesetzt, der durch einen heuristischen Algorithmus
620 Wenn die @code{line-width} Option nicht angegeben wird, versucht
621 @command{lilypond-book} einen geeigneten Standardwert für alle
622 @code{lilypond}-Umgebungen zu finden, die die @code{ragged-right} Option
626 Verhindert die Ausgabe der Taktangabe am Anfang des Fragments und schaltet
627 Taktstriche und alle Taktangaben im Fragment ab.
630 Bewirkt, dass @command{lilypond-book} Standardcode um das Fragment herum einfügt, sodass z. B.
637 ohne @code{\layout}, @code{\score}, etc. eingegeben werden kann.
640 Verhindert das Einfügen von Standardcode um das Fragment herum. Dies ist
641 die Standardeinstellung, insofern ist diese Option im Normalfall unnötig.
643 @item indent=@var{Einzug}\@var{Einheit}
644 Setzt den Einzug des ersten Notensystems auf @var{Einzug}, gemessen in
645 Vielfachen der @var{Einheit}. Als Einheit können die folgenden Zeichenfolgen
646 angegeben werden: @code{cm}, @code{mm}, @code{in} oder @code{pt}. Diese
647 Option hat nur Einfluss auf den Einzug von Notenzeilen und Text im
648 Musikfragment, nicht jedoch auf den restlichen Text des Dokuments.
651 Setzt den Einzug des ersten Notensystems auf 0. Diese
652 Option hat nur Einfluss auf den Einzug von Notenzeilen und Text im
653 Musikfragment, nicht jedoch auf den restlichen Text des Dokuments. Dies
654 ist die Standardeinstellung, insofern ist diese Option im Normalfall
658 Verringert die Zeilenlänge des Musikfragments um @math{2*0.4}@dmn{in}
659 und setzt das Fragment in einen Zitat-Block. Der Wert von @q{0.4@dmn{in}}
660 kann durch die @code{exampleindent} Option angepasst werden.
663 Setzt den Betrag, um den das Fragment bei Benutzung der @code{quote}
664 Option eingerückt wird.
667 @itemx relative=@var{n}
668 Benutzt relative Oktavenbezeichnungen. Standardmäßig werden Noten relativ
669 zum mittleren C angegeben. Das optionale ganzzahlige Argument
670 gibt die Oktave der ersten Note an, wobei die Standardeinstellung von
671 @code{1} das mittlere C bedeutet. Die @code{relative} Option macht nur
672 Sinn in Verbindung mit der @code{fragment} Option, weshalb @code{fragment}
673 automatisch durch die Angabe der @code{relative} Option impliziert wird.
674 Eine explizite Angabe der @code{(no)fragment} Option hat keinen Effekt.
677 LilyPond benutzt zur Erzeugung seiner eigenen Dokumentation ebenfalls
678 @command{lilypond-book}. Zu diesem Zweck stehen noch zahlreiche
679 spezialisierte Optionen zur Verfügung:
683 Der LilyPond-Code im LilyPond-Kommando wird zum einen benutzt, um das
684 Musikfragment in eine Grafik mit schönem Notensatz zu konvertieren,
685 andererseits aber auch wörtlich in das Dokument eingefügt. Dies
686 geschieht in einem @q{verbatim}-Block, gefolgt vom Text einer
687 möglicherweise angegebenen @code{intertext} Option@footnote{Die
688 @code{intertext} Option ist noch nicht implementiert.} und der
689 Grafik des tatsächlichen Notensatzes. Diese Option funktioniert nur
690 fehlerhaft, wenn @code{\lilypond@{@}} im Fließtext benutzt wird.
692 Wird @code{verbatim} in Verbindung mit einem @code{lilypondfile}-Kommando
693 benutzt, so ist es auch möglich, nur ein Teil der Datei wörtlich einfügen
694 zu lassen: Wenn die eingebundene LilyPond-Datei ein Kommentar mit dem Inhalt
695 @samp{begin verbatim} (ohne Anführungszeichen) enthält, wird nur der
696 Dateiinhalt ab dieser Position eingefügt. Enthält die Datei mehrere
697 solche Kommentare, wirkt nur das letzte. Analog wird nur der Dateiinhalt
698 bis zu einem etwaigen Kommentar mit dem Inhalt @samp{end verbatim}
699 eingefügt. Im folgenden Beispiel wird das gesamte Musik für die
700 Erzeugung der Grafik im relativen Oktavenmodus interpretiert, der
701 wörtlich in das Dokument kopierte LilyPond-Code zeigt den @code{relative}-Befehl jedoch nicht.
704 \relative c' @{ % begin verbatim
711 erzeugt ein Zitat der Form
719 Wenn Kommentare und Variablen im Zitat, aber nicht im Quelltext
720 übersetzt werden sollen, kann die Umgebungsvariable @code{LYDOC_LOCALEDIR}
721 auf einen Verzeichnispfad gesetzt werden. Das Verzeichnis sollte
722 einen Baum an @file{.mo}-Nachrichtenkatalogen beinhalten mit
723 @code{lilypond-doc} als Domain.
726 (Nur innerhalb von Texinfo-Dateien.) Stellt @code{\version
727 @@w@{"@@version@{@}"@}} an den Beginn des Fragments der Ausgabe mit
731 (Nur innerhalb von Texinfo-Dateien.) Wird @command{lilypond} mit der
732 Kommandozeilenoption @option{--header=@/texidoc} für eine Datei
733 @file{foo@/.ly} und enthält die Datei ein @code{texidoc}-Feld im
734 @code{\header}-Block, so wird dessen Inhalt in die Datei
735 @file{foo@/.texidoc} ausgegeben. Die @code{texidoc} Option veranlasst
736 @code{lilypond-book}, den Inhalt dieser @file{.texidoc} Dateien innerhalb
737 eines Dokumentationsblocks direkt vor dem Musikfragment in das aktuelle
740 Enthält also die Datei @file{foo@/.ly} etwa den LilyPond-Code
744 texidoc = "Dieses Beispiel zeigt eine einzelne Note."
750 und das Texinfo-Dokument @file{text.texinfo}
753 @@lilypondfile[texidoc]@{foo.ly@}
757 so liefert der folgende Aufruf von @code{lilypond-book} das gewünschte
761 lilypond-book --pdf --process="lilypond \
762 -dbackend=eps --header=texidoc" test.texinfo
765 Die meisten Test-Dateien (im @file{input/} Verzeichnis von LilyPond)
766 sind kleine @file{.ly} Dateien von genau dieser Form.
768 Auch die Übersetzung dieser zusätzlichen Kommentare ist möglich:
769 Dazu muss das Texinfo-Dokument den Befehl @code{@@documentlanguage @var{LANG}}
770 und der @code{\header} Block in der Datei @file{foo@/.ly}
771 die Übersetzung im Feld @code{texidoc@var{LANG}} enthalten. Wird nun
772 @command{lilypond} mit der Option @option{--header=@/texidoc@var{LANG}}
773 aufgerufen, so wird der Inhalt der Datei @file{foo@/.texidoc@var{LANG}} anstelle von @file{foo@/.texidoc} eingefügt.
776 (Nur innerhalb von Texinfo-Dateien.) Diese Option wirkt wie die @code{quote} Option, außer dass nur das Musikfragment (und natürlich optional der
777 gesamte LilyPond-Code bei Benutzung von @code{verbatim}) in den Zitatblock eingefügt wird. Dies ist nützlich, wenn Sie ein Musikfragment zitieren möchten, nicht aber dessen @code{texidoc} Dokumentationsblock.
780 (Nur innerhalb von Texinfo-Dateien.) Diese Option wirkt ähnlich wie die
781 @code{texidoc} Option: Wenn @command{lilypond} mit der Option
782 @option{--header=@/doctitle} aufgerufen wird und die Eingabedatei
783 @file{foo@/.ly} ein Feld @code{doctitle} im @code{\header}-Block enthält,
784 wird dessen Wert in die Datei @file{foo@/.doctitle} geschrieben. Wird die
785 @code{doctitle} Option für ein Musikfragment benutzt, so wird der Inhalt
786 dieser Datei, der eine einzelne Textzeile sein sollte, im Texinfo-Dokument
787 als @code{@@lydoctitle @var{Text}} eingefügt. @code{@@lydoctitle} muss
788 allerdings in Ihrem Texinfo-Dokument als Makro selbst definiert werden.
789 Die Übersetzung funktioniert völlig analog zu @code{texidoc}.
792 Nur für Texinfo-Ausgabe: Kommentare und Variablenbezeichnungen im
793 zitierten Quelltext des Schnipsel werden nicht übersetzt.
796 Wenn eine LilyPond-Datei mittels @code{\lilypondfile} und dieser Option
797 eingebunden wird, wird der Dateiname (ohne die Pfadangabe) unmittelbar vor
798 dem Musikfragment ausgegeben. In HTML-Dateien ist er außerdem ein Link
799 auf die LilyPond-Datei. Nur der eigentliche Name der Datei wird
800 ausgegeben, der Pfad wird also nicht mit angezeigt.
805 @node lilypond-book aufrufen
806 @section @command{lilypond-book} aufrufen
807 @translationof Invoking lilypond-book
809 @command{lilypond-book} erzeugt abhängig vom Ausgabeformat eine Datei mit
810 einer der folgenden Dateierweiterungen: @file{.tex}, @file{.texi},
811 @file{.html} oder @file{.xml}. Alle @file{.tex}, @file{.texi} und
812 @file{.xml} Dateien müssen noch mit den entsprechenden Programmen (@LaTeX{},
813 DocBook, etc.) weiter verarbeitet werden, um druckfähige Dateien zu erhalten.
816 @subheading Formatabhängige Anweisungen
818 @subsubheading @LaTeX{}
820 Es existieren zwei Methoden, Ihr @LaTeX{}-Dokument weiter zu verarbeiten,
821 um zu einer druck- oder publikationsfähigen Datei zu gelangen:
822 Zum einen die direkte Erzeugung einer PDF-Datei mit PDF@LaTeX{}, zum
823 anderen die Erzeugung einer DVI daraus einer PostScript-Datei mittels
824 @LaTeX{} und einem DVI-nach-PostScript Konverters wie @command{dvips}.
825 Die erste Methode ist einfacher und daher empfehlenswert.@footnote{Manchmal
826 kann eine Datei entweder von PDF@LaTeX{} oder von @LaTeX{} nicht korrekt
827 verarbeitet werden, weshalb hier beide Methoden beschrieben werden.} Welche
828 Methode auch immer benutzt wird, die Konvertierung zwischen PostScript und
829 PDF kann leicht mit Hilfsprogrammen wie @command{ps2pdf} und @command{pdf2ps}
830 (aus dem Ghostscript Paket) erfolgen.
832 Um eine PDF-Datei mittels PDF@LaTeX{} zu erzeugen, kann folgendermaßen
836 lilypond-book --pdf Ihre_Datei.pdftex
837 pdflatex Ihre_Datei.tex
840 @cindex Konturschriften
841 @cindex Type1 Schriften
843 @cindex Aufruf von dvips
844 Um eine PDF-Datei mittels @LaTeX{}/@command{dvips}/@command{ps2pdf} zu
845 erhalten, sind folgende Befehle nötig:
848 lilypond-book Ihre_Datei.lytex
850 dvips -Ppdf Ihre_Datei.dvi
855 Die @file{.dvi}-Datei, die beim Aufruf von @command{latex} erzeugt wird,
856 scheint keine Notenköpfe zu enthalten, was in Ordnung ist. Wenn Sie die
857 Datei wie beschrieben weiter verarbeiten, erscheinen die Notenköpfe korrekt
858 in den @file{.ps} und @file{.pdf} Dateien.
860 Der Aufruf von @command{dvips} kann einige Warnungen über fehlende
861 Schriftarten ausgeben. Auch dies ist in Ordnung und kann ignoriert werden.
863 Wenn Sie in der @LaTeX{}-Datei das Papierformat auf Querformat eingestellt
864 haben, vergessen Sie nicht auf die @code{-t landscape} Option beim
865 Aufruf von @command{dvips}.
868 @subsubheading Texinfo
870 Um ein von @command{lilypond-book} erzeugtes Texinfo-Dokument zu
871 verarbeiten, gehen Sie wie für alle anderen Texinfo-Dokumente vor:
872 Rufen Sie -- abhängig vom gewünschten Ausgabeformat -- eines der Programme
873 @command{texi2pdf}, @command{texi2dvi}, @command{makeinfo} oder
874 @command{texi2html} auf.
877 @xref{Format with texi2dvi, , , texinfo, GNU Texinfo}, und @ref{Creating an Info File, , , texinfo, GNU Texinfo}.
880 Die Dokumentation von Texinfo liefert dazu nähere Informationen.
884 @subheading Optionen auf der Kommandozeile
886 @command{lilypond-book} unterstützt die folgenden Kommandozeilenoptionen:
889 @item -f @var{Format}
890 @itemx --format=@var{Format}
891 Gibt das Format des Eingabedokuments an: @code{html}, @code{latex},
892 @code{texi} (Standardeinstellung), @code{texi-html} oder @code{docbook}.
893 Ist diese Option nicht angegeben, versucht @command{lilypond-book} das
894 Format anhand des Dateinamens zu bestimmen. Im Moment bedeutet @code{texi}
895 praktisch dasselbe wie @code{texi-html}.
897 @c This complicated detail is not implemented, comment it out -jm
899 The @code{texi} document type produces a Texinfo file with music
900 fragments in the printed output only. For getting images in the HTML
901 version, the format @code{texi-html} must be used instead.
904 @item -F @var{Filter}
905 @itemx --filter=@var{Filter}
906 Leitet die Musikfragmente durch das Programm @var{filter} anstatt sie
907 mit Lilypond zu einer Grafik zu verarbeiten. @option{--filter} und
908 @option{--process} kann nicht gleichzeigt benutzt werden. Beispielaufruf:
911 lilypond-book --filter='convert-ly --from=2.0.0 -' Mein-Buch.tely
916 Gibt eine kurze Hilfemeldung aus.
919 @itemx --include=@var{Pfad}
920 Fügt @var{Pfad} zu den Include-Pfaden hinzu. @command{lilypond-book} sucht
921 auch in allen Include-Pfaden nach bereits erstellten Grafiken für die
922 Musikfragmente. Wird das aktuelle Fragment gefunden und hat sich seit der
923 letzten Erstellung nicht geändert, wird es nicht erneut erzeugt. Bei manchen
924 der Programme zur Weiterverarbeitung wie etwa @command{makeinfo} oder
925 @command{latex} muss dieselbe @code{-I @var{Pfad}} Option angegeben werden,
926 damit das entsprechende Programm die Grafiken ebenso findet.
928 @item -o @var{Verzeichnis}
929 @itemx --output=@var{Verzeichnis}
930 Erzeugt die Ausgabedateien in @var{Verzeichnis}. Der Aufruf von
931 @command{lilypond-book} erzeugt zahlreiche kleine Dateien, die von
932 LilyPond, @command{latex}, @command{makeinfo} etc. dann weiter benützt
933 werden. Um zu vermeiden, dass das Quellenverzeichnis durch diese
934 Dateien unübersichtlich wird, kann die @option{--output} Option benutzt
935 werden. Vor dem Aufruf von @command{latex} oder @command{makeinfo}
936 sollten Sie in dieses Verzeichnis wechseln.
939 lilypond-book --output=out IhreDatei.lytex
944 @itemx --skip-lily-check
945 Nicht mit einer Fehlermeldung abbrechen, wenn keine Ausgabe von LilyPond
946 gefunden wird. Dies wird benutzt für Dokumentation ohne Grafiken.
948 @itemx --skip-png-check
949 Nicht mit einer Fehlermeldung abbrechen, wenn für die EPS-Dateien keine
950 PNG-Grafiken gefunden werden. Dies wird benutzt für Dokumentation ohne
953 @itemx --lily-output-dir=@var{Verzeichnis}
954 Schreibt @file{lily-XXX} Dateien nach @var{Verzeichnis} und erzeugt
955 im mit @code{--output} angegebenen Verzeichnis Verknüpfungen darauf.
956 Diese Option ist nützlich, um Zeit zu sparen, wenn Dokumente in
957 verschiedenen Verzeichnissen viele identische Musikfragmente
960 @itemx --info-images-dir=@var{Verzeichnis}
961 Formatiert die Texinfo-Ausgabe dergestalt, dass Info in @var{Verzeichnis}
962 nach den Grafiken zu den Musikfragmenten sucht.
964 @itemx --latex-program=@var{Programm}
965 Führt @command{Programm} anstelle von @command{latex} aus. Dies ist
966 nützlichen, wenn das Dokument mit einer anderen @LaTeX{}-Variante
967 wie etwa @command{xelatex} verarbeitet werden soll.
969 @itemx --left-padding=@var{Einrückung}
970 Fügt @var{Einrückung} als zusätzlichen Einzug in die EPS-Box ein.
971 @var{Einrückung} wird in Millimetern angegeben, die Standardeinstellung
972 is 3.0 Millimeter. Diese Option kann benutzt werden, wenn die Notenzeilen
973 über den Rand des Dokuments hinausstehen.
975 Die Breite eines eng ausgeschnittenen Notensystems kann variieren
976 aufgrund von Notationselementen, die über den linken Rand hinausstehen,
977 wie etwa Taktzahlen und Bezeichnungen der Instrumente. Diese Option
978 verkürzt die Notenzeile und verschiebt sie um denselben Betrag nach
982 @item -P @var{Kommando}
983 @itemx --process=@var{Kommando}
984 Verarbeitet LilyPond-Fragmente mit @var{Kommando} anstelle des
985 Standardbefehls @code{lilypond}. @code{--filter} und @code{--process}
986 können nicht gleichzeitig angegeben werden.
989 Erzeugt PDF-Dateien mit PDF@LaTeX{}.
993 Gibt ausführliche informative Meldungen aus.
997 Gibt die Versionsnummer aus.
1002 Der Texinfo-Befehl @code{@@pagesizes} wird ignoriert. Ebenso werden
1003 @LaTeX{}-Befehle ignoriert, die den Seitenrand oder die Zeilenlänge
1004 nach der Dokumentpräambel verändern.
1006 Nur der erste @code{\score}-Block eines LilyPond-Fragments wird verarbeitet.
1010 @section Dateiendungen
1011 @translationof Filename extensions
1013 Für die Eingabedatei kann zwar jede beliebige Dateinamenserweiterung benutzt
1014 werden, allerdings muss bei Verwendung einer nicht bekannten Erweiterung
1015 das Ausgabeformat explizit an @command{lilypond-book} angegeben werden.
1016 Details dazu finden sich im Abschnitt @ref{lilypond-book aufrufen}.
1017 Wird eine bekannte Erweiterung benutzt, wählt @command{lilypond-book}
1018 automatisch das richtige Ausgabeformat basierend auf der Erweiterung der
1022 @multitable @columnfractions .2 .5
1023 @item @strong{Erweiterung} @tab @strong{Ausgabeformat}
1025 @item @file{.html} @tab HTML
1026 @item @file{.itely} @tab Texinfo
1027 @item @file{.latex} @tab @LaTeX{}
1028 @item @file{.lytex} @tab @LaTeX{}
1029 @item @file{.lyxml} @tab DocBook
1030 @item @file{.tely} @tab Texinfo
1031 @item @file{.tex} @tab @LaTeX{}
1032 @item @file{.texi} @tab Texinfo
1033 @item @file{.texinfo} @tab Texinfo
1034 @item @file{.xml} @tab HTML
1038 Wird dieselbe Erweiterung für die Eingabedatei wie für die Ausgabedatei
1039 benutzt und befindet sich die Eingabedatei im aktuellen Arbeitsverzeichnis
1040 von @command{lilypond-book}, muss die @code{--output} Option für
1041 @command{lilypond-book} benutzt werden. Anderenfalls würde
1042 @command{lilypond-book} ja die Eingabedatei überschreiben, weshalb das
1043 Programm in diesem Fall mit einer Fehlermeldung wie @qq{Fehler: Ausgabe
1044 würde Eingabedatei überschreiben; verwenden Sie --output.} abbricht.
1047 @node Alternative Methoden, Text und Musik zu kombinieren
1048 @section Alternative Methoden, Text mit Musik zu kombinieren
1049 @translationof Alternate methods of mixing text and music
1051 Dieser Abschnitt stellt Methoden vor, wie Text und Musik auf andere
1052 Weise kombiniert werden können als dies durch @command{lilypond-book}
1053 automatisiert geschieht.
1057 * Viele Zitate aus einer langen Partitur::
1058 * LilyPond-Noten in OpenOffice.org integrieren::
1059 * LilyPond-Noten in andere Programme integrieren::
1062 @node Viele Zitate aus einer langen Partitur
1063 @subsection Viele Zitate aus einer langen Partitur
1064 @translationof Many quotes from a large score
1066 Wenn aus einer großen Partitur viele kleine Fragmente eingefügt
1067 werden sollen, kann dazu das @q{clip systems} Feature benutzt werden.
1068 Siehe @ruser{Notationsfragmente extrahieren}.
1071 @node LilyPond-Noten in OpenOffice.org integrieren
1072 @subsection LilyPond-Noten in OpenOffice.org integrieren
1073 @translationof Inserting LilyPond output into OpenOffice.org
1075 Musik im LilyPond-Format kann in OpenOffice.org eingefügt werden mittels
1076 @uref{http://@/ooolilypond@/.sourceforge@/.net@/,OOoLilyPond}.
1079 @node LilyPond-Noten in andere Programme integrieren
1080 @subsection LilyPond-Noten in andere Programme integrieren
1081 @translationof Inserting LilyPond output into other programs
1083 Im die Ausgabe von LilyPond in anderen Programmen einzufügen,
1084 sollte @code{lilypond} benutzt werden. Jedes Beispiel muss
1085 getrennt manuell erzeugt und ins Dokument eingefügt werden;
1086 für letzteres schlagen Sie bitte im Handbuch Ihrer
1087 Textverarbeitungs-Software nach. Die meisten Programme
1088 unterstützen das Einfügen von Grafiken im @file{PNG}-, @file{EPS}-
1089 oder @file{PDF}-Format.
1091 Um den leeren Rand um die Notenzeilen zu verringern, können folgende
1092 Einstellungen benutzt werden:
1100 bookTitleMarkup = ##f
1101 scoreTitleMarkup = ##f
1107 Eine @file{EPS}-Datei kann mit folgendem Befehl erzeugt werden:
1110 lilypond -dbackend=eps -dno-gs-load-fonts -dinclude-eps-fonts Dateiname.ly
1114 eine @file{PNG}-Datei mittels:
1117 lilypond -dbackend=eps -dno-gs-load-fonts -dinclude-eps-fonts --png Dateiname.ly