1 @c -*- coding: utf-8; mode: texinfo; documentlanguage: de -*-
4 Translation of GIT committish: 3d7ffa1f82bb44673134b28becf7898482fe7316
6 When revising a translation, copy the HEAD committish of the
7 version that you are working on. For details, see the Contributors'
8 Guide, node Updating translation committishes..
13 @c Translators: Reinhold Kainhofer
14 @c Translation checkers: Till Paala
18 @chapter @command{lilypond-book}: Noten in den Text integrieren
19 @translationof LilyPond-book
21 Wenn Sie in ein Dokument Grafiken Ihres Musiksatzes einfügen möchten, so
22 können Sie genauso machen, wie Sie andere Grafiken einfügen würden: Die
23 Bilder werden getrennt vom Dokument im PostScript- oder PNG-Format erstellt
24 und können dann in @LaTeX{} oder HTML inkludiert werden.
26 @command{lilypond-book} automatisiert diesen Prozess: Dieses
27 Programm extrahiert Musik-Schnipsel aus Ihrem Dokument,
28 ruft @command{lilypond} auf und fügt die resultierenden Bilder
29 in Ihr Dokument ein. Die Länge der Zeilen und die Schriftgroße
30 werden dabei Ihrem Dokument angepasst.
32 @command{lilypond-book} ist ein eigenständiges Programm und wird
33 üblicherweise von der Kommandozeile aufgerufen. Nähere Informationen
34 hierzu finden sich in @ref{Benutzung auf der Kommandozeile}. Wenn Sie MacOS 10.3
35 oder 10.4 benutzen und Probleme mit @code{lilypond-book} haben, lesen
37 Einrichtung für MacOS X
38 @c @ref{Einrichtung für MacOS X}.
40 Dieses Vorgehen kann bei @LaTeX{}, HTML, Texinfo oder DocBook Dokumenten
49 @cindex Dokument, Musik einfügen in
50 @cindex HTML, Musik in
51 @cindex Texinfo, Musik in
52 @cindex DocBook, Musik in
53 @cindex @LaTeX{}, Musik in
57 * Ein musikwissenschaftlicher Text als Beispiel::
58 * Noten in Text integrieren::
59 * Die Musikfragment-Optionen::
60 * lilypond-book aufrufen::
62 * Alternative Methoden, Text und Musik zu kombinieren::
65 @node Ein musikwissenschaftlicher Text als Beispiel
66 @section Ein musikwissenschaftlicher Text als Beispiel
67 @translationof An example of a musicological document
70 @cindex Musikwissenschaft
72 Zahlreiche Texte enthalten Musikbeispiele: musikwissenschaftliche
73 Abhandlungen, Liederbücher oder Handbücher wie dieses. Solche
74 Texte können händisch erzeugt werden, indem einfach die Musikbeispiele
75 als Grafik (PostScript, PNG, GIF, etc.) im Textverarbeitungsprogramm
76 eingefügt werden. Für HTML, @LaTeX{}, Texinfo und DocBook Dokumente
77 existiert jedoch ein Weg, dies automatisiert durchzuführen.
79 Das Programm @code{lilypond-book} extrahiert die Musikfragmente aus
80 dem Dokument, formatiert sie automatisiert in eine Grafik und fügt die
81 resultierenden Notenbeispiele dann wieder in das Dokument ein. Dies soll
82 hier an einem einfachen @LaTeX{}-Beispiel verdeutlicht werden. Das Beispiel
83 selbst enthält schon Erklärungen, sodass wir es hier nicht weiter diskutieren
90 \documentclass[a4paper]{article}
94 Dokumente für \verb+lilypond-book+ können Musik und Text nach Belieben
95 kombinieren. Zum Beispiel:
99 c2 g'2 \times 2/3 { f8 e d } c'2 g4
103 Optionen für \verb+lilypond+ werden dabei in eckige Klammern gesetzt.
105 \begin[fragment,quote,staffsize=26,verbatim]{lilypond}
109 Größere Beispiele können auch in einer eigenständigen Datei gespeichert
110 und dann mit \verb+\lilypondfile+ eingebunden werden.
112 \lilypondfile[quote,noindent]{screech-boink.ly}
114 (Falls nötig kann screech-boink.ly durch eine beliebige andere .ly
115 Datei im selben Verzeichnis wie diese Datei ersetzt werden.)
121 @subheading Verarbeitung
123 Speichern Sie den obigen @LaTeX{} Quellcode in eine Datei @file{lilybook.lytex}
124 und führen Sie dann in der Kommandozeile folgende Befehle aus:
126 @c keep space after @version{} so TeX doesn't choke
128 lilypond-book --output=out --pdf lilybook.lytex
129 @emph{lilypond-book (GNU LilyPond) @version{} }
130 @emph{Reading lilybook.lytex...}
131 @emph{..(viele Ausgabezeilen entfernt)..}
132 @emph{Compiling lilybook.tex...}
135 @emph{..(viele Ausgabezeilen entfernt)..}
137 @emph{(Ersetzen Sie @command{xpdf} durch Ihren PDF-Betrachter)}
140 Die Ausführung von @command{lilypond-book} und @command{latex} erzeugt
141 zahlreiche temporäre Dateien, die das Arbeitsverzeichnis unnötig
142 vollstopfen würden. Daher empfiehlt sich die Benutzung der @code{--output=@var{dir}}
143 Option, wodurch die Dateien im Unterverzeichnis @file{dir} erzeugt werden.
145 Das Endresultat des obigen @LaTeX{} Beispiels ist im nächsten Abschnitt
146 zu sehen.@footnote{Da dieses Handbuch mit Texinfo erzeugt wurde,
147 kann sich das Aussehen des Beispiels leicht von dem mit @LaTeX{}
148 erzeugten unterscheiden.}
154 Dokumente für @command{lilypond-book} können Musik und Text nach Belieben
155 kombinieren. Zum Beispiel:
159 c2 g'2 \times 2/3 { f8 e d } c'2 g4
163 Optionen für @command{lilypond} werden dabei in eckige Klammern gesetzt.
165 @lilypond[fragment,quote,staffsize=26,verbatim]
169 Größere Beispiele können auch in einer eigenständigen Datei gespeichert
170 und dann mit @code{\lilypondfile} eingebunden werden.
172 @lilypondfile[quote,noindent]{screech-boink.ly}
179 @node Noten in Text integrieren
180 @section Noten in Text integrieren
181 @translationof Integrating music and text
183 In diesem Abschnitt soll die Integration von LilyPond mit den
184 verschiedenen Dateiformaten detailliert erläutert werden.
199 @LaTeX{} ist der de-facto Standard zur Publikation von wissenschaftlichen Texten
200 in Naturwissenschaft und Technik. Es basiert auf dem Schriftsetzer @TeX{},
201 der die bestmögliche Typographie erzeugt.
203 Siehe die @uref{http://@/www@/.ctan@/.org/@/tex@/-archive/@/info/@/lshort/@/german/,
204 @emph{@LaTeX{}2e-Kurzbeschreibung}} für eine Einführung in die
205 Benutzung von @LaTeX{}.
207 Musikbeispiele können eingegeben werden als
210 \begin[Optionen,kommen,]@{lilypond@}
211 IHR LILYPOND QUELLCODE
219 \lilypondfile[Optionen,kommen,hier]@{@var{Dateiname}@}
226 \lilypond@{ IHR LILYPOND QUELLCODE @}
229 Zusätzlich kann mit @code{\lilypondversion} die benutzte Versionsnummer
230 von LilyPond angezeigt werden. Der Aufruf von @command{lilypond-book}
231 liefert eine Datei, die dann mit @LaTeX{} weiter verarbeitet werden kann.
233 Dies soll hier an einigen Beispielen gezeigt werden. Die @code{lilypond}-Umgebung
236 \begin[quote,fragment,staffsize=26]@{lilypond@}
244 @lilypond[quote,fragment,staffsize=26]
251 \lilypond[quote,fragment,staffsize=11]@{<c' e' g'>@}
257 @lilypond[quote,fragment,staffsize=11]{<c' e' g'>}
260 Innerhalb des @code{\lilypond@{@}} Befehls dürfen keine geschwungenen
261 Klammern @code{@{} oder @code{@}} vorkommen, weshalb dieser Befehl
262 nur mit der @code{fragment} Option Sinn macht.
264 Die Standardzeilenlänge wird bestimmt, indem die Angaben in der Dokumentpräambel,
265 also dem Teil der @LaTeX{} Datei vor dem @code{\begin@{document@}},
266 analysiert werden. Der @command{lilypond-book} Befehl sendet diese
267 Angaben an @LaTeX{}, um herauszufinden, wie breit der Text tatsächlich
268 ist. Die Breite der Notenzeilen wird dann an diese Textbreite angepasst.
269 Ein derartig heuristischer Algorithmus kann natürlich auch versagen,
270 wobei man in diesem Fall die Breite auch explizit durch die
271 @code{line-width} Option des @code{\lilypond@{@}} oder @code{\begin@{lilypond@}}
272 Befehls angeben kann.
274 @cindex titling and lilypond-book
275 @cindex \header in @LaTeX{} documents
277 Jedes Musikbeispiele ruft die folgenden Makros auf, wenn sie vom Benutzer
281 @item @code{\preLilyPondExample} -- wird vor der Musik aufgerufen,
283 @item @code{\postLilyPondExample} -- wird nach der Musik aufgerufen,
285 @item @code{\betweenLilyPondSystem[1]} -- wird zwischen den einzelnen
286 Systemen aufgerufen, wenn @code{lilypond-book} das Beispiel in verschiedene
287 PostScript Dateien getrennt hat. Dieser @LaTeX{}-Befehl muss so definiert
288 werden, dass er genau ein Argument erhält, nämlich die Zahl der bereits
289 in @LaTeX{} eingefügten Dateien dieses Beispiels. Als Standard wird einfach
290 ein @code{\linebreak} eingefügt.
296 @cindex Latex, Feta Schriftart
299 Um Zeichen wie Auflösungszeichen, Kreuze, Fermaten etc. aus der Feta-Schriftart
300 von LilyPond in @LaTeX{} einzufügen, muss @code{\input@{titledefs@}} benutzt werden,
301 wodurch dann der Befehl @code{\fetachar} zur Verfügung steht.
304 \documentclass[a4paper]@{article@}
315 Die Namen der Symbole sind in der Datei @file{feta20.tex} definiert. Sie finden
316 den Pfad zu dieser Datei mit dem Befehl
326 Manchmal ist es nötig, Musikelemente wie Halte- oder Bindebögen so darzustellen,
327 als ob sie am Ende des Musikausschnitten noch weitergehen würden. Eine solche
328 Ausgabe kann erreicht werden, indem ein Zeilenumbruch in die Notenzeile
329 eingefügt wird und die Ausgabe der folgenden Notenzeile unterdrückt wird.
331 In @LaTeX{} wird dazu der Befehl @code{\betweenLilyPondSystem} einfach derartig
332 programmiert, dass die Ausgabe der einzelnen Notensysteme abgebrochen wird,
333 sobald die gewünschte Anzahl an Systemen erreicht ist. Da
334 @code{\betweenLilyPondSystem} zum ersten Mal nach dem ersten System aufgerufen
335 wird, ist die Ausgabe nur eines Systems trivial.
338 \def\betweenLilyPondSystem#1@{\endinput@}
340 \begin[fragment]@{lilypond@}
341 c'1\( e'( c'~ \break c' d) e f\)
345 Um eine größere Zahl an System nötig, dann muss dementsprechend eine
346 @TeX{}-Bedingung vor dem @code{\endinput} benutzt werden:
349 \def\betweenLilyPondSystem#1@{
350 \ifnum##1<2\else\endinput\fi
354 Dieses Beispiel bricht nach genau zwei ausgegebenen Notenzeilen ab.
355 Für eine andere Anzahl braucht nur @q{2} durch die entsprechende
356 Anzahl ersetzt werden.
358 Die Definition von @code{\betweenLilyPondSystem} bleibt gültig,
359 bis @TeX{} die aktuelle Umgebung in @LaTeX{} verlässt oder der
360 Befehl durch eine neue Definition überschrieben wird.
361 Dies kann etwa folgendermaßen in der @LaTeX{}-Datei geschehen:
364 \let\betweenLilyPondSystem\undefined
367 Obige Definition von @code{\betweenLilyPondSystem} kann durch die
368 Definition eines @TeX{}-Makros auch verallgemeinert werden,
371 \def\onlyFirstNSystems#1@{
372 \def\betweenLilyPondSystem##1@{\ifnum##1<#1\else\endinput\fi@}
377 wobei diesem Makro @code{\onlyFirstNSystems} einfach die Anzahl der
378 gewünschten Systeme übergeben wird:
381 \onlyFirstNSystems@{3@}
382 \begin@{lilypond@}...\end@{lilypond@}
383 \onlyFirstNSystems@{1@}
384 \begin@{lilypond@}...\end@{lilypond@}
388 @command{lilypond-book} stellt auch zahlreiche Kommandozeilen-Optionen zur
389 Verfügung. Für eine Liste dieser Optionen und andere hilfreiche Details zur
390 Verarbeitung von @LaTeX{}-Dokumenten, siehe @ref{lilypond-book aufrufen}.
397 @translationof Texinfo
399 Texinfo ist das Standard-Dokumentationsformat des GNU Projekts. Ein Beispiel
400 für ein Dokument im Texinfo Format ist dieses Handbuch, wobei die HTML-, PDF- und
401 Info-Versionen alle aus demselben Texinfo Dokument erzeugt werden.
403 In der Eingabedatei wir Musik eingegeben als
406 @@lilypond[Optionen,kommen,hier]
407 IHR LILYPOND QUELLCODE
415 @@lilypond[Optionen,kommen,hier]@{ IHR LILYPOND QUELLCODE @}
422 @@lilypondfile[Optionen,kommen,hier]@{@var{Dateiname}@}
425 Zusätzlich kann mit @code{@@lilypondversion} die aktuelle Versionsnummer
426 von LilyPond angezeigt werden.
427 Wenn @command{lilypond-book} eine derartige Datei verarbeitet,
428 wird eine Texinfo-Datei mit der Erweiterung @file{.texi} erzeugt,
429 die @code{@@image} Befehle für die Ausgabe nach HTML, Info und PDF
430 enthält. @command{lilypond-book} erzeugt die entsprechenden Grafiken
431 der Musikbeispiele im EPS- und PDF-Format für die Ausgabe nach PDF
432 und im PNG-Format für die Ausgabe nach HTML und Info.
434 Hier sollen zwei einfache Beispiele gezeigt werden. Eine @code{lilypond} Umgebung
452 @@lilypond[fragment,staffsize=11]@{<c' e' g'>@}
458 @lilypond[fragment,staffsize=11]{<c' e' g'>}
460 Im Gegensatz zu @LaTeX{} erzeugt @code{@@lilypond@{...@}} allerdings keine Grafik
461 im Fließtext, sondern setzt sie immer in einen eigenen Absatz.
468 Musik wird eingegeben als
471 <lilypond fragment relative=2>
472 \key c \minor c4 es g2
477 @command{lilypond-book} erzeugt dann daraus eine HTML-Datei mit den entsprechenden
478 @code{<image>} Tags für die Musikbeispiele in jeweils einem eigenen Absatz.
480 @lilypond[fragment,relative=2]
481 \key c \minor c4 es g2
484 Für Grafiken im Fließtext kann @code{<lilypond ... />} benutzt werden, wobei
485 die Optionen durch einen Doppelpunkt von der Musik getrennt angegeben werden.
488 Musik <lilypond relative=2: a b c/> in derselben Zeile.
491 Um Dateien mit Musik einzubinden, kann folgendermaßen vorgegangen werden:
494 <lilypondfile @var{Option1} @var{Option2} ...>@var{Dateiname}</lilypondfile>
497 Zusätzlich gibt @code{<lilypondversion/>} die aktuelle Versionsnummer
503 @translationof DocBook
506 Bei der Einbindung von Musik im LilyPond-Format in DocBook soll die
507 Konformität unseres DocBook Dokuments erhalten bleiben und damit
508 die Bearbeiten mit DocBook-Editoren sowie die Validierung weiter
509 möglich bleiben. Aus diesem Grund werden in DocBook keine eigenen Tags
510 wie in HTML benutzt, sondern die von den vorhandenen DocBook-Elementen
511 vorgegebenen Konventionen entsprechend benützt.
513 @subheading Definitionen
515 Für die Einbindung von LilyPond Code werden in allen Fällen die
516 @code{mediaobject} und @code{inlinemediaobject} Elemente benutzt,
517 die unsere Beispiele in einem eigenen Absatz oder im Fließtext
518 einfügen. Die Optionen zur Formatierung mit LilyPond werden dabei
519 in der @code{role} Eigenschaft des innersten Elements angegeben,
520 wie im nächsten Abschnitt gezeigt wird. Die DocBook Datei, die
521 dann von @command{lilypond-book} verarbeitet wird, sollte der Klarheit
522 halber die Dateierweiterung @file{.lyxml} (jedenfalls nicht
523 @file{.xml}) besitzen.
525 @subheading Eine LilyPond-Datei einfügen
527 Dies ist der einfachste Fall: Die LilyPond-Datei besitzt die Erweiterung
528 @file{.ly} und wird einfach als @code{imageobject} eingebettet:
533 <imagedata fileref="music1.ly" role="printfilename" />
538 Für das äußerste Element kann je nach Bedarf @code{mediaobject} oder
539 @code{inlinemediaobject} benutzt werden.
541 @subheading LilyPond-Code einfügen
543 Die Einbindung von LilyPond-Code direkt in der DocBook-Datei ist
544 durch die Benutzung von @code{programlisting} möglich,
545 wobei die Sprache auf @code{lilypond} gesetzt wird:
550 <programlisting language="lilypond" role="fragment verbatim staffsize=16 ragged-right relative=2">
551 \context Staff \with @{
552 \remove Time_signature_engraver
553 \remove Clef_engraver@}
560 Das äußerste Element ist also @code{mediaobject} oder
561 @code{inlinemediaobject}, welches ein @code{textobject} mit dem
562 @code{programlisting} enthält.
564 @subheading Ein DocBook-Dokument übersetzen
566 Der Aufruf von @command{lilypond-book} mit der @file{.lyxml}-Datei
567 erzeugt ein gültiges DocBook-Dokument mit der Erweiterung @file{.xml},
568 welches normal weiterverarbeitet werden kann. Bei Benutzung von
569 @uref{http://@/dblatex@/.sourceforge@/.net@/,dblatex} wird daraus
570 automatisch eine PDF-Datei erzeugt. Für die Erzeugung von HTML (HTML
571 Hilfe, JavaHelp, etc.) können die offiziellen DocBook XSL-Stylesheets
572 benutzt werden. Eventuell müssen dafür allerdings kleinere Anpassungen
576 @node Die Musikfragment-Optionen
577 @section Die Musikfragment-Optionen
578 @translationof Music fragment options
580 Im Folgenden meint @q{LilyPond-Kommando} ein beliebiges in den vorgehenden
581 Abschnitten beschriebenes Kommando, welches ein LilyPond-Fragment in eine Datei
582 einfügt und von @command{lilypond-book} verarbeitet wird. Der Einfachheit
583 halber werden hier alle LilyPond-Kommandos in der Syntax von @LaTeX{}
586 Zu beachten ist, dass die Optionen eines LilyPond-Kommandos von links
587 nach rechts verarbeitet werden. Wenn eine Option also mehrfach angegeben
588 wird, wird nur die letzte benutzt.
590 Die folgenden Optionen können für LilyPond-Kommandos benutzt werden:
593 @item staffsize=@var{ht}
594 Setzt die Höhe einer Notenzeile auf @var{ht}, angegeben in Punkten.
597 Erzeugt Notenzeilen im Flattersatz mit natürlichem Abstand der Noten. In
598 anderen Worten: @code{ragged-right = ##t} wird in das Musikfragment
599 eingefügt. Dies ist die Standardeinstellung für das @code{\lilypond@{@}}
600 Kommando, wenn die Option @code{line-width} nicht angegeben wird.
601 Ebenso ist dies die Standardeinstellung für die @code{lilypond}-Umgebung,
602 wenn die Option @code{fragment}, aber keine Zeilenlänge
603 explizit angegeben ist.
606 Streckt Musikfragmente mit nur einer Notenzeile auf die volle Breite,
607 es wird also @code{ragged-right = ##f} in das Musikfragment eingefügt.
610 @itemx line-width=@var{Breite}\@var{Einheit}
611 Setzt die Breite der Notenzeilen auf @var{Breite}, gemessen in Vielfachen
612 der @var{Einheit}. Als Einheit können die folgenden Zeichenfolgen angegeben
613 werden: @code{cm}, @code{mm}, @code{in} oder @code{pt}. Diese Option hat
614 nur Einfluss auf die Breite von Notenzeilen und Text im Musikfragment, nicht
615 jedoch auf den restlichen Text des Dokuments.
617 Wird diese Option ohne einen Wert angegeben, wird die Zeilenbreite auf
618 einen Standardwert gesetzt, der durch einen heuristischen Algorithmus
621 Wenn die @code{line-width} Option nicht angegeben wird, versucht
622 @command{lilypond-book} einen geeigneten Standardwert für alle
623 @code{lilypond}-Umgebungen zu finden, die die @code{ragged-right} Option
627 Verhindert die Ausgabe der Taktangabe am Anfang des Fragments und schaltet
628 Taktstriche und alle Taktangaben im Fragment ab.
631 Bewirkt, dass @command{lilypond-book} Standardcode um das Fragment herum einfügt, sodass z. B.
638 ohne @code{\layout}, @code{\score}, etc. eingegeben werden kann.
641 Verhindert das Einfügen von Standardcode um das Fragment herum. Dies ist
642 die Standardeinstellung, insofern ist diese Option im Normalfall unnötig.
644 @item indent=@var{Einzug}\@var{Einheit}
645 Setzt den Einzug des ersten Notensystems auf @var{Einzug}, gemessen in
646 Vielfachen der @var{Einheit}. Als Einheit können die folgenden Zeichenfolgen
647 angegeben werden: @code{cm}, @code{mm}, @code{in} oder @code{pt}. Diese
648 Option hat nur Einfluss auf den Einzug von Notenzeilen und Text im
649 Musikfragment, nicht jedoch auf den restlichen Text des Dokuments.
652 Setzt den Einzug des ersten Notensystems auf 0. Diese
653 Option hat nur Einfluss auf den Einzug von Notenzeilen und Text im
654 Musikfragment, nicht jedoch auf den restlichen Text des Dokuments. Dies
655 ist die Standardeinstellung, insofern ist diese Option im Normalfall
659 Verringert die Zeilenlänge des Musikfragments um @math{2*0.4}@dmn{in}
660 und setzt das Fragment in einen Zitat-Block. Der Wert von @q{0.4@dmn{in}}
661 kann durch die @code{exampleindent} Option angepasst werden.
664 Setzt den Betrag, um den das Fragment bei Benutzung der @code{quote}
665 Option eingerückt wird.
668 @itemx relative=@var{n}
669 Benutzt relative Oktavenbezeichnungen. Standardmäßig werden Noten relativ
670 zum mittleren C angegeben. Das optionale ganzzahlige Argument
671 gibt die Oktave der ersten Note an, wobei die Standardeinstellung von
672 @code{1} das mittlere C bedeutet. Die @code{relative} Option macht nur
673 Sinn in Verbindung mit der @code{fragment} Option, weshalb @code{fragment}
674 automatisch durch die Angabe der @code{relative} Option impliziert wird.
675 Eine explizite Angabe der @code{(no)fragment} Option hat keinen Effekt.
678 LilyPond benutzt zur Erzeugung seiner eigenen Dokumentation ebenfalls
679 @command{lilypond-book}. Zu diesem Zweck stehen noch zahlreiche
680 spezialisierte Optionen zur Verfügung:
684 Der LilyPond-Code im LilyPond-Kommando wird zum einen benutzt, um das
685 Musikfragment in eine Grafik mit schönem Notensatz zu konvertieren,
686 andererseits aber auch wörtlich in das Dokument eingefügt. Dies
687 geschieht in einem @q{verbatim}-Block, gefolgt vom Text einer
688 möglicherweise angegebenen @code{intertext} Option@footnote{Die
689 @code{intertext} Option ist noch nicht implementiert.} und der
690 Grafik des tatsächlichen Notensatzes. Diese Option funktioniert nur
691 fehlerhaft, wenn @code{\lilypond@{@}} im Fließtext benutzt wird.
693 Wird @code{verbatim} in Verbindung mit einem @code{lilypondfile}-Kommando
694 benutzt, so ist es auch möglich, nur ein Teil der Datei wörtlich einfügen
695 zu lassen: Wenn die eingebundene LilyPond-Datei ein Kommentar mit dem Inhalt
696 @samp{begin verbatim} (ohne Anführungszeichen) enthält, wird nur der
697 Dateiinhalt ab dieser Position eingefügt. Enthält die Datei mehrere
698 solche Kommentare, wirkt nur das letzte. Analog wird nur der Dateiinhalt
699 bis zu einem etwaigen Kommentar mit dem Inhalt @samp{end verbatim}
700 eingefügt. Im folgenden Beispiel wird das gesamte Musik für die
701 Erzeugung der Grafik im relativen Oktavenmodus interpretiert, der
702 wörtlich in das Dokument kopierte LilyPond-Code zeigt den @code{relative}-Befehl jedoch nicht.
705 \relative c' @{ % begin verbatim
712 erzeugt ein Zitat der Form
720 Wenn Kommentare und Variablen im Zitat, aber nicht im Quelltext
721 übersetzt werden sollen, kann die Umgebungsvariable @code{LYDOC_LOCALEDIR}
722 auf einen Verzeichnispfad gesetzt werden. Das Verzeichnis sollte
723 einen Baum an @file{.mo}-Nachrichtenkatalogen beinhalten mit
724 @code{lilypond-doc} als Domain.
727 (Nur innerhalb von Texinfo-Dateien.) Stellt @code{\version
728 @@w@{"@@version@{@}"@}} an den Beginn des Fragments der Ausgabe mit
732 (Nur innerhalb von Texinfo-Dateien.) Wird @command{lilypond} mit der
733 Kommandozeilenoption @option{--header=@/texidoc} für eine Datei
734 @file{foo@/.ly} und enthält die Datei ein @code{texidoc}-Feld im
735 @code{\header}-Block, so wird dessen Inhalt in die Datei
736 @file{foo@/.texidoc} ausgegeben. Die @code{texidoc} Option veranlasst
737 @code{lilypond-book}, den Inhalt dieser @file{.texidoc} Dateien innerhalb
738 eines Dokumentationsblocks direkt vor dem Musikfragment in das aktuelle
741 Enthält also die Datei @file{foo@/.ly} etwa den LilyPond-Code
745 texidoc = "Dieses Beispiel zeigt eine einzelne Note."
751 und das Texinfo-Dokument @file{text.texinfo}
754 @@lilypondfile[texidoc]@{foo.ly@}
758 so liefert der folgende Aufruf von @code{lilypond-book} das gewünschte
762 lilypond-book --pdf --process="lilypond \
763 -dbackend=eps --header=texidoc" test.texinfo
766 Die meisten Test-Dateien (im @file{input/} Verzeichnis von LilyPond)
767 sind kleine @file{.ly} Dateien von genau dieser Form.
769 Auch die Übersetzung dieser zusätzlichen Kommentare ist möglich:
770 Dazu muss das Texinfo-Dokument den Befehl @code{@@documentlanguage @var{LANG}}
771 und der @code{\header} Block in der Datei @file{foo@/.ly}
772 die Übersetzung im Feld @code{texidoc@var{LANG}} enthalten. Wird nun
773 @command{lilypond} mit der Option @option{--header=@/texidoc@var{LANG}}
774 aufgerufen, so wird der Inhalt der Datei @file{foo@/.texidoc@var{LANG}} anstelle von @file{foo@/.texidoc} eingefügt.
777 (Nur innerhalb von Texinfo-Dateien.) Diese Option wirkt wie die @code{quote} Option, außer dass nur das Musikfragment (und natürlich optional der
778 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.
781 (Nur innerhalb von Texinfo-Dateien.) Diese Option wirkt ähnlich wie die
782 @code{texidoc} Option: Wenn @command{lilypond} mit der Option
783 @option{--header=@/doctitle} aufgerufen wird und die Eingabedatei
784 @file{foo@/.ly} ein Feld @code{doctitle} im @code{\header}-Block enthält,
785 wird dessen Wert in die Datei @file{foo@/.doctitle} geschrieben. Wird die
786 @code{doctitle} Option für ein Musikfragment benutzt, so wird der Inhalt
787 dieser Datei, der eine einzelne Textzeile sein sollte, im Texinfo-Dokument
788 als @code{@@lydoctitle @var{Text}} eingefügt. @code{@@lydoctitle} muss
789 allerdings in Ihrem Texinfo-Dokument als Makro selbst definiert werden.
790 Die Übersetzung funktioniert völlig analog zu @code{texidoc}.
793 Nur für Texinfo-Ausgabe: Kommentare und Variablenbezeichnungen im
794 zitierten Quelltext des Schnipsel werden nicht übersetzt.
797 Wenn eine LilyPond-Datei mittels @code{\lilypondfile} und dieser Option
798 eingebunden wird, wird der Dateiname (ohne die Pfadangabe) unmittelbar vor
799 dem Musikfragment ausgegeben. In HTML-Dateien ist er außerdem ein Link
800 auf die LilyPond-Datei. Nur der eigentliche Name der Datei wird
801 ausgegeben, der Pfad wird also nicht mit angezeigt.
806 @node lilypond-book aufrufen
807 @section @command{lilypond-book} aufrufen
808 @translationof Invoking lilypond-book
810 @command{lilypond-book} erzeugt abhängig vom Ausgabeformat eine Datei mit
811 einer der folgenden Dateierweiterungen: @file{.tex}, @file{.texi},
812 @file{.html} oder @file{.xml}. Alle @file{.tex}, @file{.texi} und
813 @file{.xml} Dateien müssen noch mit den entsprechenden Programmen (@LaTeX{},
814 DocBook, etc.) weiter verarbeitet werden, um druckfähige Dateien zu erhalten.
817 @subheading Formatabhängige Anweisungen
819 @subsubheading @LaTeX{}
821 Es existieren zwei Methoden, Ihr @LaTeX{}-Dokument weiter zu verarbeiten,
822 um zu einer druck- oder publikationsfähigen Datei zu gelangen:
823 Zum einen die direkte Erzeugung einer PDF-Datei mit PDF@LaTeX{}, zum
824 anderen die Erzeugung einer DVI daraus einer PostScript-Datei mittels
825 @LaTeX{} und einem DVI-nach-PostScript Konverters wie @command{dvips}.
826 Die erste Methode ist einfacher und daher empfehlenswert.@footnote{Manchmal
827 kann eine Datei entweder von PDF@LaTeX{} oder von @LaTeX{} nicht korrekt
828 verarbeitet werden, weshalb hier beide Methoden beschrieben werden.} Welche
829 Methode auch immer benutzt wird, die Konvertierung zwischen PostScript und
830 PDF kann leicht mit Hilfsprogrammen wie @command{ps2pdf} und @command{pdf2ps}
831 (aus dem Ghostscript Paket) erfolgen.
833 Um eine PDF-Datei mittels PDF@LaTeX{} zu erzeugen, kann folgendermaßen
837 lilypond-book --pdf Ihre_Datei.pdftex
838 pdflatex Ihre_Datei.tex
841 @cindex Konturschriften
842 @cindex Type1 Schriften
844 @cindex Aufruf von dvips
845 Um eine PDF-Datei mittels @LaTeX{}/@command{dvips}/@command{ps2pdf} zu
846 erhalten, sind folgende Befehle nötig:
849 lilypond-book Ihre_Datei.lytex
851 dvips -Ppdf Ihre_Datei.dvi
856 Die @file{.dvi}-Datei, die beim Aufruf von @command{latex} erzeugt wird,
857 scheint keine Notenköpfe zu enthalten, was in Ordnung ist. Wenn Sie die
858 Datei wie beschrieben weiter verarbeiten, erscheinen die Notenköpfe korrekt
859 in den @file{.ps} und @file{.pdf} Dateien.
861 Der Aufruf von @command{dvips} kann einige Warnungen über fehlende
862 Schriftarten ausgeben. Auch dies ist in Ordnung und kann ignoriert werden.
864 Wenn Sie in der @LaTeX{}-Datei das Papierformat auf Querformat eingestellt
865 haben, vergessen Sie nicht auf die @code{-t landscape} Option beim
866 Aufruf von @command{dvips}.
869 @subsubheading Texinfo
871 Um ein von @command{lilypond-book} erzeugtes Texinfo-Dokument zu
872 verarbeiten, gehen Sie wie für alle anderen Texinfo-Dokumente vor:
873 Rufen Sie -- abhängig vom gewünschten Ausgabeformat -- eines der Programme
874 @command{texi2pdf}, @command{texi2dvi}, @command{makeinfo} oder
875 @command{texi2html} auf.
878 @xref{Format with texi2dvi, , , texinfo, GNU Texinfo}, und @ref{Creating an Info File, , , texinfo, GNU Texinfo}.
881 Die Dokumentation von Texinfo liefert dazu nähere Informationen.
885 @subheading Optionen auf der Kommandozeile
887 @command{lilypond-book} unterstützt die folgenden Kommandozeilenoptionen:
890 @item -f @var{Format}
891 @itemx --format=@var{Format}
892 Gibt das Format des Eingabedokuments an: @code{html}, @code{latex},
893 @code{texi} (Standardeinstellung), @code{texi-html} oder @code{docbook}.
894 Ist diese Option nicht angegeben, versucht @command{lilypond-book} das
895 Format anhand des Dateinamens zu bestimmen. Im Moment bedeutet @code{texi}
896 praktisch dasselbe wie @code{texi-html}.
898 @c This complicated detail is not implemented, comment it out -jm
900 The @code{texi} document type produces a Texinfo file with music
901 fragments in the printed output only. For getting images in the HTML
902 version, the format @code{texi-html} must be used instead.
905 @item -F @var{Filter}
906 @itemx --filter=@var{Filter}
907 Leitet die Musikfragmente durch das Programm @var{filter} anstatt sie
908 mit Lilypond zu einer Grafik zu verarbeiten. @option{--filter} und
909 @option{--process} kann nicht gleichzeigt benutzt werden. Beispielaufruf:
912 lilypond-book --filter='convert-ly --from=2.0.0 -' Mein-Buch.tely
917 Gibt eine kurze Hilfemeldung aus.
920 @itemx --include=@var{Pfad}
921 Fügt @var{Pfad} zu den Include-Pfaden hinzu. @command{lilypond-book} sucht
922 auch in allen Include-Pfaden nach bereits erstellten Grafiken für die
923 Musikfragmente. Wird das aktuelle Fragment gefunden und hat sich seit der
924 letzten Erstellung nicht geändert, wird es nicht erneut erzeugt. Bei manchen
925 der Programme zur Weiterverarbeitung wie etwa @command{makeinfo} oder
926 @command{latex} muss dieselbe @code{-I @var{Pfad}} Option angegeben werden,
927 damit das entsprechende Programm die Grafiken ebenso findet.
929 @item -o @var{Verzeichnis}
930 @itemx --output=@var{Verzeichnis}
931 Erzeugt die Ausgabedateien in @var{Verzeichnis}. Der Aufruf von
932 @command{lilypond-book} erzeugt zahlreiche kleine Dateien, die von
933 LilyPond, @command{latex}, @command{makeinfo} etc. dann weiter benützt
934 werden. Um zu vermeiden, dass das Quellenverzeichnis durch diese
935 Dateien unübersichtlich wird, kann die @option{--output} Option benutzt
936 werden. Vor dem Aufruf von @command{latex} oder @command{makeinfo}
937 sollten Sie in dieses Verzeichnis wechseln.
940 lilypond-book --output=out IhreDatei.lytex
945 @itemx --skip-lily-check
946 Nicht mit einer Fehlermeldung abbrechen, wenn keine Ausgabe von LilyPond
947 gefunden wird. Dies wird benutzt für Dokumentation ohne Grafiken.
949 @itemx --skip-png-check
950 Nicht mit einer Fehlermeldung abbrechen, wenn für die EPS-Dateien keine
951 PNG-Grafiken gefunden werden. Dies wird benutzt für Dokumentation ohne
954 @itemx --lily-output-dir=@var{Verzeichnis}
955 Schreibt @file{lily-XXX} Dateien nach @var{Verzeichnis} und erzeugt
956 im mit @code{--output} angegebenen Verzeichnis Verknüpfungen darauf.
957 Diese Option ist nützlich, um Zeit zu sparen, wenn Dokumente in
958 verschiedenen Verzeichnissen viele identische Musikfragmente
961 @itemx --info-images-dir=@var{Verzeichnis}
962 Formatiert die Texinfo-Ausgabe dergestalt, dass Info in @var{Verzeichnis}
963 nach den Grafiken zu den Musikfragmenten sucht.
965 @itemx --latex-program=@var{Programm}
966 Führt @command{Programm} anstelle von @command{latex} aus. Dies ist
967 nützlichen, wenn das Dokument mit einer anderen @LaTeX{}-Variante
968 wie etwa @command{xelatex} verarbeitet werden soll.
970 @itemx --left-padding=@var{Einrückung}
971 Fügt @var{Einrückung} als zusätzlichen Einzug in die EPS-Box ein.
972 @var{Einrückung} wird in Millimetern angegeben, die Standardeinstellung
973 is 3.0 Millimeter. Diese Option kann benutzt werden, wenn die Notenzeilen
974 über den Rand des Dokuments hinausstehen.
976 Die Breite eines eng ausgeschnittenen Notensystems kann variieren
977 aufgrund von Notationselementen, die über den linken Rand hinausstehen,
978 wie etwa Taktzahlen und Bezeichnungen der Instrumente. Diese Option
979 verkürzt die Notenzeile und verschiebt sie um denselben Betrag nach
983 @item -P @var{Kommando}
984 @itemx --process=@var{Kommando}
985 Verarbeitet LilyPond-Fragmente mit @var{Kommando} anstelle des
986 Standardbefehls @code{lilypond}. @code{--filter} und @code{--process}
987 können nicht gleichzeitig angegeben werden.
990 Erzeugt PDF-Dateien mit PDF@LaTeX{}.
994 Gibt ausführliche informative Meldungen aus.
998 Gibt die Versionsnummer aus.
1003 Der Texinfo-Befehl @code{@@pagesizes} wird ignoriert. Ebenso werden
1004 @LaTeX{}-Befehle ignoriert, die den Seitenrand oder die Zeilenlänge
1005 nach der Dokumentpräambel verändern.
1007 Nur der erste @code{\score}-Block eines LilyPond-Fragments wird verarbeitet.
1011 @section Dateiendungen
1012 @translationof Filename extensions
1014 Für die Eingabedatei kann zwar jede beliebige Dateinamenserweiterung benutzt
1015 werden, allerdings muss bei Verwendung einer nicht bekannten Erweiterung
1016 das Ausgabeformat explizit an @command{lilypond-book} angegeben werden.
1017 Details dazu finden sich im Abschnitt @ref{lilypond-book aufrufen}.
1018 Wird eine bekannte Erweiterung benutzt, wählt @command{lilypond-book}
1019 automatisch das richtige Ausgabeformat basierend auf der Erweiterung der
1023 @multitable @columnfractions .2 .5
1024 @item @strong{Erweiterung} @tab @strong{Ausgabeformat}
1026 @item @file{.html} @tab HTML
1027 @item @file{.itely} @tab Texinfo
1028 @item @file{.latex} @tab @LaTeX{}
1029 @item @file{.lytex} @tab @LaTeX{}
1030 @item @file{.lyxml} @tab DocBook
1031 @item @file{.tely} @tab Texinfo
1032 @item @file{.tex} @tab @LaTeX{}
1033 @item @file{.texi} @tab Texinfo
1034 @item @file{.texinfo} @tab Texinfo
1035 @item @file{.xml} @tab HTML
1039 Wird dieselbe Erweiterung für die Eingabedatei wie für die Ausgabedatei
1040 benutzt und befindet sich die Eingabedatei im aktuellen Arbeitsverzeichnis
1041 von @command{lilypond-book}, muss die @code{--output} Option für
1042 @command{lilypond-book} benutzt werden. Anderenfalls würde
1043 @command{lilypond-book} ja die Eingabedatei überschreiben, weshalb das
1044 Programm in diesem Fall mit einer Fehlermeldung wie @qq{Fehler: Ausgabe
1045 würde Eingabedatei überschreiben; verwenden Sie --output.} abbricht.
1048 @node Alternative Methoden, Text und Musik zu kombinieren
1049 @section Alternative Methoden, Text mit Musik zu kombinieren
1050 @translationof Alternate methods of mixing text and music
1052 Dieser Abschnitt stellt Methoden vor, wie Text und Musik auf andere
1053 Weise kombiniert werden können als dies durch @command{lilypond-book}
1054 automatisiert geschieht.
1058 * Viele Zitate aus einer langen Partitur::
1059 * LilyPond-Noten in OpenOffice.org integrieren::
1060 * LilyPond-Noten in andere Programme integrieren::
1063 @node Viele Zitate aus einer langen Partitur
1064 @subsection Viele Zitate aus einer langen Partitur
1065 @translationof Many quotes from a large score
1067 Wenn aus einer großen Partitur viele kleine Fragmente eingefügt
1068 werden sollen, kann dazu das @q{clip systems} Feature benutzt werden.
1069 Siehe @ruser{Notationsfragmente extrahieren}.
1072 @node LilyPond-Noten in OpenOffice.org integrieren
1073 @subsection LilyPond-Noten in OpenOffice.org integrieren
1074 @translationof Inserting LilyPond output into OpenOffice.org
1076 Musik im LilyPond-Format kann in OpenOffice.org eingefügt werden mittels
1077 @uref{http://@/ooolilypond@/.sourceforge@/.net@/,OOoLilyPond}.
1080 @node LilyPond-Noten in andere Programme integrieren
1081 @subsection LilyPond-Noten in andere Programme integrieren
1082 @translationof Inserting LilyPond output into other programs
1084 Im die Ausgabe von LilyPond in anderen Programmen einzufügen,
1085 sollte @code{lilypond} benutzt werden. Jedes Beispiel muss
1086 getrennt manuell erzeugt und ins Dokument eingefügt werden;
1087 für letzteres schlagen Sie bitte im Handbuch Ihrer
1088 Textverarbeitungs-Software nach. Die meisten Programme
1089 unterstützen das Einfügen von Grafiken im @file{PNG}-, @file{EPS}-
1090 oder @file{PDF}-Format.
1092 Um den leeren Rand um die Notenzeilen zu verringern, können folgende
1093 Einstellungen benutzt werden:
1101 bookTitleMarkup = ##f
1102 scoreTitleMarkup = ##f
1108 Eine @file{EPS}-Datei kann mit folgendem Befehl erzeugt werden:
1111 lilypond -dbackend=eps -dno-gs-load-fonts -dinclude-eps-fonts Dateiname.ly
1115 eine @file{PNG}-Datei mittels:
1118 lilypond -dbackend=eps -dno-gs-load-fonts -dinclude-eps-fonts --png Dateiname.ly