1 @c -*- coding: utf-8; mode: texinfo; documentlanguage: de -*-
2 @c This file is part of lilypond-program.tely
4 Translation of GIT committish: 4770e4e71ebff6104cad46bd2d889c3ff6ba3875
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 Rettig
17 @chapter @command{lilypond-book}: Integrating text and music
19 Wenn Sie in ein Dokument Grafiken Ihres Musiksatzes einfügen möchten, so
20 können Sie genauso machen, wie Sie andere Grafiken einfügen würden: Die
21 Bilder werden getrennt vom Dokument im PostScript- oder PNG-Format erstellt
22 und können dann in @LaTeX{} oder HTML inkludiert werden.
24 @command{lilypond-book} automatisiert diesen Prozess: Dieses
25 Programm extrahiert Musik-Schnipsel aus Ihrem Dokument,
26 ruft @command{lilypond} auf und fügt die resultierenden Bilder
27 in Ihr Dokument ein. Die Länge der Zeilen und die Schriftgroße
28 werden dabei Ihrem Dokument angepasst.
30 @command{lilypond-book} ist ein eigenständiges Programm und wird
31 üblicherweise von der Kommandozeile aufgerufen. Nähere Informationen
32 hierzu finden sich in @ref{Command-line usage}. Wenn Sie MacOS 10.3
33 oder 10.4 benutzen und Probleme mit @code{lilypond-book} haben, lesen
34 Sie @ref{Setup for MacOS X}.
36 Dieses Vorgehen kann bei @LaTeX{}, HTML, Texinfo oder DocBook Dokumenten
45 @cindex Dokument, Musik einfügen in
46 @cindex HTML, Musik in
47 @cindex Texinfo, Musik in
48 @cindex DocBook, Musik in
49 @cindex @LaTeX{}, Musik in
53 * An example of a musicological document::
54 * Integrating music and text::
55 * Music fragment options::
56 * Invoking lilypond-book::
57 * Filename extensions::
58 * Alternate methods of mixing text and music::
61 @node An example of a musicological document
62 @section An example of a musicological document
65 @cindex Musikwissenschaft
67 Zahlreiche Texte enthalten Musikbeispiele: musikwissenschaftliche
68 Abhandlungen, Liederbücher oder Handbücher wie dieses. Solche
69 Texte können händisch erzeugt werden, indem einfach die Musikbeispiele
70 als Grafik (PostScript, PNG, GIF, etc.) im Textverarbeitungsprogramm
71 eingefügt werden. Für HTML, @LaTeX{}, Texinfo und DocBook Dokumente
72 existiert jedoch ein Weg, dies automatisiert durchzuführen.
74 Das Programm @code{lilypond-book} extrahiert die Musikfragmente aus
75 dem Dokument, formatiert sie automatisiert in eine Grafik und fügt die
76 resultierenden Notenbeispiele dann wieder in das Dokument ein. Dies soll
77 hier an einem einfachen @LaTeX{}-Beispiel verdeutlicht werden. Das Beispiel
78 selbst enthält schon Erklärungen, sodass wir es hier nicht weiter diskutieren
85 \documentclass[a4paper]{article}
89 Dokumente für \verb+lilypond-book+ können Musik und Text nach Belieben
90 kombinieren. Zum Beispiel:
94 c2 g'2 \times 2/3 { f8 e d } c'2 g4
98 Optionen für \verb+lilypond+ werden dabei in eckige Klammern gesetzt.
100 \begin[fragment,quote,staffsize=26,verbatim]{lilypond}
104 Größere Beispiele können auch in einer eigenständigen Datei gespeichert
105 und dann mit \verb+\lilypondfile+ eingebunden werden.
107 \lilypondfile[quote,noindent]{screech-boink.ly}
109 (Falls nötig kann screech-boink.ly durch eine beliebige andere .ly
110 Datei im selben Verzeichnis wie diese Datei ersetzt werden.)
116 @subheading Processing
118 Speichern Sie den obigen @LaTeX{} Quellcode in eine Datei @file{lilybook.lytex}
119 und führen Sie dann in der Kommandozeile folgende Befehle aus:
121 @c keep space after @version{} so TeX doesn't choke
123 lilypond-book --output=out --pdf lilybook.lytex
124 @emph{lilypond-book (GNU LilyPond) @version{} }
125 @emph{Reading lilybook.lytex...}
126 @emph{..(viele Ausgabezeilen entfernt)..}
127 @emph{Compiling lilybook.tex...}
130 @emph{..(viele Ausgabezeilen entfernt)..}
132 @emph{(Ersetzen Sie @command{xpdf} durch Ihren PDF-Betrachter)}
135 Die Ausführung von @command{lilypond-book} und @command{latex} erzeugt
136 zahlreiche temporäre Dateien, die das Arbeitsverzeichnis unnötig
137 vollstopfen würden. Daher empfiehlt sich die Benutzung der @code{--output=@var{dir}}
138 Option, wodurch die Dateien im Unterverzeichnis @file{dir} erzeugt werden.
140 Das Endresultat des obigen @LaTeX{} Beispiels ist im nächsten Abschnitt
141 zu sehen.@footnote{Da dieses Handbuch mit Texinfo erzeugt wurde,
142 kann sich das Aussehen des Beispiels leicht von dem mit @LaTeX{}
143 erzeugten unterscheiden.}
149 Dokumente für @command{lilypond-book} können Musik und Text nach Belieben
150 kombinieren. Zum Beispiel:
154 c2 g'2 \times 2/3 { f8 e d } c'2 g4
158 Optionen für @command{lilypond} werden dabei in eckige Klammern gesetzt.
160 @lilypond[fragment,quote,staffsize=26,verbatim]
164 Größere Beispiele können auch in einer eigenständigen Datei gespeichert
165 und dann mit @code{\lilypondfile} eingebunden werden.
167 @lilypondfile[quote,noindent]{screech-boink.ly}
174 @node Integrating music and text
175 @section Integrating music and text
177 In diesem Abschnitt soll die Integration von LilyPond mit den
178 verschiedenen Dateiformaten detailliert erläutert werden.
192 @LaTeX{} ist der de-facto Standard zur Publikation von wissenschaftlichen Texten
193 in Naturwissenschaft und Technik. Es basiert auf dem Schriftsetzer @TeX{},
194 der die bestmögliche Typographie erzeugt.
196 Siehe die @uref{http://@/www@/.ctan@/.org/@/tex@/-archive/@/info/@/lshort/@/german/,
197 @emph{@LaTeX{}2e-Kurzbeschreibung}} für eine Einführung in die
198 Benutzung von @LaTeX{}.
200 Musikbeispiele können eingegeben werden als
203 \begin[Optionen,kommen,]@{lilypond@}
204 IHR LILYPOND QUELLCODE
212 \lilypondfile[Optionen,kommen,hier]@{@var{Dateiname}@}
219 \lilypond@{ IHR LILYPOND QUELLCODE @}
222 Zusätzlich kann mit @code{\lilypondversion} die benutzte Versionsnummer
223 von LilyPond angezeigt werden. Der Aufruf von @command{lilypond-book}
224 liefert eine Datei, die dann mit @LaTeX{} weiter verarbeitet werden kann.
226 Dies soll hier an einigen Beispielen gezeigt werden. Die @code{lilypond}-Umgebung
229 \begin[quote,fragment,staffsize=26]@{lilypond@}
237 @lilypond[quote,fragment,staffsize=26]
244 \lilypond[quote,fragment,staffsize=11]@{<c' e' g'>@}
250 @lilypond[quote,fragment,staffsize=11]{<c' e' g'>}
253 Innerhalb des @code{\lilypond@{@}} Befehls dürfen keine geschwungenen
254 Klammern @code{@{} oder @code{@}} vorkommen, weshalb dieser Befehl
255 nur mit der @code{fragment} Option Sinn macht.
257 Die Standardzeilenlänge wird bestimmt, indem die Angaben in der Dokumentpräambel,
258 also dem Teil der @LaTeX{} Datei vor dem @code{\begin@{document@}},
259 analysiert werden. Der @command{lilypond-book} Befehl sendet diese
260 Angaben an @LaTeX{}, um herauszufinden, wie breit der Text tatsächlich
261 ist. Die Breite der Notenzeilen wird dann an diese Textbreite angepasst.
262 Ein derartig heuristischer Algorithmus kann natürlich auch versagen,
263 wobei man in diesem Fall die Breite auch explizit durch die
264 @code{line-width} Option des @code{\lilypond@{@}} oder @code{\begin@{lilypond@}}
265 Befehls angeben kann.
267 @cindex titling and lilypond-book
268 @cindex \header in @LaTeX{} documents
270 Jedes Musikbeispiele ruft die folgenden Makros auf, wenn sie vom Benutzer
274 @item @code{\preLilyPondExample} -- wird vor der Musik aufgerufen,
276 @item @code{\postLilyPondExample} -- wird nach der Musik aufgerufen,
278 @item @code{\betweenLilyPondSystem[1]} -- wird zwischen den einzelnen
279 Systemen aufgerufen, wenn @code{lilypond-book} das Beispiel in verschiedene
280 PostScript Dateien getrennt hat. Dieser @LaTeX{}-Befehl muss so definiert
281 werden, dass er genau ein Argument erhält, nämlich die Zahl der bereits
282 in @LaTeX{} eingefügten Dateien dieses Beispiels. Als Standard wird einfach
283 ein @code{\linebreak} eingefügt.
289 @cindex Latex, Feta Schriftart
292 Um Zeichen wie Auflösungszeichen, Kreuze, Fermaten etc. aus der Feta-Schriftart
293 von LilyPond in @LaTeX{} einzufügen, muss @code{\input@{titledefs@}} benutzt werden,
294 wodurch dann der Befehl @code{\fetachar} zur Verfügung steht.
297 \documentclass[a4paper]@{article@}
308 Die Namen der Symbole sind in der Datei @file{feta20.tex} definiert. Sie finden
309 den Pfad zu dieser Datei mit dem Befehl
319 Manchmal ist es nötig, Musikelemente wie Halte- oder Bindebögen so darzustellen,
320 als ob sie am Ende des Musikausschnitten noch weitergehen würden. Eine solche
321 Ausgabe kann erreicht werden, indem ein Zeilenumbruch in die Notenzeile
322 eingefügt wird und die Ausgabe der folgenden Notenzeile unterdrückt wird.
324 In @LaTeX{} wird dazu der Befehl @code{\betweenLilyPondSystem} einfach derartig
325 programmiert, dass die Ausgabe der einzelnen Notensysteme abgebrochen wird,
326 sobald die gewünschte Anzahl an Systemen erreicht ist. Da
327 @code{\betweenLilyPondSystem} zum ersten Mal nach dem ersten System aufgerufen
328 wird, ist die Ausgabe nur eines Systems trivial.
331 \def\betweenLilyPondSystem#1@{\endinput@}
333 \begin[fragment]@{lilypond@}
334 c'1\( e'( c'~ \break c' d) e f\)
338 Um eine größere Zahl an System nötig, dann muss dementsprechend eine
339 @TeX{}-Bedingung vor dem @code{\endinput} benutzt werden:
342 \def\betweenLilyPondSystem#1@{
343 \ifnum##1<2\else\endinput\fi
347 Dieses Beispiel bricht nach genau zwei ausgegebenen Notenzeilen ab.
348 Für eine andere Anzahl braucht nur @q{2} durch die entsprechende
349 Anzahl ersetzt werden.
351 Die Definition von @code{\betweenLilyPondSystem} bleibt gültig,
352 bis @TeX{} die aktuelle Umgebung in @LaTeX{} verlässt oder der
353 Befehl durch eine neue Definition überschrieben wird.
354 Dies kann etwa folgendermaßen in der @LaTeX{}-Datei geschehen:
357 \let\betweenLilyPondSystem\undefined
360 Obige Definition von @code{\betweenLilyPondSystem} kann durch die
361 Definition eines @TeX{}-Makros auch verallgemeinert werden,
364 \def\onlyFirstNSystems#1@{
365 \def\betweenLilyPondSystem##1@{\ifnum##1<#1\else\endinput\fi@}
370 wobei diesem Makro @code{\onlyFirstNSystems} einfach die Anzahl der
371 gewünschten Systeme übergeben wird:
374 \onlyFirstNSystems@{3@}
375 \begin@{lilypond@}...\end@{lilypond@}
376 \onlyFirstNSystems@{1@}
377 \begin@{lilypond@}...\end@{lilypond@}
381 @command{lilypond-book} stellt auch zahlreiche Kommandozeilen-Optionen zur
382 Verfügung. Für eine Liste dieser Optionen und andere hilfreiche Details zur
383 Verarbeitung von @LaTeX{}-Dokumenten, siehe @ref{Invoking lilypond-book}.
391 Texinfo ist das Standard-Dokumentationsformat des GNU Projekts. Ein Beispiel
392 für ein Dokument im Texinfo Format ist dieses Handbuch, wobei die HTML-, PDF- und
393 Info-Versionen alle aus demselben Texinfo Dokument erzeugt werden.
395 In der Eingabedatei wir Musik eingegeben als
398 @@lilypond[Optionen,kommen,hier]
399 IHR LILYPOND QUELLCODE
407 @@lilypond[Optionen,kommen,hier]@{ IHR LILYPOND QUELLCODE @}
414 @@lilypondfile[Optionen,kommen,hier]@{@var{Dateiname}@}
417 Zusätzlich kann mit @code{@@lilypondversion} die aktuelle Versionsnummer
418 von LilyPond angezeigt werden.
419 Wenn @command{lilypond-book} eine derartige Datei verarbeitet,
420 wird eine Texinfo-Datei mit der Erweiterung @file{.texi} erzeugt,
421 die @code{@@image} Befehle für die Ausgabe nach HTML, Info und PDF
422 enthält. @command{lilypond-book} erzeugt die entsprechenden Grafiken
423 der Musikbeispiele im EPS- und PDF-Format für die Ausgabe nach PDF
424 und im PNG-Format für die Ausgabe nach HTML und Info.
426 Hier sollen zwei einfache Beispiele gezeigt werden. Eine @code{lilypond} Umgebung
444 @@lilypond[fragment,staffsize=11]@{<c' e' g'>@}
450 @lilypond[fragment,staffsize=11]{<c' e' g'>}
452 Im Gegensatz zu @LaTeX{} erzeugt @code{@@lilypond@{...@}} allerdings keine Grafik
453 im Fließtext, sondern setzt sie immer in einen eigenen Absatz.
459 Musik wird eingegeben als
462 <lilypond fragment relative=2>
463 \key c \minor c4 es g2
468 @command{lilypond-book} erzeugt dann daraus eine HTML-Datei mit den entsprechenden
469 @code{<image>} Tags für die Musikbeispiele in jeweils einem eigenen Absatz.
471 @lilypond[fragment,relative=2]
472 \key c \minor c4 es g2
475 Für Grafiken im Fließtext kann @code{<lilypond ... />} benutzt werden, wobei
476 die Optionen durch einen Doppelpunkt von der Musik getrennt angegeben werden.
479 Musik <lilypond relative=2: a b c/> in derselben Zeile.
482 Um Dateien mit Musik einzubinden, kann folgendermaßen vorgegangen werden:
485 <lilypondfile @var{Option1} @var{Option2} ...>@var{Dateiname}</lilypondfile>
488 Zusätzlich gibt @code{<lilypondversion/>} die aktuelle Versionsnummer
496 Bei der Einbindung von Musik im LilyPond-Format in DocBook soll die
497 Konformität unseres DocBook Dokuments erhalten bleiben und damit
498 die Bearbeiten mit DocBook-Editoren sowie die Validierung weiter
499 möglich bleiben. Aus diesem Grund werden in DocBook keine eigenen Tags
500 wie in HTML benutzt, sondern die von den vorhandenen DocBook-Elementen
501 vorgegebenen Konventionen entsprechend benützt.
503 @subheading Common conventions
505 Für die Einbindung von LilyPond Code werden in allen Fällen die
506 @code{mediaobject} und @code{inlinemediaobject} Elemente benutzt,
507 die unsere Beispiele in einem eigenen Absatz oder im Fließtext
508 einfügen. Die Optionen zur Formatierung mit LilyPond werden dabei
509 in der @code{role} Eigenschaft des innersten Elements angegeben,
510 wie im nächsten Abschnitt gezeigt wird. Die DocBook Datei, die
511 dann von @command{lilypond-book} verarbeitet wird, sollte der Klarheit
512 halber die Dateierweiterung @file{.lyxml} (jedenfalls nicht
513 @file{.xml}) besitzen.
515 @subheading Including a LilyPond file
517 Dies ist der einfachste Fall: Die LilyPond-Datei besitzt die Erweiterung
518 @file{.ly} und wird einfach als @code{imageobject} eingebettet:
523 <imagedata fileref="music1.ly" role="printfilename" />
528 Für das äußerste Element kann je nach Bedarf @code{mediaobject} oder
529 @code{inlinemediaobject} benutzt werden.
531 @subheading Including LilyPond code
533 Die Einbindung von LilyPond-Code direkt in der DocBook-Datei ist
534 durch die Benutzung von @code{programlisting} möglich,
535 wobei die Sprache auf @code{lilypond} gesetzt wird:
540 <programlisting language="lilypond" role="fragment verbatim staffsize=16 ragged-right relative=2">
541 \context Staff \with @{
542 \remove Time_signature_engraver
543 \remove Clef_engraver@}
550 Das äußerste Element ist also @code{mediaobject} oder
551 @code{inlinemediaobject}, welches ein @code{textobject} mit dem
552 @code{programlisting} enthält.
554 @subheading Processing the DocBook document
556 Der Aufruf von @command{lilypond-book} mit der @file{.lyxml}-Datei
557 erzeugt ein gültiges DocBook-Dokument mit der Erweiterung @file{.xml},
558 welches normal weiterverarbeitet werden kann. Bei Benutzung von
559 @uref{http://@/dblatex@/.sourceforge@/.net@/,dblatex} wird daraus
560 automatisch eine PDF-Datei erzeugt. Für die Erzeugung von HTML (HTML
561 Hilfe, JavaHelp, etc.) können die offiziellen DocBook XSL-Stylesheets
562 benutzt werden. Eventuell müssen dafür allerdings kleinere Anpassungen
566 @node Music fragment options
567 @section Music fragment options
569 Im Folgenden meint @q{LilyPond-Kommando} ein beliebiges in den vorgehenden
570 Abschnitten beschriebenes Kommando, welches ein LilyPond-Fragment in eine Datei
571 einfügt und von @command{lilypond-book} verarbeitet wird. Der Einfachheit
572 halber werden hier alle LilyPond-Kommandos in der Syntax von @LaTeX{}
575 Zu beachten ist, dass die Optionen eines LilyPond-Kommandos von links
576 nach rechts verarbeitet werden. Wenn eine Option also mehrfach angegeben
577 wird, wird nur die letzte benutzt.
579 Die folgenden Optionen können für LilyPond-Kommandos benutzt werden:
582 @item staffsize=@var{ht}
583 Setzt die Höhe einer Notenzeile auf @var{ht}, angegeben in Punkten.
586 Erzeugt Notenzeilen im Flattersatz mit natürlichem Abstand der Noten. In
587 anderen Worten: @code{ragged-right = ##t} wird in das Musikfragment
588 eingefügt. Dies ist die Standardeinstellung für das @code{\lilypond@{@}}
589 Kommando, wenn die Option @code{line-width} nicht angegeben wird.
590 Ebenso ist dies die Standardeinstellung für die @code{lilypond}-Umgebung,
591 wenn die Option @code{fragment}, aber keine Zeilenlänge
592 explizit angegeben ist.
595 Streckt Musikfragmente mit nur einer Notenzeile auf die volle Breite,
596 es wird also @code{ragged-right = ##f} in das Musikfragment eingefügt.
599 @itemx line-width=@var{Breite}\@var{Einheit}
600 Setzt die Breite der Notenzeilen auf @var{Breite}, gemessen in Vielfachen
601 der @var{Einheit}. Als Einheit können die folgenden Zeichenfolgen angegeben
602 werden: @code{cm}, @code{mm}, @code{in} oder @code{pt}. Diese Option hat
603 nur Einfluss auf die Breite von Notenzeilen und Text im Musikfragment, nicht
604 jedoch auf den restlichen Text des Dokuments.
606 Wird diese Option ohne einen Wert angegeben, wird die Zeilenbreite auf
607 einen Standardwert gesetzt, der durch einen heuristischen Algorithmus
610 Wenn die @code{line-width} Option nicht angegeben wird, versucht
611 @command{lilypond-book} einen geeigneten Standardwert für alle
612 @code{lilypond}-Umgebungen zu finden, die die @code{ragged-right} Option
616 Verhindert die Ausgabe der Taktangabe am Anfang des Fragments und schaltet
617 Taktstriche und alle Taktangaben im Fragment ab.
620 Bewirkt, dass @command{lilypond-book} Standardcode um das Fragment herum einfügt, sodass z. B.
627 ohne @code{\layout}, @code{\score}, etc. eingegeben werden kann.
630 Verhindert das Einfügen von Standardcode um das Fragment herum. Dies ist
631 die Standardeinstellung, insofern ist diese Option im Normalfall unnötig.
633 @item indent=@var{Einzug}\@var{Einheit}
634 Setzt den Einzug des ersten Notensystems auf @var{Einzug}, gemessen in
635 Vielfachen der @var{Einheit}. Als Einheit können die folgenden Zeichenfolgen
636 angegeben werden: @code{cm}, @code{mm}, @code{in} oder @code{pt}. Diese
637 Option hat nur Einfluss auf den Einzug von Notenzeilen und Text im
638 Musikfragment, nicht jedoch auf den restlichen Text des Dokuments.
641 Setzt den Einzug des ersten Notensystems auf 0. Diese
642 Option hat nur Einfluss auf den Einzug von Notenzeilen und Text im
643 Musikfragment, nicht jedoch auf den restlichen Text des Dokuments. Dies
644 ist die Standardeinstellung, insofern ist diese Option im Normalfall
648 Verringert die Zeilenlänge des Musikfragments um @math{2*0.4}@dmn{in}
649 und setzt das Fragment in einen Zitat-Block. Der Wert von @q{0.4@dmn{in}}
650 kann durch die @code{exampleindent} Option angepasst werden.
653 Setzt den Betrag, um den das Fragment bei Benutzung der @code{quote}
654 Option eingerückt wird.
657 @itemx relative=@var{n}
658 Benutzt relative Oktavenbezeichnungen. Standardmäßig werden Noten relativ
659 zum mittleren C angegeben. Das optionale ganzzahlige Argument
660 gibt die Oktave der ersten Note an, wobei die Standardeinstellung von
661 @code{1} das mittlere C bedeutet. Die @code{relative} Option macht nur
662 Sinn in Verbindung mit der @code{fragment} Option, weshalb @code{fragment}
663 automatisch durch die Angabe der @code{relative} Option impliziert wird.
664 Eine explizite Angabe der @code{(no)fragment} Option hat keinen Effekt.
667 LilyPond benutzt zur Erzeugung seiner eigenen Dokumentation ebenfalls
668 @command{lilypond-book}. Zu diesem Zweck stehen noch zahlreiche
669 spezialisierte Optionen zur Verfügung:
673 Der LilyPond-Code im LilyPond-Kommando wird zum einen benutzt, um das
674 Musikfragment in eine Grafik mit schönem Notensatz zu konvertieren,
675 andererseits aber auch wörtlich in das Dokument eingefügt. Dies
676 geschieht in einem @q{verbatim}-Block, gefolgt vom Text einer
677 möglicherweise angegebenen @code{intertext} Option@footnote{Die
678 @code{intertext} Option ist noch nicht implementiert.} und der
679 Grafik des tatsächlichen Notensatzes. Diese Option funktioniert nur
680 fehlerhaft, wenn @code{\lilypond@{@}} im Fließtext benutzt wird.
682 Wird @code{verbatim} in Verbindung mit einem @code{lilypondfile}-Kommando
683 benutzt, so ist es auch möglich, nur ein Teil der Datei wörtlich einfügen
684 zu lassen: Wenn die eingebundene LilyPond-Datei ein Kommentar mit dem Inhalt
685 @samp{begin verbatim} (ohne Anführungszeichen) enthält, wird nur der
686 Dateiinhalt ab dieser Position eingefügt. Enthält die Datei mehrere
687 solche Kommentare, wirkt nur das letzte. Analog wird nur der Dateiinhalt
688 bis zu einem etwaigen Kommentar mit dem Inhalt @samp{end verbatim}
689 eingefügt. Im folgenden Beispiel wird das gesamte Musik für die
690 Erzeugung der Grafik im relativen Oktavenmodus interpretiert, der
691 wörtlich in das Dokument kopierte LilyPond-Code zeigt den @code{relative}-Befehl jedoch nicht.
694 \relative c' @{ % begin verbatim
701 erzeugt ein Zitat der Form
709 Wenn Kommentare und Variablen im Zitat, aber nicht im Quelltext
710 übersetzt werden sollen, kann die Umgebungsvariable @code{LYDOC_LOCALEDIR}
711 auf einen Verzeichnispfad gesetzt werden. Das Verzeichnis sollte
712 einen Baum an @file{.mo}-Nachrichtenkatalogen beinhalten mit
713 @code{lilypond-doc} als Domain.
716 (Nur innerhalb von Texinfo-Dateien.) Stellt @code{\version
717 @@w@{"@@version@{@}"@}} an den Beginn des Fragments der Ausgabe mit
721 (Nur innerhalb von Texinfo-Dateien.) Wird @command{lilypond} mit der
722 Kommandozeilenoption @option{--header=@/texidoc} für eine Datei
723 @file{foo@/.ly} und enthält die Datei ein @code{texidoc}-Feld im
724 @code{\header}-Block, so wird dessen Inhalt in die Datei
725 @file{foo@/.texidoc} ausgegeben. Die @code{texidoc} Option veranlasst
726 @code{lilypond-book}, den Inhalt dieser @file{.texidoc} Dateien innerhalb
727 eines Dokumentationsblocks direkt vor dem Musikfragment in das aktuelle
730 Enthält also die Datei @file{foo@/.ly} etwa den LilyPond-Code
734 texidoc = "Dieses Beispiel zeigt eine einzelne Note."
740 und das Texinfo-Dokument @file{text.texinfo}
743 @@lilypondfile[texidoc]@{foo.ly@}
747 so liefert der folgende Aufruf von @code{lilypond-book} das gewünschte
751 lilypond-book --pdf --process="lilypond \
752 -dbackend=eps --header=texidoc" test.texinfo
755 Die meisten Test-Dateien (im @file{input/} Verzeichnis von LilyPond)
756 sind kleine @file{.ly} Dateien von genau dieser Form.
758 Auch die Übersetzung dieser zusätzlichen Kommentare ist möglich:
759 Dazu muss das Texinfo-Dokument den Befehl @code{@@documentlanguage @var{LANG}}
760 und der @code{\header} Block in der Datei @file{foo@/.ly}
761 die Übersetzung im Feld @code{texidoc@var{LANG}} enthalten. Wird nun
762 @command{lilypond} mit der Option @option{--header=@/texidoc@var{LANG}}
763 aufgerufen, so wird der Inhalt der Datei @file{foo@/.texidoc@var{LANG}} anstelle von @file{foo@/.texidoc} eingefügt.
766 (Nur innerhalb von Texinfo-Dateien.) Diese Option wirkt wie die @code{quote} Option, außer dass nur das Musikfragment (und natürlich optional der
767 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.
770 (Nur innerhalb von Texinfo-Dateien.) Diese Option wirkt ähnlich wie die
771 @code{texidoc} Option: Wenn @command{lilypond} mit der Option
772 @option{--header=@/doctitle} aufgerufen wird und die Eingabedatei
773 @file{foo@/.ly} ein Feld @code{doctitle} im @code{\header}-Block enthält,
774 wird dessen Wert in die Datei @file{foo@/.doctitle} geschrieben. Wird die
775 @code{doctitle} Option für ein Musikfragment benutzt, so wird der Inhalt
776 dieser Datei, der eine einzelne Textzeile sein sollte, im Texinfo-Dokument
777 als @code{@@lydoctitle @var{Text}} eingefügt. @code{@@lydoctitle} muss
778 allerdings in Ihrem Texinfo-Dokument als Makro selbst definiert werden.
779 Die Übersetzung funktioniert völlig analog zu @code{texidoc}.
782 Nur für Texinfo-Ausgabe: Kommentare und Variablenbezeichnungen im
783 zitierten Quelltext des Schnipsel werden nicht übersetzt.
786 Wenn eine LilyPond-Datei mittels @code{\lilypondfile} und dieser Option
787 eingebunden wird, wird der Dateiname (ohne die Pfadangabe) unmittelbar vor
788 dem Musikfragment ausgegeben. In HTML-Dateien ist er außerdem ein Link
789 auf die LilyPond-Datei.
792 Diese Option inkludiert die Schriftarten in allen EPS-Dateien, die von
793 diesem Fragment erzeugt werden. Dies ist nötig, wenn das Fragment
794 Schriftarten benutzt, die @LaTeX{} nicht selbst findet.
799 @node Invoking lilypond-book
800 @section Invoking @command{lilypond-book}
802 @command{lilypond-book} erzeugt abhängig vom Ausgabeformat eine Datei mit
803 einer der folgenden Dateierweiterungen: @file{.tex}, @file{.texi},
804 @file{.html} oder @file{.xml}. Alle @file{.tex}, @file{.texi} und
805 @file{.xml} Dateien müssen noch mit den entsprechenden Programmen (@LaTeX{},
806 DocBook, etc.) weiter verarbeitet werden, um druckfähige Dateien zu erhalten.
809 @subheading Format-specific instructions
811 @subsubheading @LaTeX{}
813 Es existieren zwei Methoden, Ihr @LaTeX{}-Dokument weiter zu verarbeiten,
814 um zu einer druck- oder publikationsfähigen Datei zu gelangen:
815 Zum einen die direkte Erzeugung einer PDF-Datei mit PDF@LaTeX{}, zum
816 anderen die Erzeugung einer DVI daraus einer PostScript-Datei mittels
817 @LaTeX{} und einem DVI-nach-PostScript Konverters wie @command{dvips}.
818 Die erste Methode ist einfacher und daher empfehlenswert.@footnote{Manchmal
819 kann eine Datei entweder von PDF@LaTeX{} oder von @LaTeX{} nicht korrekt
820 verarbeitet werden, weshalb hier beide Methoden beschrieben werden.} Welche
821 Methode auch immer benutzt wird, die Konvertierung zwischen PostScript und
822 PDF kann leicht mit Hilfsprogrammen wie @command{ps2pdf} und @command{pdf2ps}
823 (aus dem Ghostscript Paket) erfolgen.
825 Um eine PDF-Datei mittels PDF@LaTeX{} zu erzeugen, kann folgendermaßen
829 lilypond-book --pdf Ihre_Datei.pdftex
830 pdflatex Ihre_Datei.tex
833 @cindex Konturschriften
834 @cindex Type1 Schriften
836 @cindex Aufruf von dvips
837 Um eine PDF-Datei mittels @LaTeX{}/@command{dvips}/@command{ps2pdf} zu
838 erhalten, sind folgende Befehle nötig:
841 lilypond-book Ihre_Datei.lytex
843 dvips -Ppdf Ihre_Datei.dvi
848 Die @file{.dvi}-Datei, die beim Aufruf von @command{latex} erzeugt wird,
849 scheint keine Notenköpfe zu enthalten, was in Ordnung ist. Wenn Sie die
850 Datei wie beschrieben weiter verarbeiten, erscheinen die Notenköpfe korrekt
851 in den @file{.ps} und @file{.pdf} Dateien.
853 Der Aufruf von @command{dvips} kann einige Warnungen über fehlende
854 Schriftarten ausgeben. Auch dies ist in Ordnung und kann ignoriert werden.
856 Wenn Sie in der @LaTeX{}-Datei das Papierformat auf Querformat eingestellt
857 haben, vergessen Sie nicht auf die @code{-t landscape} Option beim
858 Aufruf von @command{dvips}.
861 @subsubheading Texinfo
863 Um ein von @command{lilypond-book} erzeugtes Texinfo-Dokument zu
864 verarbeiten, gehen Sie wie für alle anderen Texinfo-Dokumente vor:
865 Rufen Sie -- abhängig vom gewünschten Ausgabeformat -- eines der Programme
866 @command{texi2pdf}, @command{texi2dvi}, @command{makeinfo} oder
867 @command{texi2html} auf.
870 @xref{Format with texi2dvi, , , texinfo, GNU Texinfo}, und @ref{Creating
871 an Info File, , , texinfo, GNU Texinfo}.
874 Die Dokumentation von Texinfo liefert dazu nähere Informationen.
878 @subheading Command line options
880 @command{lilypond-book} unterstützt die folgenden Kommandozeilenoptionen:
883 @item -f @var{Format}
884 @itemx --format=@var{Format}
885 Gibt das Format des Eingabedokuments an: @code{html}, @code{latex},
886 @code{texi} (Standardeinstellung), @code{texi-html} oder @code{docbook}.
887 Ist diese Option nicht angegeben, versucht @command{lilypond-book} das
888 Format anhand des Dateinamens zu bestimmen. Im Moment bedeutet @code{texi}
889 praktisch dasselbe wie @code{texi-html}.
891 @c This complicated detail is not implemented, comment it out -jm
893 The @code{texi} document type produces a Texinfo file with music
894 fragments in the printed output only. For getting images in the HTML
895 version, the format @code{texi-html} must be used instead.
898 @item -F @var{Filter}
899 @itemx --filter=@var{Filter}
900 Leitet die Musikfragmente durch das Programm @var{filter} anstatt sie
901 mit Lilypond zu einer Grafik zu verarbeiten. @option{--filter} und
902 @option{--process} kann nicht gleichzeigt benutzt werden. Beispielaufruf:
905 lilypond-book --filter='convert-ly --from=2.0.0 -' Mein-Buch.tely
910 Gibt eine kurze Hilfemeldung aus.
913 @itemx --include=@var{Pfad}
914 Fügt @var{Pfad} zu den Include-Pfaden hinzu. @command{lilypond-book} sucht
915 auch in allen Include-Pfaden nach bereits erstellten Grafiken für die
916 Musikfragmente. Wird das aktuelle Fragment gefunden und hat sich seit der
917 letzten Erstellung nicht geändert, wird es nicht erneut erzeugt. Bei manchen
918 der Programme zur Weiterverarbeitung wie etwa @command{makeinfo} oder
919 @command{latex} muss dieselbe @code{-I @var{Pfad}} Option angegeben werden,
920 damit das entsprechende Programm die Grafiken ebenso findet.
922 @item -o @var{Verzeichnis}
923 @itemx --output=@var{Verzeichnis}
924 Erzeugt die Ausgabedateien in @var{Verzeichnis}. Der Aufruf von
925 @command{lilypond-book} erzeugt zahlreiche kleine Dateien, die von
926 LilyPond, @command{latex}, @command{makeinfo} etc. dann weiter benützt
927 werden. Um zu vermeiden, dass das Quellenverzeichnis durch diese
928 Dateien unübersichtlich wird, kann die @option{--output} Option benutzt
929 werden. Vor dem Aufruf von @command{latex} oder @command{makeinfo}
930 sollten Sie in dieses Verzeichnis wechseln.
933 lilypond-book --output=out IhreDatei.lytex
938 @itemx --skip-lily-check
939 Nicht mit einer Fehlermeldung abbrechen, wenn keine Ausgabe von LilyPond
940 gefunden wird. Dies wird benutzt für Dokumentation ohne Grafiken.
942 @itemx --skip-png-check
943 Nicht mit einer Fehlermeldung abbrechen, wenn für die EPS-Dateien keine
944 PNG-Grafiken gefunden werden. Dies wird benutzt für Dokumentation ohne
947 @itemx --lily-output-dir=@var{Verzeichnis}
948 Schreibt @file{lily-XXX} Dateien nach @var{Verzeichnis} und erzeugt
949 im mit @code{--output} angegebenen Verzeichnis Verknüpfungen darauf.
950 Diese Option ist nützlich, um Zeit zu sparen, wenn Dokumente in
951 verschiedenen Verzeichnissen viele identische Musikfragmente
954 @itemx --info-images-dir=@var{Verzeichnis}
955 Formatiert die Texinfo-Ausgabe dergestalt, dass Info in @var{Verzeichnis}
956 nach den Grafiken zu den Musikfragmenten sucht.
958 @itemx --latex-program=@var{Programm}
959 Führt @command{Programm} anstelle von @command{latex} aus. Dies ist
960 nützlichen, wenn das Dokument mit einer anderen @LaTeX{}-Variante
961 wie etwa @command{xelatex} verarbeitet werden soll.
963 @itemx --left-padding=@var{Einrückung}
964 Fügt @var{Einrückung} als zusätzlichen Einzug in die EPS-Box ein.
965 @var{Einrückung} wird in Millimetern angegeben, die Standardeinstellung
966 is 3.0 Millimeter. Diese Option kann benutzt werden, wenn die Notenzeilen
967 über den Rand des Dokuments hinausstehen.
969 Die Breite eines eng ausgeschnittenen Notensystems kann variieren
970 aufgrund von Notationselementen, die über den linken Rand hinausstehen,
971 wie etwa Taktzahlen und Bezeichnungen der Instrumente. Diese Option
972 verkürzt die Notenzeile und verschiebt sie um denselben Betrag nach
976 @item -P @var{Kommando}
977 @itemx --process=@var{Kommando}
978 Verarbeitet LilyPond-Fragmente mit @var{Kommando} anstelle des
979 Standardbefehls @code{lilypond}. @code{--filter} und @code{--process}
980 können nicht gleichzeitig angegeben werden.
983 Erzeugt PDF-Dateien mit PDF@LaTeX{}.
987 Gibt ausführliche informative Meldungen aus.
991 Gibt die Versionsnummer aus.
996 Der Texinfo-Befehl @code{@@pagesizes} wird ignoriert. Ebenso werden
997 @LaTeX{}-Befehle ignoriert, die den Seitenrand oder die Zeilenlänge
998 nach der Dokumentpräambel verändern.
1000 Nur der erste @code{\score}-Block eines LilyPond-Fragments wird verarbeitet.
1003 @node Filename extensions
1004 @section Filename extensions
1006 Für die Eingabedatei kann zwar jede beliebige Dateinamenserweiterung benutzt
1007 werden, allerdings muss bei Verwendung einer nicht bekannten Erweiterung
1008 das Ausgabeformat explizit an @command{lilypond-book} angegeben werden.
1009 Details dazu finden sich im Abschnitt @ref{Invoking lilypond-book}.
1010 Wird eine bekannte Erweiterung benutzt, wählt @command{lilypond-book}
1011 automatisch das richtige Ausgabeformat basierend auf der Erweiterung der
1015 @multitable @columnfractions .2 .5
1016 @item @strong{Erweiterung} @tab @strong{Ausgabeformat}
1018 @item @file{.html} @tab HTML
1019 @item @file{.itely} @tab Texinfo
1020 @item @file{.latex} @tab @LaTeX{}
1021 @item @file{.lytex} @tab @LaTeX{}
1022 @item @file{.lyxml} @tab DocBook
1023 @item @file{.tely} @tab Texinfo
1024 @item @file{.tex} @tab @LaTeX{}
1025 @item @file{.texi} @tab Texinfo
1026 @item @file{.texinfo} @tab Texinfo
1027 @item @file{.xml} @tab HTML
1031 Wird dieselbe Erweiterung für die Eingabedatei wie für die Ausgabedatei
1032 benutzt und befindet sich die Eingabedatei im aktuellen Arbeitsverzeichnis
1033 von @command{lilypond-book}, muss die @code{--output} Option für
1034 @command{lilypond-book} benutzt werden. Anderenfalls würde
1035 @command{lilypond-book} ja die Eingabedatei überschreiben, weshalb das
1036 Programm in diesem Fall mit einer Fehlermeldung wie @qq{Fehler: Ausgabe
1037 würde Eingabedatei überschreiben; verwenden Sie --output.} abbricht.
1040 @node Alternate methods of mixing text and music
1041 @section Alternative methods of mixing text and music
1043 Dieser Abschnitt stellt Methoden vor, wie Text und Musik auf andere
1044 Weise kombiniert werden können als dies durch @command{lilypond-book}
1045 automatisiert geschieht.
1049 * Many quotes from a large score::
1050 * Inserting LilyPond output into OpenOffice.org::
1051 * Inserting LilyPond output into other programs::
1054 @node Many quotes from a large score
1055 @subsection Many quotes from a large score
1057 Wenn aus einer großen Partitur viele kleine Fragmente eingefügt
1058 werden sollen, kann dazu das @q{clip systems} Feature benutzt werden.
1059 Siehe @ruser{Extracting fragments of music}.
1062 @node Inserting LilyPond output into OpenOffice.org
1063 @subsection Inserting LilyPond output into OpenOffice.org
1065 Musik im LilyPond-Format kann in OpenOffice.org eingefügt werden mittels
1066 @uref{http://@/ooolilypond@/.sourceforge@/.net@/,OOoLilyPond}.
1069 @node Inserting LilyPond output into other programs
1070 @subsection Inserting LilyPond output into other programs
1072 Im die Ausgabe von LilyPond in anderen Programmen einzufügen,
1073 sollte @code{lilypond} benutzt werden. Jedes Beispiel muss
1074 getrennt manuell erzeugt und ins Dokument eingefügt werden;
1075 für letzteres schlagen Sie bitte im Handbuch Ihrer
1076 Textverarbeitungs-Software nach. Die meisten Programme
1077 unterstützen das Einfügen von Grafiken im @file{PNG}-, @file{EPS}-
1078 oder @file{PDF}-Format.
1080 Um den leeren Rand um die Notenzeilen zu verringern, können folgende
1081 Einstellungen benutzt werden:
1089 bookTitleMarkup = ##f
1090 scoreTitleMarkup = ##f
1096 Eine @file{EPS}-Datei kann mit folgendem Befehl erzeugt werden:
1099 lilypond -dbackend=eps -dno-gs-load-fonts -dinclude-eps-fonts Dateiname.ly
1103 eine @file{PNG}-Datei mittels:
1106 lilypond -dbackend=eps -dno-gs-load-fonts -dinclude-eps-fonts --png Dateiname.ly