1 @c -*- coding: utf-8; mode: texinfo; documentlanguage: de -*-
4 Translation of GIT committish: d96023d8792c8af202c7cb8508010c0d3648899d
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}: 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
35 Sie @ref{Einrichtung für MacOS X}.
37 Dieses Vorgehen kann bei @LaTeX{}, HTML, Texinfo oder DocBook Dokumenten
46 @cindex Dokument, Musik einfügen in
47 @cindex HTML, Musik in
48 @cindex Texinfo, Musik in
49 @cindex DocBook, Musik in
50 @cindex @LaTeX{}, Musik in
54 * Ein musikwissenschaftlicher Text als Beispiel::
55 * Noten in Text integrieren::
56 * Die Musikfragment-Optionen::
57 * lilypond-book aufrufen::
59 * Alternative Methoden, Text und Musik zu kombinieren::
62 @node Ein musikwissenschaftlicher Text als Beispiel
63 @section Ein musikwissenschaftlicher Text als Beispiel
64 @translationof An example of a musicological document
67 @cindex Musikwissenschaft
69 Zahlreiche Texte enthalten Musikbeispiele: musikwissenschaftliche
70 Abhandlungen, Liederbücher oder Handbücher wie dieses. Solche
71 Texte können händisch erzeugt werden, indem einfach die Musikbeispiele
72 als Grafik (PostScript, PNG, GIF, etc.) im Textverarbeitungsprogramm
73 eingefügt werden. Für HTML, @LaTeX{}, Texinfo und DocBook Dokumente
74 existiert jedoch ein Weg, dies automatisiert durchzuführen.
76 Das Programm @code{lilypond-book} extrahiert die Musikfragmente aus
77 dem Dokument, formatiert sie automatisiert in eine Grafik und fügt die
78 resultierenden Notenbeispiele dann wieder in das Dokument ein. Dies soll
79 hier an einem einfachen @LaTeX{}-Beispiel verdeutlicht werden. Das Beispiel
80 selbst enthält schon Erklärungen, sodass wir es hier nicht weiter diskutieren
87 \documentclass[a4paper]{article}
91 Dokumente für \verb+lilypond-book+ können Musik und Text nach Belieben
92 kombinieren. Zum Beispiel:
96 c2 g'2 \times 2/3 { f8 e d } c'2 g4
100 Optionen für \verb+lilypond+ werden dabei in eckige Klammern gesetzt.
102 \begin[fragment,quote,staffsize=26,verbatim]{lilypond}
106 Größere Beispiele können auch in einer eigenständigen Datei gespeichert
107 und dann mit \verb+\lilypondfile+ eingebunden werden.
109 \lilypondfile[quote,noindent]{screech-boink.ly}
111 (Falls nötig kann screech-boink.ly durch eine beliebige andere .ly
112 Datei im selben Verzeichnis wie diese Datei ersetzt werden.)
118 @subheading Verarbeitung
120 Speichern Sie den obigen @LaTeX{} Quellcode in eine Datei @file{lilybook.lytex}
121 und führen Sie dann in der Kommandozeile folgende Befehle aus:
123 @c keep space after @version{} so TeX doesn't choke
125 lilypond-book --output=out --pdf lilybook.lytex
126 @emph{lilypond-book (GNU LilyPond) @version{} }
127 @emph{Reading lilybook.lytex...}
128 @emph{..(viele Ausgabezeilen entfernt)..}
129 @emph{Compiling lilybook.tex...}
132 @emph{..(viele Ausgabezeilen entfernt)..}
134 @emph{(Ersetzen Sie @command{xpdf} durch Ihren PDF-Betrachter)}
137 Die Ausführung von @command{lilypond-book} und @command{latex} erzeugt
138 zahlreiche temporäre Dateien, die das Arbeitsverzeichnis unnötig
139 vollstopfen würden. Daher empfiehlt sich die Benutzung der @code{--output=@var{dir}}
140 Option, wodurch die Dateien im Unterverzeichnis @file{dir} erzeugt werden.
142 Das Endresultat des obigen @LaTeX{} Beispiels ist im nächsten Abschnitt
143 zu sehen.@footnote{Da dieses Handbuch mit Texinfo erzeugt wurde,
144 kann sich das Aussehen des Beispiels leicht von dem mit @LaTeX{}
145 erzeugten unterscheiden.}
151 Dokumente für @command{lilypond-book} können Musik und Text nach Belieben
152 kombinieren. Zum Beispiel:
156 c2 g'2 \times 2/3 { f8 e d } c'2 g4
160 Optionen für @command{lilypond} werden dabei in eckige Klammern gesetzt.
162 @lilypond[fragment,quote,staffsize=26,verbatim]
166 Größere Beispiele können auch in einer eigenständigen Datei gespeichert
167 und dann mit @code{\lilypondfile} eingebunden werden.
169 @lilypondfile[quote,noindent]{screech-boink.ly}
176 @node Noten in Text integrieren
177 @section Noten in Text integrieren
178 @translationof Integrating music and text
180 In diesem Abschnitt soll die Integration von LilyPond mit den
181 verschiedenen Dateiformaten detailliert erläutert werden.
196 @LaTeX{} ist der de-facto Standard zur Publikation von wissenschaftlichen Texten
197 in Naturwissenschaft und Technik. Es basiert auf dem Schriftsetzer @TeX{},
198 der die bestmögliche Typographie erzeugt.
200 Siehe die @uref{http://@/www@/.ctan@/.org/@/tex@/-archive/@/info/@/lshort/@/german/,
201 @emph{@LaTeX{}2e-Kurzbeschreibung}} für eine Einführung in die
202 Benutzung von @LaTeX{}.
204 Musikbeispiele können eingegeben werden als
207 \begin[Optionen,kommen,]@{lilypond@}
208 IHR LILYPOND QUELLCODE
216 \lilypondfile[Optionen,kommen,hier]@{@var{Dateiname}@}
223 \lilypond@{ IHR LILYPOND QUELLCODE @}
226 Zusätzlich kann mit @code{\lilypondversion} die benutzte Versionsnummer
227 von LilyPond angezeigt werden. Der Aufruf von @command{lilypond-book}
228 liefert eine Datei, die dann mit @LaTeX{} weiter verarbeitet werden kann.
230 Dies soll hier an einigen Beispielen gezeigt werden. Die @code{lilypond}-Umgebung
233 \begin[quote,fragment,staffsize=26]@{lilypond@}
241 @lilypond[quote,fragment,staffsize=26]
248 \lilypond[quote,fragment,staffsize=11]@{<c' e' g'>@}
254 @lilypond[quote,fragment,staffsize=11]{<c' e' g'>}
257 Innerhalb des @code{\lilypond@{@}} Befehls dürfen keine geschwungenen
258 Klammern @code{@{} oder @code{@}} vorkommen, weshalb dieser Befehl
259 nur mit der @code{fragment} Option Sinn macht.
261 Die Standardzeilenlänge wird bestimmt, indem die Angaben in der Dokumentpräambel,
262 also dem Teil der @LaTeX{} Datei vor dem @code{\begin@{document@}},
263 analysiert werden. Der @command{lilypond-book} Befehl sendet diese
264 Angaben an @LaTeX{}, um herauszufinden, wie breit der Text tatsächlich
265 ist. Die Breite der Notenzeilen wird dann an diese Textbreite angepasst.
266 Ein derartig heuristischer Algorithmus kann natürlich auch versagen,
267 wobei man in diesem Fall die Breite auch explizit durch die
268 @code{line-width} Option des @code{\lilypond@{@}} oder @code{\begin@{lilypond@}}
269 Befehls angeben kann.
271 @cindex titling and lilypond-book
272 @cindex \header in @LaTeX{} documents
274 Jedes Musikbeispiele ruft die folgenden Makros auf, wenn sie vom Benutzer
278 @item @code{\preLilyPondExample} -- wird vor der Musik aufgerufen,
280 @item @code{\postLilyPondExample} -- wird nach der Musik aufgerufen,
282 @item @code{\betweenLilyPondSystem[1]} -- wird zwischen den einzelnen
283 Systemen aufgerufen, wenn @code{lilypond-book} das Beispiel in verschiedene
284 PostScript Dateien getrennt hat. Dieser @LaTeX{}-Befehl muss so definiert
285 werden, dass er genau ein Argument erhält, nämlich die Zahl der bereits
286 in @LaTeX{} eingefügten Dateien dieses Beispiels. Als Standard wird einfach
287 ein @code{\linebreak} eingefügt.
293 @cindex Latex, Feta Schriftart
296 Um Zeichen wie Auflösungszeichen, Kreuze, Fermaten etc. aus der Feta-Schriftart
297 von LilyPond in @LaTeX{} einzufügen, muss @code{\input@{titledefs@}} benutzt werden,
298 wodurch dann der Befehl @code{\fetachar} zur Verfügung steht.
301 \documentclass[a4paper]@{article@}
312 Die Namen der Symbole sind in der Datei @file{feta20.tex} definiert. Sie finden
313 den Pfad zu dieser Datei mit dem Befehl
323 Manchmal ist es nötig, Musikelemente wie Halte- oder Bindebögen so darzustellen,
324 als ob sie am Ende des Musikausschnitten noch weitergehen würden. Eine solche
325 Ausgabe kann erreicht werden, indem ein Zeilenumbruch in die Notenzeile
326 eingefügt wird und die Ausgabe der folgenden Notenzeile unterdrückt wird.
328 In @LaTeX{} wird dazu der Befehl @code{\betweenLilyPondSystem} einfach derartig
329 programmiert, dass die Ausgabe der einzelnen Notensysteme abgebrochen wird,
330 sobald die gewünschte Anzahl an Systemen erreicht ist. Da
331 @code{\betweenLilyPondSystem} zum ersten Mal nach dem ersten System aufgerufen
332 wird, ist die Ausgabe nur eines Systems trivial.
335 \def\betweenLilyPondSystem#1@{\endinput@}
337 \begin[fragment]@{lilypond@}
338 c'1\( e'( c'~ \break c' d) e f\)
342 Um eine größere Zahl an System nötig, dann muss dementsprechend eine
343 @TeX{}-Bedingung vor dem @code{\endinput} benutzt werden:
346 \def\betweenLilyPondSystem#1@{
347 \ifnum##1<2\else\endinput\fi
351 Dieses Beispiel bricht nach genau zwei ausgegebenen Notenzeilen ab.
352 Für eine andere Anzahl braucht nur @q{2} durch die entsprechende
353 Anzahl ersetzt werden.
355 Die Definition von @code{\betweenLilyPondSystem} bleibt gültig,
356 bis @TeX{} die aktuelle Umgebung in @LaTeX{} verlässt oder der
357 Befehl durch eine neue Definition überschrieben wird.
358 Dies kann etwa folgendermaßen in der @LaTeX{}-Datei geschehen:
361 \let\betweenLilyPondSystem\undefined
364 Obige Definition von @code{\betweenLilyPondSystem} kann durch die
365 Definition eines @TeX{}-Makros auch verallgemeinert werden,
368 \def\onlyFirstNSystems#1@{
369 \def\betweenLilyPondSystem##1@{\ifnum##1<#1\else\endinput\fi@}
374 wobei diesem Makro @code{\onlyFirstNSystems} einfach die Anzahl der
375 gewünschten Systeme übergeben wird:
378 \onlyFirstNSystems@{3@}
379 \begin@{lilypond@}...\end@{lilypond@}
380 \onlyFirstNSystems@{1@}
381 \begin@{lilypond@}...\end@{lilypond@}
385 @command{lilypond-book} stellt auch zahlreiche Kommandozeilen-Optionen zur
386 Verfügung. Für eine Liste dieser Optionen und andere hilfreiche Details zur
387 Verarbeitung von @LaTeX{}-Dokumenten, siehe @ref{lilypond-book aufrufen}.
394 @translationof Texinfo
396 Texinfo ist das Standard-Dokumentationsformat des GNU Projekts. Ein Beispiel
397 für ein Dokument im Texinfo Format ist dieses Handbuch, wobei die HTML-, PDF- und
398 Info-Versionen alle aus demselben Texinfo Dokument erzeugt werden.
400 In der Eingabedatei wir Musik eingegeben als
403 @@lilypond[Optionen,kommen,hier]
404 IHR LILYPOND QUELLCODE
412 @@lilypond[Optionen,kommen,hier]@{ IHR LILYPOND QUELLCODE @}
419 @@lilypondfile[Optionen,kommen,hier]@{@var{Dateiname}@}
422 Zusätzlich kann mit @code{@@lilypondversion} die aktuelle Versionsnummer
423 von LilyPond angezeigt werden.
424 Wenn @command{lilypond-book} eine derartige Datei verarbeitet,
425 wird eine Texinfo-Datei mit der Erweiterung @file{.texi} erzeugt,
426 die @code{@@image} Befehle für die Ausgabe nach HTML, Info und PDF
427 enthält. @command{lilypond-book} erzeugt die entsprechenden Grafiken
428 der Musikbeispiele im EPS- und PDF-Format für die Ausgabe nach PDF
429 und im PNG-Format für die Ausgabe nach HTML und Info.
431 Hier sollen zwei einfache Beispiele gezeigt werden. Eine @code{lilypond} Umgebung
449 @@lilypond[fragment,staffsize=11]@{<c' e' g'>@}
455 @lilypond[fragment,staffsize=11]{<c' e' g'>}
457 Im Gegensatz zu @LaTeX{} erzeugt @code{@@lilypond@{...@}} allerdings keine Grafik
458 im Fließtext, sondern setzt sie immer in einen eigenen Absatz.
465 Musik wird eingegeben als
468 <lilypond fragment relative=2>
469 \key c \minor c4 es g2
474 @command{lilypond-book} erzeugt dann daraus eine HTML-Datei mit den entsprechenden
475 @code{<image>} Tags für die Musikbeispiele in jeweils einem eigenen Absatz.
477 @lilypond[fragment,relative=2]
478 \key c \minor c4 es g2
481 Für Grafiken im Fließtext kann @code{<lilypond ... />} benutzt werden, wobei
482 die Optionen durch einen Doppelpunkt von der Musik getrennt angegeben werden.
485 Musik <lilypond relative=2: a b c/> in derselben Zeile.
488 Um Dateien mit Musik einzubinden, kann folgendermaßen vorgegangen werden:
491 <lilypondfile @var{Option1} @var{Option2} ...>@var{Dateiname}</lilypondfile>
494 Zusätzlich gibt @code{<lilypondversion/>} die aktuelle Versionsnummer
500 @translationof DocBook
503 Bei der Einbindung von Musik im LilyPond-Format in DocBook soll die
504 Konformität unseres DocBook Dokuments erhalten bleiben und damit
505 die Bearbeiten mit DocBook-Editoren sowie die Validierung weiter
506 möglich bleiben. Aus diesem Grund werden in DocBook keine eigenen Tags
507 wie in HTML benutzt, sondern die von den vorhandenen DocBook-Elementen
508 vorgegebenen Konventionen entsprechend benützt.
510 @subheading Definitionen
512 Für die Einbindung von LilyPond Code werden in allen Fällen die
513 @code{mediaobject} und @code{inlinemediaobject} Elemente benutzt,
514 die unsere Beispiele in einem eigenen Absatz oder im Fließtext
515 einfügen. Die Optionen zur Formatierung mit LilyPond werden dabei
516 in der @code{role} Eigenschaft des innersten Elements angegeben,
517 wie im nächsten Abschnitt gezeigt wird. Die DocBook Datei, die
518 dann von @command{lilypond-book} verarbeitet wird, sollte der Klarheit
519 halber die Dateierweiterung @file{.lyxml} (jedenfalls nicht
520 @file{.xml}) besitzen.
522 @subheading Eine LilyPond-Datei einfügen
524 Dies ist der einfachste Fall: Die LilyPond-Datei besitzt die Erweiterung
525 @file{.ly} und wird einfach als @code{imageobject} eingebettet:
530 <imagedata fileref="music1.ly" role="printfilename" />
535 Für das äußerste Element kann je nach Bedarf @code{mediaobject} oder
536 @code{inlinemediaobject} benutzt werden.
538 @subheading LilyPond-Code einfügen
540 Die Einbindung von LilyPond-Code direkt in der DocBook-Datei ist
541 durch die Benutzung von @code{programlisting} möglich,
542 wobei die Sprache auf @code{lilypond} gesetzt wird:
547 <programlisting language="lilypond" role="fragment verbatim staffsize=16 ragged-right relative=2">
548 \context Staff \with @{
549 \remove Time_signature_engraver
550 \remove Clef_engraver@}
557 Das äußerste Element ist also @code{mediaobject} oder
558 @code{inlinemediaobject}, welches ein @code{textobject} mit dem
559 @code{programlisting} enthält.
561 @subheading Ein DocBook-Dokument übersetzen
563 Der Aufruf von @command{lilypond-book} mit der @file{.lyxml}-Datei
564 erzeugt ein gültiges DocBook-Dokument mit der Erweiterung @file{.xml},
565 welches normal weiterverarbeitet werden kann. Bei Benutzung von
566 @uref{http://@/dblatex@/.sourceforge@/.net@/,dblatex} wird daraus
567 automatisch eine PDF-Datei erzeugt. Für die Erzeugung von HTML (HTML
568 Hilfe, JavaHelp, etc.) können die offiziellen DocBook XSL-Stylesheets
569 benutzt werden. Eventuell müssen dafür allerdings kleinere Anpassungen
573 @node Die Musikfragment-Optionen
574 @section Die Musikfragment-Optionen
575 @translationof Music fragment options
577 Im Folgenden meint @q{LilyPond-Kommando} ein beliebiges in den vorgehenden
578 Abschnitten beschriebenes Kommando, welches ein LilyPond-Fragment in eine Datei
579 einfügt und von @command{lilypond-book} verarbeitet wird. Der Einfachheit
580 halber werden hier alle LilyPond-Kommandos in der Syntax von @LaTeX{}
583 Zu beachten ist, dass die Optionen eines LilyPond-Kommandos von links
584 nach rechts verarbeitet werden. Wenn eine Option also mehrfach angegeben
585 wird, wird nur die letzte benutzt.
587 Die folgenden Optionen können für LilyPond-Kommandos benutzt werden:
590 @item staffsize=@var{ht}
591 Setzt die Höhe einer Notenzeile auf @var{ht}, angegeben in Punkten.
594 Erzeugt Notenzeilen im Flattersatz mit natürlichem Abstand der Noten. In
595 anderen Worten: @code{ragged-right = ##t} wird in das Musikfragment
596 eingefügt. Dies ist die Standardeinstellung für das @code{\lilypond@{@}}
597 Kommando, wenn die Option @code{line-width} nicht angegeben wird.
598 Ebenso ist dies die Standardeinstellung für die @code{lilypond}-Umgebung,
599 wenn die Option @code{fragment}, aber keine Zeilenlänge
600 explizit angegeben ist.
603 Streckt Musikfragmente mit nur einer Notenzeile auf die volle Breite,
604 es wird also @code{ragged-right = ##f} in das Musikfragment eingefügt.
607 @itemx line-width=@var{Breite}\@var{Einheit}
608 Setzt die Breite der Notenzeilen auf @var{Breite}, gemessen in Vielfachen
609 der @var{Einheit}. Als Einheit können die folgenden Zeichenfolgen angegeben
610 werden: @code{cm}, @code{mm}, @code{in} oder @code{pt}. Diese Option hat
611 nur Einfluss auf die Breite von Notenzeilen und Text im Musikfragment, nicht
612 jedoch auf den restlichen Text des Dokuments.
614 Wird diese Option ohne einen Wert angegeben, wird die Zeilenbreite auf
615 einen Standardwert gesetzt, der durch einen heuristischen Algorithmus
618 Wenn die @code{line-width} Option nicht angegeben wird, versucht
619 @command{lilypond-book} einen geeigneten Standardwert für alle
620 @code{lilypond}-Umgebungen zu finden, die die @code{ragged-right} Option
624 Verhindert die Ausgabe der Taktangabe am Anfang des Fragments und schaltet
625 Taktstriche und alle Taktangaben im Fragment ab.
628 Bewirkt, dass @command{lilypond-book} Standardcode um das Fragment herum einfügt, sodass z. B.
635 ohne @code{\layout}, @code{\score}, etc. eingegeben werden kann.
638 Verhindert das Einfügen von Standardcode um das Fragment herum. Dies ist
639 die Standardeinstellung, insofern ist diese Option im Normalfall unnötig.
641 @item indent=@var{Einzug}\@var{Einheit}
642 Setzt den Einzug des ersten Notensystems auf @var{Einzug}, gemessen in
643 Vielfachen der @var{Einheit}. Als Einheit können die folgenden Zeichenfolgen
644 angegeben werden: @code{cm}, @code{mm}, @code{in} oder @code{pt}. Diese
645 Option hat nur Einfluss auf den Einzug von Notenzeilen und Text im
646 Musikfragment, nicht jedoch auf den restlichen Text des Dokuments.
649 Setzt den Einzug des ersten Notensystems auf 0. Diese
650 Option hat nur Einfluss auf den Einzug von Notenzeilen und Text im
651 Musikfragment, nicht jedoch auf den restlichen Text des Dokuments. Dies
652 ist die Standardeinstellung, insofern ist diese Option im Normalfall
656 Verringert die Zeilenlänge des Musikfragments um @math{2*0.4}@dmn{in}
657 und setzt das Fragment in einen Zitat-Block. Der Wert von @q{0.4@dmn{in}}
658 kann durch die @code{exampleindent} Option angepasst werden.
661 Setzt den Betrag, um den das Fragment bei Benutzung der @code{quote}
662 Option eingerückt wird.
665 @itemx relative=@var{n}
666 Benutzt relative Oktavenbezeichnungen. Standardmäßig werden Noten relativ
667 zum mittleren C angegeben. Das optionale ganzzahlige Argument
668 gibt die Oktave der ersten Note an, wobei die Standardeinstellung von
669 @code{1} das mittlere C bedeutet. Die @code{relative} Option macht nur
670 Sinn in Verbindung mit der @code{fragment} Option, weshalb @code{fragment}
671 automatisch durch die Angabe der @code{relative} Option impliziert wird.
672 Eine explizite Angabe der @code{(no)fragment} Option hat keinen Effekt.
675 LilyPond benutzt zur Erzeugung seiner eigenen Dokumentation ebenfalls
676 @command{lilypond-book}. Zu diesem Zweck stehen noch zahlreiche
677 spezialisierte Optionen zur Verfügung:
681 Der LilyPond-Code im LilyPond-Kommando wird zum einen benutzt, um das
682 Musikfragment in eine Grafik mit schönem Notensatz zu konvertieren,
683 andererseits aber auch wörtlich in das Dokument eingefügt. Dies
684 geschieht in einem @q{verbatim}-Block, gefolgt vom Text einer
685 möglicherweise angegebenen @code{intertext} Option@footnote{Die
686 @code{intertext} Option ist noch nicht implementiert.} und der
687 Grafik des tatsächlichen Notensatzes. Diese Option funktioniert nur
688 fehlerhaft, wenn @code{\lilypond@{@}} im Fließtext benutzt wird.
690 Wird @code{verbatim} in Verbindung mit einem @code{lilypondfile}-Kommando
691 benutzt, so ist es auch möglich, nur ein Teil der Datei wörtlich einfügen
692 zu lassen: Wenn die eingebundene LilyPond-Datei ein Kommentar mit dem Inhalt
693 @samp{begin verbatim} (ohne Anführungszeichen) enthält, wird nur der
694 Dateiinhalt ab dieser Position eingefügt. Enthält die Datei mehrere
695 solche Kommentare, wirkt nur das letzte. Analog wird nur der Dateiinhalt
696 bis zu einem etwaigen Kommentar mit dem Inhalt @samp{end verbatim}
697 eingefügt. Im folgenden Beispiel wird das gesamte Musik für die
698 Erzeugung der Grafik im relativen Oktavenmodus interpretiert, der
699 wörtlich in das Dokument kopierte LilyPond-Code zeigt den @code{relative}-Befehl jedoch nicht.
702 \relative c' @{ % begin verbatim
709 erzeugt ein Zitat der Form
717 Wenn Kommentare und Variablen im Zitat, aber nicht im Quelltext
718 übersetzt werden sollen, kann die Umgebungsvariable @code{LYDOC_LOCALEDIR}
719 auf einen Verzeichnispfad gesetzt werden. Das Verzeichnis sollte
720 einen Baum an @file{.mo}-Nachrichtenkatalogen beinhalten mit
721 @code{lilypond-doc} als Domain.
724 (Nur innerhalb von Texinfo-Dateien.) Stellt @code{\version
725 @@w@{"@@version@{@}"@}} an den Beginn des Fragments der Ausgabe mit
729 (Nur innerhalb von Texinfo-Dateien.) Wird @command{lilypond} mit der
730 Kommandozeilenoption @option{--header=@/texidoc} für eine Datei
731 @file{foo@/.ly} und enthält die Datei ein @code{texidoc}-Feld im
732 @code{\header}-Block, so wird dessen Inhalt in die Datei
733 @file{foo@/.texidoc} ausgegeben. Die @code{texidoc} Option veranlasst
734 @code{lilypond-book}, den Inhalt dieser @file{.texidoc} Dateien innerhalb
735 eines Dokumentationsblocks direkt vor dem Musikfragment in das aktuelle
738 Enthält also die Datei @file{foo@/.ly} etwa den LilyPond-Code
742 texidoc = "Dieses Beispiel zeigt eine einzelne Note."
748 und das Texinfo-Dokument @file{text.texinfo}
751 @@lilypondfile[texidoc]@{foo.ly@}
755 so liefert der folgende Aufruf von @code{lilypond-book} das gewünschte
759 lilypond-book --pdf --process="lilypond \
760 -dbackend=eps --header=texidoc" test.texinfo
763 Die meisten Test-Dateien (im @file{input/} Verzeichnis von LilyPond)
764 sind kleine @file{.ly} Dateien von genau dieser Form.
766 Auch die Übersetzung dieser zusätzlichen Kommentare ist möglich:
767 Dazu muss das Texinfo-Dokument den Befehl @code{@@documentlanguage @var{LANG}}
768 und der @code{\header} Block in der Datei @file{foo@/.ly}
769 die Übersetzung im Feld @code{texidoc@var{LANG}} enthalten. Wird nun
770 @command{lilypond} mit der Option @option{--header=@/texidoc@var{LANG}}
771 aufgerufen, so wird der Inhalt der Datei @file{foo@/.texidoc@var{LANG}} anstelle von @file{foo@/.texidoc} eingefügt.
774 (Nur innerhalb von Texinfo-Dateien.) Diese Option wirkt wie die @code{quote} Option, außer dass nur das Musikfragment (und natürlich optional der
775 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.
778 (Nur innerhalb von Texinfo-Dateien.) Diese Option wirkt ähnlich wie die
779 @code{texidoc} Option: Wenn @command{lilypond} mit der Option
780 @option{--header=@/doctitle} aufgerufen wird und die Eingabedatei
781 @file{foo@/.ly} ein Feld @code{doctitle} im @code{\header}-Block enthält,
782 wird dessen Wert in die Datei @file{foo@/.doctitle} geschrieben. Wird die
783 @code{doctitle} Option für ein Musikfragment benutzt, so wird der Inhalt
784 dieser Datei, der eine einzelne Textzeile sein sollte, im Texinfo-Dokument
785 als @code{@@lydoctitle @var{Text}} eingefügt. @code{@@lydoctitle} muss
786 allerdings in Ihrem Texinfo-Dokument als Makro selbst definiert werden.
787 Die Übersetzung funktioniert völlig analog zu @code{texidoc}.
790 Nur für Texinfo-Ausgabe: Kommentare und Variablenbezeichnungen im
791 zitierten Quelltext des Schnipsel werden nicht übersetzt.
794 Wenn eine LilyPond-Datei mittels @code{\lilypondfile} und dieser Option
795 eingebunden wird, wird der Dateiname (ohne die Pfadangabe) unmittelbar vor
796 dem Musikfragment ausgegeben. In HTML-Dateien ist er außerdem ein Link
797 auf die LilyPond-Datei.
802 @node lilypond-book aufrufen
803 @section @command{lilypond-book} aufrufen
804 @translationof Invoking lilypond-book
806 @command{lilypond-book} erzeugt abhängig vom Ausgabeformat eine Datei mit
807 einer der folgenden Dateierweiterungen: @file{.tex}, @file{.texi},
808 @file{.html} oder @file{.xml}. Alle @file{.tex}, @file{.texi} und
809 @file{.xml} Dateien müssen noch mit den entsprechenden Programmen (@LaTeX{},
810 DocBook, etc.) weiter verarbeitet werden, um druckfähige Dateien zu erhalten.
813 @subheading Formatabhängige Anweisungen
815 @subsubheading @LaTeX{}
817 Es existieren zwei Methoden, Ihr @LaTeX{}-Dokument weiter zu verarbeiten,
818 um zu einer druck- oder publikationsfähigen Datei zu gelangen:
819 Zum einen die direkte Erzeugung einer PDF-Datei mit PDF@LaTeX{}, zum
820 anderen die Erzeugung einer DVI daraus einer PostScript-Datei mittels
821 @LaTeX{} und einem DVI-nach-PostScript Konverters wie @command{dvips}.
822 Die erste Methode ist einfacher und daher empfehlenswert.@footnote{Manchmal
823 kann eine Datei entweder von PDF@LaTeX{} oder von @LaTeX{} nicht korrekt
824 verarbeitet werden, weshalb hier beide Methoden beschrieben werden.} Welche
825 Methode auch immer benutzt wird, die Konvertierung zwischen PostScript und
826 PDF kann leicht mit Hilfsprogrammen wie @command{ps2pdf} und @command{pdf2ps}
827 (aus dem Ghostscript Paket) erfolgen.
829 Um eine PDF-Datei mittels PDF@LaTeX{} zu erzeugen, kann folgendermaßen
833 lilypond-book --pdf Ihre_Datei.pdftex
834 pdflatex Ihre_Datei.tex
837 @cindex Konturschriften
838 @cindex Type1 Schriften
840 @cindex Aufruf von dvips
841 Um eine PDF-Datei mittels @LaTeX{}/@command{dvips}/@command{ps2pdf} zu
842 erhalten, sind folgende Befehle nötig:
845 lilypond-book Ihre_Datei.lytex
847 dvips -Ppdf Ihre_Datei.dvi
852 Die @file{.dvi}-Datei, die beim Aufruf von @command{latex} erzeugt wird,
853 scheint keine Notenköpfe zu enthalten, was in Ordnung ist. Wenn Sie die
854 Datei wie beschrieben weiter verarbeiten, erscheinen die Notenköpfe korrekt
855 in den @file{.ps} und @file{.pdf} Dateien.
857 Der Aufruf von @command{dvips} kann einige Warnungen über fehlende
858 Schriftarten ausgeben. Auch dies ist in Ordnung und kann ignoriert werden.
860 Wenn Sie in der @LaTeX{}-Datei das Papierformat auf Querformat eingestellt
861 haben, vergessen Sie nicht auf die @code{-t landscape} Option beim
862 Aufruf von @command{dvips}.
865 @subsubheading Texinfo
867 Um ein von @command{lilypond-book} erzeugtes Texinfo-Dokument zu
868 verarbeiten, gehen Sie wie für alle anderen Texinfo-Dokumente vor:
869 Rufen Sie -- abhängig vom gewünschten Ausgabeformat -- eines der Programme
870 @command{texi2pdf}, @command{texi2dvi}, @command{makeinfo} oder
871 @command{texi2html} auf.
874 @xref{Format with texi2dvi, , , texinfo, GNU Texinfo}, und @ref{Creating an Info File, , , texinfo, GNU Texinfo}.
877 Die Dokumentation von Texinfo liefert dazu nähere Informationen.
881 @subheading Optionen auf der Kommandozeile
883 @command{lilypond-book} unterstützt die folgenden Kommandozeilenoptionen:
886 @item -f @var{Format}
887 @itemx --format=@var{Format}
888 Gibt das Format des Eingabedokuments an: @code{html}, @code{latex},
889 @code{texi} (Standardeinstellung), @code{texi-html} oder @code{docbook}.
890 Ist diese Option nicht angegeben, versucht @command{lilypond-book} das
891 Format anhand des Dateinamens zu bestimmen. Im Moment bedeutet @code{texi}
892 praktisch dasselbe wie @code{texi-html}.
894 @c This complicated detail is not implemented, comment it out -jm
896 The @code{texi} document type produces a Texinfo file with music
897 fragments in the printed output only. For getting images in the HTML
898 version, the format @code{texi-html} must be used instead.
901 @item -F @var{Filter}
902 @itemx --filter=@var{Filter}
903 Leitet die Musikfragmente durch das Programm @var{filter} anstatt sie
904 mit Lilypond zu einer Grafik zu verarbeiten. @option{--filter} und
905 @option{--process} kann nicht gleichzeigt benutzt werden. Beispielaufruf:
908 lilypond-book --filter='convert-ly --from=2.0.0 -' Mein-Buch.tely
913 Gibt eine kurze Hilfemeldung aus.
916 @itemx --include=@var{Pfad}
917 Fügt @var{Pfad} zu den Include-Pfaden hinzu. @command{lilypond-book} sucht
918 auch in allen Include-Pfaden nach bereits erstellten Grafiken für die
919 Musikfragmente. Wird das aktuelle Fragment gefunden und hat sich seit der
920 letzten Erstellung nicht geändert, wird es nicht erneut erzeugt. Bei manchen
921 der Programme zur Weiterverarbeitung wie etwa @command{makeinfo} oder
922 @command{latex} muss dieselbe @code{-I @var{Pfad}} Option angegeben werden,
923 damit das entsprechende Programm die Grafiken ebenso findet.
925 @item -o @var{Verzeichnis}
926 @itemx --output=@var{Verzeichnis}
927 Erzeugt die Ausgabedateien in @var{Verzeichnis}. Der Aufruf von
928 @command{lilypond-book} erzeugt zahlreiche kleine Dateien, die von
929 LilyPond, @command{latex}, @command{makeinfo} etc. dann weiter benützt
930 werden. Um zu vermeiden, dass das Quellenverzeichnis durch diese
931 Dateien unübersichtlich wird, kann die @option{--output} Option benutzt
932 werden. Vor dem Aufruf von @command{latex} oder @command{makeinfo}
933 sollten Sie in dieses Verzeichnis wechseln.
936 lilypond-book --output=out IhreDatei.lytex
941 @itemx --skip-lily-check
942 Nicht mit einer Fehlermeldung abbrechen, wenn keine Ausgabe von LilyPond
943 gefunden wird. Dies wird benutzt für Dokumentation ohne Grafiken.
945 @itemx --skip-png-check
946 Nicht mit einer Fehlermeldung abbrechen, wenn für die EPS-Dateien keine
947 PNG-Grafiken gefunden werden. Dies wird benutzt für Dokumentation ohne
950 @itemx --lily-output-dir=@var{Verzeichnis}
951 Schreibt @file{lily-XXX} Dateien nach @var{Verzeichnis} und erzeugt
952 im mit @code{--output} angegebenen Verzeichnis Verknüpfungen darauf.
953 Diese Option ist nützlich, um Zeit zu sparen, wenn Dokumente in
954 verschiedenen Verzeichnissen viele identische Musikfragmente
957 @itemx --info-images-dir=@var{Verzeichnis}
958 Formatiert die Texinfo-Ausgabe dergestalt, dass Info in @var{Verzeichnis}
959 nach den Grafiken zu den Musikfragmenten sucht.
961 @itemx --latex-program=@var{Programm}
962 Führt @command{Programm} anstelle von @command{latex} aus. Dies ist
963 nützlichen, wenn das Dokument mit einer anderen @LaTeX{}-Variante
964 wie etwa @command{xelatex} verarbeitet werden soll.
966 @itemx --left-padding=@var{Einrückung}
967 Fügt @var{Einrückung} als zusätzlichen Einzug in die EPS-Box ein.
968 @var{Einrückung} wird in Millimetern angegeben, die Standardeinstellung
969 is 3.0 Millimeter. Diese Option kann benutzt werden, wenn die Notenzeilen
970 über den Rand des Dokuments hinausstehen.
972 Die Breite eines eng ausgeschnittenen Notensystems kann variieren
973 aufgrund von Notationselementen, die über den linken Rand hinausstehen,
974 wie etwa Taktzahlen und Bezeichnungen der Instrumente. Diese Option
975 verkürzt die Notenzeile und verschiebt sie um denselben Betrag nach
979 @item -P @var{Kommando}
980 @itemx --process=@var{Kommando}
981 Verarbeitet LilyPond-Fragmente mit @var{Kommando} anstelle des
982 Standardbefehls @code{lilypond}. @code{--filter} und @code{--process}
983 können nicht gleichzeitig angegeben werden.
986 Erzeugt PDF-Dateien mit PDF@LaTeX{}.
990 Gibt ausführliche informative Meldungen aus.
994 Gibt die Versionsnummer aus.
999 Der Texinfo-Befehl @code{@@pagesizes} wird ignoriert. Ebenso werden
1000 @LaTeX{}-Befehle ignoriert, die den Seitenrand oder die Zeilenlänge
1001 nach der Dokumentpräambel verändern.
1003 Nur der erste @code{\score}-Block eines LilyPond-Fragments wird verarbeitet.
1007 @section Dateiendungen
1008 @translationof Filename extensions
1010 Für die Eingabedatei kann zwar jede beliebige Dateinamenserweiterung benutzt
1011 werden, allerdings muss bei Verwendung einer nicht bekannten Erweiterung
1012 das Ausgabeformat explizit an @command{lilypond-book} angegeben werden.
1013 Details dazu finden sich im Abschnitt @ref{lilypond-book aufrufen}.
1014 Wird eine bekannte Erweiterung benutzt, wählt @command{lilypond-book}
1015 automatisch das richtige Ausgabeformat basierend auf der Erweiterung der
1019 @multitable @columnfractions .2 .5
1020 @item @strong{Erweiterung} @tab @strong{Ausgabeformat}
1022 @item @file{.html} @tab HTML
1023 @item @file{.itely} @tab Texinfo
1024 @item @file{.latex} @tab @LaTeX{}
1025 @item @file{.lytex} @tab @LaTeX{}
1026 @item @file{.lyxml} @tab DocBook
1027 @item @file{.tely} @tab Texinfo
1028 @item @file{.tex} @tab @LaTeX{}
1029 @item @file{.texi} @tab Texinfo
1030 @item @file{.texinfo} @tab Texinfo
1031 @item @file{.xml} @tab HTML
1035 Wird dieselbe Erweiterung für die Eingabedatei wie für die Ausgabedatei
1036 benutzt und befindet sich die Eingabedatei im aktuellen Arbeitsverzeichnis
1037 von @command{lilypond-book}, muss die @code{--output} Option für
1038 @command{lilypond-book} benutzt werden. Anderenfalls würde
1039 @command{lilypond-book} ja die Eingabedatei überschreiben, weshalb das
1040 Programm in diesem Fall mit einer Fehlermeldung wie @qq{Fehler: Ausgabe
1041 würde Eingabedatei überschreiben; verwenden Sie --output.} abbricht.
1044 @node Alternative Methoden, Text und Musik zu kombinieren
1045 @section Alternative Methoden, Text mit Musik zu kombinieren
1046 @translationof Alternate methods of mixing text and music
1048 Dieser Abschnitt stellt Methoden vor, wie Text und Musik auf andere
1049 Weise kombiniert werden können als dies durch @command{lilypond-book}
1050 automatisiert geschieht.
1054 * Viele Zitate aus einer langen Partitur::
1055 * LilyPond-Noten in OpenOffice.org integrieren::
1056 * LilyPond-Noten in andere Programme integrieren::
1059 @node Viele Zitate aus einer langen Partitur
1060 @subsection Viele Zitate aus einer langen Partitur
1061 @translationof Many quotes from a large score
1063 Wenn aus einer großen Partitur viele kleine Fragmente eingefügt
1064 werden sollen, kann dazu das @q{clip systems} Feature benutzt werden.
1065 Siehe @ruser{Notationsfragmente extrahieren}.
1068 @node LilyPond-Noten in OpenOffice.org integrieren
1069 @subsection LilyPond-Noten in OpenOffice.org integrieren
1070 @translationof Inserting LilyPond output into OpenOffice.org
1072 Musik im LilyPond-Format kann in OpenOffice.org eingefügt werden mittels
1073 @uref{http://@/ooolilypond@/.sourceforge@/.net@/,OOoLilyPond}.
1076 @node LilyPond-Noten in andere Programme integrieren
1077 @subsection LilyPond-Noten in andere Programme integrieren
1078 @translationof Inserting LilyPond output into other programs
1080 Im die Ausgabe von LilyPond in anderen Programmen einzufügen,
1081 sollte @code{lilypond} benutzt werden. Jedes Beispiel muss
1082 getrennt manuell erzeugt und ins Dokument eingefügt werden;
1083 für letzteres schlagen Sie bitte im Handbuch Ihrer
1084 Textverarbeitungs-Software nach. Die meisten Programme
1085 unterstützen das Einfügen von Grafiken im @file{PNG}-, @file{EPS}-
1086 oder @file{PDF}-Format.
1088 Um den leeren Rand um die Notenzeilen zu verringern, können folgende
1089 Einstellungen benutzt werden:
1097 bookTitleMarkup = ##f
1098 scoreTitleMarkup = ##f
1104 Eine @file{EPS}-Datei kann mit folgendem Befehl erzeugt werden:
1107 lilypond -dbackend=eps -dno-gs-load-fonts -dinclude-eps-fonts Dateiname.ly
1111 eine @file{PNG}-Datei mittels:
1114 lilypond -dbackend=eps -dno-gs-load-fonts -dinclude-eps-fonts --png Dateiname.ly