1 @c -*- coding: utf-8; mode: texinfo; documentlanguage: de -*-
2 @c This file is part of lilypond-program.tely
4 Translation of GIT committish: 3a8542af9f54c99b53374328af0d5d87005ca49e
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.
598 @c does this option still exist in lilypond? -jm
600 Erzeugt Notenzeilen mit möglichst engem Notenabstand, es wird also
601 @code{packed = ##t} in das Musikfragment eingefügt.
604 @itemx line-width=@var{Breite}\@var{Einheit}
605 Setzt die Breite der Notenzeilen auf @var{Breite}, gemessen in Vielfachen
606 der @var{Einheit}. Als Einheit können die folgenden Zeichenfolgen angegeben
607 werden: @code{cm}, @code{mm}, @code{in} oder @code{pt}. Diese Option hat
608 nur Einfluss auf die Breite von Notenzeilen und Text im Musikfragment, nicht
609 jedoch auf den restlichen Text des Dokuments.
611 Wird diese Option ohne einen Wert angegeben, wird die Zeilenbreite auf
612 einen Standardwert gesetzt, der durch einen heuristischen Algorithmus
615 Wenn die @code{line-width} Option nicht angegeben wird, versucht
616 @command{lilypond-book} einen geeigneten Standardwert für alle
617 @code{lilypond}-Umgebungen zu finden, die die @code{ragged-right} Option
621 Verhindert die Ausgabe der Taktangabe am Anfang des Fragments und schaltet
622 Taktstriche und alle Taktangaben im Fragment ab.
625 Bewirkt, dass @command{lilypond-book} Standardcode um das Fragment herum einfügt, sodass z. B.
632 ohne @code{\layout}, @code{\score}, etc. eingegeben werden kann.
635 Verhindert das Einfügen von Standardcode um das Fragment herum. Dies ist
636 die Standardeinstellung, insofern ist diese Option im Normalfall unnötig.
638 @item indent=@var{Einzug}\@var{Einheit}
639 Setzt den Einzug des ersten Notensystems auf @var{Einzug}, gemessen in
640 Vielfachen der @var{Einheit}. Als Einheit können die folgenden Zeichenfolgen
641 angegeben werden: @code{cm}, @code{mm}, @code{in} oder @code{pt}. Diese
642 Option hat nur Einfluss auf den Einzug von Notenzeilen und Text im
643 Musikfragment, nicht jedoch auf den restlichen Text des Dokuments.
646 Setzt den Einzug des ersten Notensystems auf 0. Diese
647 Option hat nur Einfluss auf den Einzug von Notenzeilen und Text im
648 Musikfragment, nicht jedoch auf den restlichen Text des Dokuments. Dies
649 ist die Standardeinstellung, insofern ist diese Option im Normalfall
653 Verringert die Zeilenlänge des Musikfragments um @math{2*0.4}@dmn{in}
654 und setzt das Fragment in einen Zitat-Block. Der Wert von @q{0.4@dmn{in}}
655 kann durch die @code{exampleindent} Option angepasst werden.
658 Setzt den Betrag, um den das Fragment bei Benutzung der @code{quote}
659 Option eingerückt wird.
662 @itemx relative=@var{n}
663 Benutzt relative Oktavenbezeichnungen. Standardmäßig werden Noten relativ
664 zum mittleren C angegeben. Das optionale ganzzahlige Argument
665 gibt die Oktave der ersten Note an, wobei die Standardeinstellung von
666 @code{1} das mittlere C bedeutet. Die @code{relative} Option macht nur
667 Sinn in Verbindung mit der @code{fragment} Option, weshalb @code{fragment}
668 automatisch durch die Angabe der @code{relative} Option impliziert wird.
669 Eine explizite Angabe der @code{(no)fragment} Option hat keinen Effekt.
672 LilyPond benutzt zur Erzeugung seiner eigenen Dokumentation ebenfalls
673 @command{lilypond-book}. Zu diesem Zweck stehen noch zahlreiche
674 spezialisierte Optionen zur Verfügung:
678 Der LilyPond-Code im LilyPond-Kommando wird zum einen benutzt, um das
679 Musikfragment in eine Grafik mit schönem Notensatz zu konvertieren,
680 andererseits aber auch wörtlich in das Dokument eingefügt. Dies
681 geschieht in einem @q{verbatim}-Block, gefolgt vom Text einer
682 möglicherweise angegebenen @code{intertext} Option@footnote{Die
683 @code{intertext} Option ist noch nicht implementiert.} und der
684 Grafik des tatsächlichen Notensatzes. Diese Option funktioniert nur
685 fehlerhaft, wenn @code{\lilypond@{@}} im Fließtext benutzt wird.
687 Wird @code{verbatim} in Verbindung mit einem @code{lilypondfile}-Kommando
688 benutzt, so ist es auch möglich, nur ein Teil der Datei wörtlich einfügen
689 zu lassen: Wenn die eingebundene LilyPond-Datei ein Kommentar mit dem Inhalt
690 @samp{begin verbatim} (ohne Anführungszeichen) enthält, wird nur der
691 Dateiinhalt ab dieser Position eingefügt. Enthält die Datei mehrere
692 solche Kommentare, wirkt nur das letzte. Analog wird nur der Dateiinhalt
693 bis zu einem etwaigen Kommentar mit dem Inhalt @samp{end verbatim}
694 eingefügt. Im folgenden Beispiel wird das gesamte Musik für die
695 Erzeugung der Grafik im relativen Oktavenmodus interpretiert, der
696 wörtlich in das Dokument kopierte LilyPond-Code zeigt den @code{relative}-Befehl jedoch nicht.
699 \relative c' @{ % begin verbatim
706 erzeugt ein Zitat der Form
714 (Nur innerhalb von Texinfo-Dateien.) Stellt @code{\version
715 @@w@{"@@version@{@}"@}} an den Beginn des Fragments der Ausgabe mit
719 (Nur innerhalb von Texinfo-Dateien.) Wird @command{lilypond} mit der
720 Kommandozeilenoption @option{--header=@/texidoc} für eine Datei
721 @file{foo@/.ly} und enthält die Datei ein @code{texidoc}-Feld im
722 @code{\header}-Block, so wird dessen Inhalt in die Datei
723 @file{foo@/.texidoc} ausgegeben. Die @code{texidoc} Option veranlasst
724 @code{lilypond-book}, den Inhalt dieser @file{.texidoc} Dateien innerhalb
725 eines Dokumentationsblocks direkt vor dem Musikfragment in das aktuelle
728 Enthält also die Datei @file{foo@/.ly} etwa den LilyPond-Code
732 texidoc = "Dieses Beispiel zeigt eine einzelne Note."
738 und das Texinfo-Dokument @file{text.texinfo}
741 @@lilypondfile[texidoc]@{foo.ly@}
745 so liefert der folgende Aufruf von @code{lilypond-book} das gewünschte
749 lilypond-book --process="lilypond --format=tex --tex \
750 --header=texidoc test.texinfo
753 Die meisten Test-Dateien (im @file{input/} Verzeichnis von LilyPond)
754 sind kleine @file{.ly} Dateien von genau dieser Form.
756 Auch die Übersetzung dieser zusätzlichen Kommentare ist möglich:
757 Dazu muss das Texinfo-Dokument den Befehl @code{@@documentlanguage @var{LANG}}
758 und der @code{\header} Block in der Datei @file{foo@/.ly}
759 die Übersetzung im Feld @code{texidoc@var{LANG}} enthalten. Wird nun
760 @command{lilypond} mit der Option @option{--header=@/texidoc@var{LANG}}
761 aufgerufen, so wird der Inhalt der Datei @file{foo@/.texidoc@var{LANG}} anstelle von @file{foo@/.texidoc} eingefügt.
764 (Nur innerhalb von Texinfo-Dateien.) Diese Option wirkt wie die @code{quote} Option, außer dass nur das Musikfragment (und natürlich optional der
765 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.
768 (Nur innerhalb von Texinfo-Dateien.) Diese Option wirkt ähnlich wie die
769 @code{texidoc} Option: Wenn @command{lilypond} mit der Option
770 @option{--header=@/doctitle} aufgerufen wird und die Eingabedatei
771 @file{foo@/.ly} ein Feld @code{doctitle} im @code{\header}-Block enthält,
772 wird dessen Wert in die Datei @file{foo@/.doctitle} geschrieben. Wird die
773 @code{doctitle} Option für ein Musikfragment benutzt, so wird der Inhalt
774 dieser Datei, der eine einzelne Textzeile sein sollte, im Texinfo-Dokument
775 als @code{@@lydoctitle @var{Text}} eingefügt. @code{@@lydoctitle} muss
776 allerdings in Ihrem Texinfo-Dokument als Makro selbst definiert werden.
777 Die Übersetzung funktioniert völlig analog zu @code{texidoc}.
780 Wenn eine LilyPond-Datei mittels @code{\lilypondfile} und dieser Option
781 eingebunden wird, wird der Dateiname (ohne die Pfadangabe) unmittelbar vor
782 dem Musikfragment ausgegeben. In HTML-Dateien ist er außerdem ein Link
783 auf die LilyPond-Datei.
786 Diese Option inkludiert die Schriftarten in allen EPS-Dateien, die von
787 diesem Fragment erzeugt werden. Dies ist nötig, wenn das Fragment
788 Schriftarten benutzt, die @LaTeX{} nicht selbst findet.
793 @node Invoking lilypond-book
794 @section Invoking @command{lilypond-book}
796 @command{lilypond-book} erzeugt abhängig vom Ausgabeformat eine Datei mit
797 einer der folgenden Dateierweiterungen: @file{.tex}, @file{.texi},
798 @file{.html} oder @file{.xml}. Alle @file{.tex}, @file{.texi} und
799 @file{.xml} Dateien müssen noch mit den entsprechenden Programmen (@LaTeX{},
800 DocBook, etc.) weiter verarbeitet werden, um druckfähige Dateien zu erhalten.
803 @subheading Format-specific instructions
805 @subsubheading @LaTeX{}
807 Es existieren zwei Methoden, Ihr @LaTeX{}-Dokument weiter zu verarbeiten,
808 um zu einer druck- oder publikationsfähigen Datei zu gelangen:
809 Zum einen die direkte Erzeugung einer PDF-Datei mit PDF@LaTeX{}, zum
810 anderen die Erzeugung einer DVI daraus einer PostScript-Datei mittels
811 @LaTeX{} und einem DVI-nach-PostScript Konverters wie @command{dvips}.
812 Die erste Methode ist einfacher und daher empfehlenswert.@footnote{Manchmal
813 kann eine Datei entweder von PDF@LaTeX{} oder von @LaTeX{} nicht korrekt
814 verarbeitet werden, weshalb hier beide Methoden beschrieben werden.} Welche
815 Methode auch immer benutzt wird, die Konvertierung zwischen PostScript und
816 PDF kann leicht mit Hilfsprogrammen wie @command{ps2pdf} und @command{pdf2ps}
817 (aus dem Ghostscript Paket) erfolgen.
819 Um eine PDF-Datei mittels PDF@LaTeX{} zu erzeugen, kann folgendermaßen
823 lilypond-book --pdf Ihre_Datei.pdftex
824 pdflatex Ihre_Datei.tex
827 @cindex Konturschriften
828 @cindex Type1 Schriften
830 @cindex Aufruf von dvips
831 Um eine PDF-Datei mittels @LaTeX{}/@command{dvips}/@command{ps2pdf} zu
832 erhalten, sind folgende Befehle nötig:
835 lilypond-book Ihre_Datei.lytex
837 dvips -Ppdf Ihre_Datei.dvi
842 Die @file{.dvi}-Datei, die beim Aufruf von @command{latex} erzeugt wird,
843 scheint keine Notenköpfe zu enthalten, was in Ordnung ist. Wenn Sie die
844 Datei wie beschrieben weiter verarbeiten, erscheinen die Notenköpfe korrekt
845 in den @file{.ps} und @file{.pdf} Dateien.
847 Der Aufruf von @command{dvips} kann einige Warnungen über fehlende
848 Schriftarten ausgeben. Auch dies ist in Ordnung und kann ignoriert werden.
850 Wenn Sie in der @LaTeX{}-Datei das Papierformat auf Querformat eingestellt
851 haben, vergessen Sie nicht auf die @code{-t landscape} Option beim
852 Aufruf von @command{dvips}.
855 @subsubheading Texinfo
857 Um ein von @command{lilypond-book} erzeugtes Texinfo-Dokument zu
858 verarbeiten, gehen Sie wie für alle anderen Texinfo-Dokumente vor:
859 Rufen Sie -- abhängig vom gewünschten Ausgabeformat -- eines der Programme
860 @command{texi2pdf}, @command{texi2dvi}, @command{makeinfo} oder
861 @command{texi2html} auf.
864 @xref{Format with texi2dvi, , , texinfo, GNU Texinfo}, und @ref{Creating
865 an Info File, , , texinfo, GNU Texinfo}.
868 Die Dokumentation von Texinfo liefert dazu nähere Informationen.
872 @subheading Command line options
874 @command{lilypond-book} unterstützt die folgenden Kommandozeilenoptionen:
877 @item -f @var{Format}
878 @itemx --format=@var{Format}
879 Gibt das Format des Eingabedokuments an: @code{html}, @code{latex},
880 @code{texi} (Standardeinstellung), @code{texi-html} oder @code{docbook}.
881 Ist diese Option nicht angegeben, versucht @command{lilypond-book} das
882 Format anhand des Dateinamens zu bestimmen. Im Moment bedeutet @code{texi}
883 praktisch dasselbe wie @code{texi-html}.
885 @c This complicated detail is not implemented, comment it out -jm
887 The @code{texi} document type produces a Texinfo file with music
888 fragments in the printed output only. For getting images in the HTML
889 version, the format @code{texi-html} must be used instead.
892 @item -F @var{Filter}
893 @itemx --filter=@var{Filter}
894 Leitet die Musikfragmente durch das Programm @var{filter} anstatt sie
895 mit Lilypond zu einer Grafik zu verarbeiten. @option{--filter} und
896 @option{--process} kann nicht gleichzeigt benutzt werden. Beispielaufruf:
899 lilypond-book --filter='convert-ly --from=2.0.0 -' Mein-Buch.tely
904 Gibt eine kurze Hilfemeldung aus.
907 @itemx --include=@var{Pfad}
908 Fügt @var{Pfad} zu den Include-Pfaden hinzu. @command{lilypond-book} sucht
909 auch in allen Include-Pfaden nach bereits erstellten Grafiken für die
910 Musikfragmente. Wird das aktuelle Fragment gefunden und hat sich seit der
911 letzten Erstellung nicht geändert, wird es nicht erneut erzeugt. Bei manchen
912 der Programme zur Weiterverarbeitung wie etwa @command{makeinfo} oder
913 @command{latex} muss dieselbe @code{-I @var{Pfad}} Option angegeben werden,
914 damit das entsprechende Programm die Grafiken ebenso findet.
916 @item -o @var{Verzeichnis}
917 @itemx --output=@var{Verzeichnis}
918 Erzeugt die Ausgabedateien in @var{Verzeichnis}. Der Aufruf von
919 @command{lilypond-book} erzeugt zahlreiche kleine Dateien, die von
920 LilyPond, @command{latex}, @command{makeinfo} etc. dann weiter benützt
921 werden. Um zu vermeiden, dass das Quellenverzeichnis durch diese
922 Dateien unübersichtlich wird, kann die @option{--output} Option benutzt
923 werden. Vor dem Aufruf von @command{latex} oder @command{makeinfo}
924 sollten Sie in dieses Verzeichnis wechseln.
927 lilypond-book --output=out IhreDatei.lytex
932 @itemx --skip-lily-check
933 Nicht mit einer Fehlermeldung abbrechen, wenn keine Ausgabe von LilyPond
934 gefunden wird. Dies wird benutzt für Dokumentation ohne Grafiken.
936 @itemx --skip-png-check
937 Nicht mit einer Fehlermeldung abbrechen, wenn für die EPS-Dateien keine
938 PNG-Grafiken gefunden werden. Dies wird benutzt für Dokumentation ohne
941 @itemx --lily-output-dir=@var{Verzeichnis}
942 Schreibt @file{lily-XXX} Dateien nach @var{Verzeichnis} und erzeugt
943 im mit @code{--output} angegebenen Verzeichnis Verknüpfungen darauf.
944 Diese Option ist nützlich, um Zeit zu sparen, wenn Dokumente in
945 verschiedenen Verzeichnissen viele identische Musikfragmente
948 @itemx --info-images-dir=@var{Verzeichnis}
949 Formatiert die Texinfo-Ausgabe dergestalt, dass Info in @var{Verzeichnis}
950 nach den Grafiken zu den Musikfragmenten sucht.
952 @itemx --latex-program=@var{Programm}
953 Führt @command{Programm} anstelle von @command{latex} aus. Dies ist
954 nützlichen, wenn das Dokument mit einer anderen @LaTeX{}-Variante
955 wie etwa @command{xelatex} verarbeitet werden soll.
957 @itemx --left-padding=@var{Einrückung}
958 Fügt @var{Einrückung} als zusätzlichen Einzug in die EPS-Box ein.
959 @var{Einrückung} wird in Millimetern angegeben, die Standardeinstellung
960 is 3.0 Millimeter. Diese Option kann benutzt werden, wenn die Notenzeilen
961 über den Rand des Dokuments hinausstehen.
963 Die Breite eines eng ausgeschnittenen Notensystems kann variieren
964 aufgrund von Notationselementen, die über den linken Rand hinausstehen,
965 wie etwa Taktzahlen und Bezeichnungen der Instrumente. Diese Option
966 verkürzt die Notenzeile und verschiebt sie um denselben Betrag nach
970 @item -P @var{Kommando}
971 @itemx --process=@var{Kommando}
972 Verarbeitet LilyPond-Fragmente mit @var{Kommando} anstelle des
973 Standardbefehls @code{lilypond}. @code{--filter} und @code{--process}
974 können nicht gleichzeitig angegeben werden.
977 Erzeugt PDF-Dateien mit PDF@LaTeX{}.
981 Gibt ausführliche informative Meldungen aus.
985 Gibt die Versionsnummer aus.
990 Der Texinfo-Befehl @code{@@pagesizes} wird ignoriert. Ebenso werden
991 @LaTeX{}-Befehle ignoriert, die den Seitenrand oder die Zeilenlänge
992 nach der Dokumentpräambel verändern.
994 Nur der erste @code{\score}-Block eines LilyPond-Fragments wird verarbeitet.
997 @node Filename extensions
998 @section Filename extensions
1000 Für die Eingabedatei kann zwar jede beliebige Dateinamenserweiterung benutzt
1001 werden, allerdings muss bei Verwendung einer nicht bekannten Erweiterung
1002 das Ausgabeformat explizit an @command{lilypond-book} angegeben werden.
1003 Details dazu finden sich im Abschnitt @ref{Invoking lilypond-book}.
1004 Wird eine bekannte Erweiterung benutzt, wählt @command{lilypond-book}
1005 automatisch das richtige Ausgabeformat basierend auf der Erweiterung der
1009 @multitable @columnfractions .2 .5
1010 @item @strong{Erweiterung} @tab @strong{Ausgabeformat}
1012 @item @file{.html} @tab HTML
1013 @item @file{.itely} @tab Texinfo
1014 @item @file{.latex} @tab @LaTeX{}
1015 @item @file{.lytex} @tab @LaTeX{}
1016 @item @file{.lyxml} @tab DocBook
1017 @item @file{.tely} @tab Texinfo
1018 @item @file{.tex} @tab @LaTeX{}
1019 @item @file{.texi} @tab Texinfo
1020 @item @file{.texinfo} @tab Texinfo
1021 @item @file{.xml} @tab HTML
1025 Wird dieselbe Erweiterung für die Eingabedatei wie für die Ausgabedatei
1026 benutzt und befindet sich die Eingabedatei im aktuellen Arbeitsverzeichnis
1027 von @command{lilypond-book}, muss die @code{--output} Option für
1028 @command{lilypond-book} benutzt werden. Anderenfalls würde
1029 @command{lilypond-book} ja die Eingabedatei überschreiben, weshalb das
1030 Programm in diesem Fall mit einer Fehlermeldung wie @qq{Fehler: Ausgabe
1031 würde Eingabedatei überschreiben; verwenden Sie --output.} abbricht.
1034 @node Alternate methods of mixing text and music
1035 @section Alternative methods of mixing text and music
1037 Dieser Abschnitt stellt Methoden vor, wie Text und Musik auf andere
1038 Weise kombiniert werden können als dies durch @command{lilypond-book}
1039 automatisiert geschieht.
1043 * Many quotes from a large score::
1044 * Inserting LilyPond output into OpenOffice.org::
1045 * Inserting LilyPond output into other programs::
1048 @node Many quotes from a large score
1049 @subsection Many quotes from a large score
1051 Wenn aus einer großen Partitur viele kleine Fragmente eingefügt
1052 werden sollen, kann dazu das @q{clip systems} Feature benutzt werden.
1053 Siehe @ruser{Extracting fragments of music}.
1056 @node Inserting LilyPond output into OpenOffice.org
1057 @subsection Inserting LilyPond output into OpenOffice.org
1059 Musik im LilyPond-Format kann in OpenOffice.org eingefügt werden mittels
1060 @uref{http://@/ooolilypond@/.sourceforge@/.net@/,OOoLilyPond}.
1063 @node Inserting LilyPond output into other programs
1064 @subsection Inserting LilyPond output into other programs
1066 Im die Ausgabe von LilyPond in anderen Programmen einzufügen,
1067 sollte @code{lilypond} benutzt werden. Jedes Beispiel muss
1068 getrennt manuell erzeugt und ins Dokument eingefügt werden;
1069 für letzteres schlagen Sie bitte im Handbuch Ihrer
1070 Textverarbeitungs-Software nach. Die meisten Programme
1071 unterstützen das Einfügen von Grafiken im @file{PNG}-, @file{EPS}-
1072 oder @file{PDF}-Format.
1074 Um den leeren Rand um die Notenzeilen zu verringern, können folgende
1075 Einstellungen benutzt werden:
1083 bookTitleMarkup = ##f
1084 scoreTitleMarkup = ##f
1090 Eine @file{EPS}-Datei kann mit folgendem Befehl erzeugt werden:
1093 lilypond -dbackend=eps -dno-gs-load-fonts -dinclude-eps-fonts Dateiname.ly
1097 eine @file{PNG}-Datei mittels:
1100 lilypond -dbackend=eps -dno-gs-load-fonts -dinclude-eps-fonts --png Dateiname.ly