1 @c -*- coding: utf-8; mode: texinfo; documentlanguage: de -*-
2 @c This file is part of lilypond-program.tely
4 Translation of GIT committish: 2c00bdbfaf62dd90863331c4713e6b29e32c9322
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, Till Rettig
14 @node Running LilyPond
15 @chapter Running LilyPond
17 Dieses Kapitel behandelt die technischen Details, wie Lilypond ausgeführt werden kann.
22 * Command-line usage::
24 * Updating files with convert-ly::
31 Die meisten Benutzer führen LilyPond von einer graphischen Benutzeroberfläche
32 aus. Siehe @rlearning{First steps}, falls Sie dies nicht bereits getan haben.
35 @node Command-line usage
36 @section Command-line usage
38 Dieser Abschnitt enthält zusätzliche Informationen, wie Sie LilyPond
39 von der Kommandozeile ausführen können. Dies kann erforderlich sein,
40 um etwa zusätzliche Optionen an das Programm zu übergeben. Außerdem
41 sind einige Zusatzprogramme (wie etwa @code{midi2ly}) nur von der
42 Kommandozeile verfügbar.
44 Unter @q{Kommandozeile} verstehen wir die Kommandozeile des jeweiligen
45 Betriebssystems. Windows Benutzern ist sie vielleicht eher unter den
46 englischen Begriffen @q{DOS shell} oder @q{command shell} bekannt.
47 MacOS@tie{}X Benutzer kennen sie eher unter @q{Terminal} oder @q{Konsole}.
48 Sie sollten auch den Abschnitt @ref{Setup for MacOS X} konsultieren.
50 Wie die Kommandozeile im jeweiligen Betriebssystem benutzt werden kann,
51 soll in diesem Handbuch nicht näher beschrieben werden. Sehen Sie bitte
52 im Handbuch Ihres Betriebssystems nach oder informieren Sie sich im
53 Internet, wenn Sie mit der Kommandozeile nicht vertraut sind.
58 * Command line options for lilypond::
59 * Environment variables::
62 @node Invoking lilypond
63 @subsection Invoking @command{lilypond}
65 @cindex @command{lilypond} aufrufen
66 @cindex Kommandozeilen-Optionen für @command{lilypond}
67 @cindex Optionen an der Kommandozeile
69 Das @command{lilypond} Programm kann folgendermaßen von der Kommandozeile
73 lilypond [@var{Option}]@dots{} @var{Dateiname}@dots{}
77 Wird ein @file{Dateiname} ohne Erweiterung angegeben, so wird @file{.ly} als
78 Standarderweiterung für LilyPond-Dateien benutzt. Um Daten von
79 @code{stdin} einzulesen, benutzen Sie einfach einen Bindestrich (@code{-})
82 Wenn Lilypond die Datei @file{Dateiname.ly} verarbeitet, werden daraus
83 die Dateien @file{Dateiname.ps} und @file{Dateiname.pdf} erzeugt.
84 Es können an @code{lilypond} auch mehrere @file{.ly} Dateien übergeben
85 werden, die dann einzeln und voneinander unabhängig abgearbeitet
86 werden.@footnote{Der Zustand von GUILE wird allerdings nicht nach
87 jeder Datei zurückgesetzt, sodass Achtung geboten ist, wenn in einer
88 Datei globale Änderungen von Scheme aus durchgeführt werden.}
90 Falls @file{Dateiname.ly} mehr als einen @code{\score}-Block enthält,
91 werden die weiteren Stücke in durchnummerierte Dateien der Form
92 @file{Dateiname-1.pdf} ausgegeben. Zusätzlich wird der Wert der
93 Variable @code{output-suffix} zwischen den ursprünglichen Dateienamen
94 und der Zahl eingefügt. Eine Lilypond-Datei @var{Dateiname.ly} mit dem Inhalt
97 #(define output-suffix "Geige")
99 #(define output-suffix "Cello")
104 erzeugt daher die Dateien @var{Dateiname}@file{-Geige.pdf} und
105 @var{Dateiname}@file{-Cello-1.pdf}.
109 @node Command line options for lilypond
110 @subsection Command line options for @command{lilypond}
112 Die folgenden Kommandozeilenoptionen werden von @command{lilypond} unterstützt:
116 @item -e,--evaluate=@var{expr}
117 Wertet den Scheme-Ausdruck @var{expr} aus, bevor die @file{.ly} Dateien
118 gelesen und interpretiert werden.
119 Die @code{-e} Option kann auch mehrfach angegeben werden, die Ausdrücke
120 werden nacheinander ausgewertet.
122 Da der Ausdruck im @code{guile-user} Modul ausgewertet wird, ist bei der
123 Definitionen innerhalb von @var{expr} folgendes Vorgehen nötig. An der
124 Kommandozeile wird z.B. @code{a} im @code{guile-user} Modul definiert:
127 lilypond -e '(define-public a 42)'
131 Am Beginn der @file{.ly}-Datei muss dann das @code{guile-user} Modul noch geladen werden, bevor die Definition von @var{a} verfügbar ist:
134 #(use-modules (guile-user))
138 @item -f,--format=@var{Format}
139 Bestimmt das Ausgabeformat. Mögliche Werte von @var{Format} sind
140 @code{svg}, @code{ps}, @code{pdf}, @code{png}, @code{tex} und @code{dvi}.
142 Beispiel: @code{lilypond -fpng @var{Dateiname}.ly}
146 @item -d,--define-default=@var{Variable}=@var{Wert}
147 Damit wird die interne Programmoption @var{Variable} auf den Scheme-Wert
148 @var{Wert} gesetzt. Wird kein @var{Wert} angegeben, so wird @var{#t} benutzt.
149 Um eine Option auszuschalten, kann der Präfix @code{no-} dem Namen
150 @var{Variable} der Variable vorangestellt werden. So ist etwa
152 @cindex Point and Click, Kommandozeile
161 -dpoint-and-click='#f'
164 Hier sind ein paar interessante Optionen:
168 Die Ausführung von @code{lilypond -dhelp} zeigt alle verfügbaren @code{-d}
172 Setzt das Standard-Papierformat,
174 -dpaper-size=\"letter\"
178 Die Zeichenkette, die das Format angibt, muss in Anführungszeichen mit Backslash
179 ( @code{\"} ) stehen.
183 Vertraut der @code{.ly} Datei nicht.
185 Wenn LilyPond über einen Webserver verfügbar gemacht wird, @b{MUSS} unbedingt
186 eine die Optionen @code{--safe} oder @code{--jail} angegeben werden.
187 Die @code{--safe} Option verhindert, dass in der .ly-Datei angegebener
188 Scheme-Code das System gefährden kann, wie etwa in folgendem Beispiel:
194 c4^#(ly:export (ly:gulp-file "/etc/passwd"))
199 Mit der @code{-dsafe} Option werden alle Scheme-Ausdrücke einem speziellen
200 sicheren Modus ausgewertet. Dieser Modus ist vom GUILE @file{safe-r5rs} Modul
201 abgeleitet und fügt noch zahlreiche weitere erlaubte Funktionen der
202 LilyPond Programm-Schnittstelle hinzu. Diese Funktionen sind in
203 @file{scm/@/safe@/-lily@/.scm} angegeben.
205 Zusätzliche verbietet der sichere Modus auch @code{\include} Befehle sowie
206 die Benutzung eines Backslashs in @TeX{} Zeichenketten.
208 Im sicheren Modus ist es nicht möglich, LilyPond-Variablen nach Scheme
211 @code{-dsafe} erkennt jedoch @emph{KEINE} Überbeanspruchung der verfügbaren
212 Ressourcen. In diesem Modus ist es also trotzdem möglich, dass LilyPond in einer
213 Endlosschleife hängt, z.B. wenn zyklische Datenstrukturen an das Backend
214 übergeben werden. Wenn LilyPond also auf einem öffentlich zugänglichen
215 Webserver verfügbar gemacht wird, sollte der Prozess sowohl in der CPU-
216 als auch in der Speichernutzung limitiert werden.
218 Der sichere Modus verhindert auch, dass zahlreiche nützliche
219 Musikfragmente von LilyPond verarbeitet werden. Die @code{--jail} Option ist
220 eine sicherere Alternative, benötigt allerdings auch mehr Aufwand zur
224 Gibt an, welches Ausgabeformat das LilyPond Backend benutzt. Mögliche Werte
225 für diese Option sind:
228 @TeX{}-Ausgabeformat, das mit La@TeX{} weiterverarbeitet werden kann. Falls sie
229 existiert, wird die Datei @file{file.textmetrics} gelesen, um die Textweiten
232 Schreibt alle Zeichenketten in eine @file{.texstr}-Datei, die mit (La)@TeX{}
233 verarbeitet werden kann, um eine @code{.textmetrics}-Datei mit den Textweiten
234 zu erstellen. @strong{Achtung:} Diese Funktionalität ist momentan nicht
235 verfügbar, da der Quellcode stark umstrukturiert wurde.
237 PostScript-Ausgabeformat.
239 @cindex PostScript Ausgabeformat
241 Postscript-Dateien enthalten auch TTF-, Type1- und OTF-Schriften. Allerdings
242 wird die gesamte Schriftart eingefügt und nicht nur die benötigten Zeichen.
243 Vor allem wenn nicht-westliche Zeichensätze benutzt werden, kann dies zu sehr
244 großen Dateien führen.
247 Erzeugt @q{encapsulated PostScript} (EPS). Jede Seite (oder jedes System) wird
248 als eigene @file{EPS}-Datei ausgegeben, inklusive Schriftarten. Außerdem wird
249 eine Datei mit allen Seiten (bzw. Systemen) und Schriftarten erzeugt.
251 Dies ist die Standardeinstellung von @command{lilypond-book}.
254 SVG-Ausgabe (Scalable Vector Graphics). Jede Seite wird als eigene
255 @file{SVG}-Datei ausgegeben, inklusive eingebetteten Schriftarten.
256 @cindex SVG (Scalable Vector Graphics)
257 Sie benötigen einen SVG-Betrachter, der eingebettete Schriftarten unterstützt,
258 oder einen SVG-Betrachter, der eingebettete Schriftarten durch OTF-Schriften
259 ersetzen kann. In UNIX und Linux kann z.B. @uref{http://www.inkscape.org,Inkscape}
260 (ab Version 0.42) benutzt werden, nachdem die OTF-Schriften aus dem
261 LilyPond-Verzeichnis (typischerweise @file{/usr/share/lilypond/VERSION/fonts/otf/})
262 in das Verzeichnis @file{~/.fonts/} kopiert wurden.
265 gibt die rohen Scheme-basierenden Zeichenbefehle aus, wie sie intern von
266 LilyPond benutzt werden.
271 Beispiel: @code{lilypond -dbackend=svg @var{Dateiname}.ly}
273 @cindex Ausgabeformat
276 Erzeugt eine Ausgabedatei, die nur die Titelzeilen und das erste System
280 Erzeugt vollständige Seiten (Standardeinstellung). @code{-dno-print-pages}
281 ist in Verbindung mit @code{-dpreview} nützlich.
288 Zeigt eine Zusammenfassung der Programmbenutzung und der Optionen.
290 @item -H,--header=@var{FELD}
291 Gibt den Inhalt eines Feldes aus dem @code{\header}-Block in die Datei
292 @file{Dateiname.@var{FELD}} aus.
294 @item --include, -I=@var{Verzeichnis}
295 Fügt @var{Verzeichnis} zur Liste der Suchpfade hinzu.
299 @item -i,--init=@var{Initialisierungsdatei}
300 Benutzt @var{Initialisierungsdatei} zur gesamten Programminitialisierung. Der
301 Standardwert ist @file{init.ly}.
303 @item -o,--output=@var{DATEI}
304 Schreibt das Ergebnis der Verarbeitung mit LilyPond in die Ausgabedatei
305 @var{DATEI}. Die entsprechende Dateinamenserweiterung wird angehängt (z.B.
306 @code{.pdf} für pdf, @code{.tex} für tex, etc.).
312 Erzeugt DVI-Dateien. In diesem Fall sollte das @TeX{}-Backend angegeben werden,
313 d.h. auch @code{-dbackend=tex}.
316 Erzeugt eine Grafik-Datei im PNG-Format von jeder Seite. Diese Option
317 impliziert auch @code{--ps}. Die Auflösung in DPI der Grafik kann festgelegt
324 Erzeugt PDF-Dateien. Dies impliziert @code{--ps}.
328 @item -j,--jail=@var{Benutzer},@var{Gruppe},@var{Jail-Verzeichnis},@var{Arbeitsverzeichnis}
329 Führt @command{lilypond} in einem chroot-Jail aus.
331 Die @code{--jail} Option ist eine flexiblere Alternative zu @code{--safe}, wenn
332 LilyPond über das Internet verfügbar gemacht wird oder LilyPond-Quelldateien
333 von Dritten automatisch vararbeitet werden.
335 Sie funktioniert dergestalt, dass das Wurzelverzeichnis von
336 @command{lilypond} auf @var{Jail-Verzeichnis} gesetzt wird, bevor die
337 tatsächliche Kompilierung der .ly-Datei beginnt. Der Benutzer und die Gruppe
338 werden auf die angegebenen Werte gesetzt und das aktuelle Arbeitsverzeichnis
339 wird ebenfalls auf den angegebenen Wert @var{Arbeitsverzeichnis} gesetzt.
340 Diese Einstellungen garantieren (zumindest in der Theorie), dass es nicht
341 möglich ist, aus dem Jail auszubrechen. Damit @code{--jail} funktioniert, muss
342 @command{lilypond} allerdings als root ausgeführt werden, was normalerweise
343 auf sichere Art mit dem Kommando @command{sudo} erreicht werden kann.
345 Das Jail-Verzeichnis zu erstellen ist etwas heikel, da LilyPond alle zur
346 Ausführung nötigen Bibliotheken und Dateien @emph{innerhalb des
347 Jail-Verzeichnisses} finden muss. Ein typisches Setup besteht aus folgenden
351 @item Erstellung eines getrennten Dateisystems
352 Ein eigenes Dateisystem muss für LilyPond erstellt werden, sodass es mit
353 sicheren Einstellungen wie @code{noexec}, @code{nodev} und @code{nosuid}
354 eingebunden werden kann. Damit ist es unmöglich, Programme von diesem
355 Dateisystem auszuführen oder direkt auf eine Hardware-Schnittstelle
356 zuzugreifen. Wenn Sie keine eigene Partition erstellen möchten, können Sie
357 auch eine Datei der entsprechenden Größe erstellen und sie als @q{loop}-Gerät
358 einbinden. Ein getrenntes Dateisystem garantiert auch, dass LilyPond nicht
359 mehr Festplattenspeicher benutzt als erlaubt.
361 @item Erstellung eines eigenen Benutzerkontos
362 Es sollte ein eigener Benutzer und eine eigene Gruppe (z. B.
363 @code{lily}/@code{lily}) mit geringen Rechten für die Ausführung von LilyPond
364 innerhalb des Jails benutzt werden. Nur ein einziges Verzeichnis des Jails sollte
365 für den Benutzer schreibbar sein und als @var{Arbeitsverzeichnis} an
366 @code{lilypond} übergeben werden.
368 @item Einrichtung des Jails
369 LilyPond muss zahlreiche Dateien für die Ausführung einlesen. All diese
370 Dateien müssen in das Jail-Verzeichnis kopiert werden (mit denselben Pfaden
371 wie im tatsächlichen Wurzel-Dateisystem). Die gesamte LilyPond-Installation
372 (typischerweise @file{/usr/share/lilypond}) sollte kopiert werden.
374 Falls Probleme auftreten, ist es am einfachsten, Lilypond mittels
375 @command{strace} zu starten, wodurch Sie relativ leicht feststellen können,
376 welche Dateien im Jail noch fehlen.
378 @item Ausführung von LilyPond
379 In einem mit @code{noexec} eingebundenen Jail ist es nicht möglich, externe
380 Programme auszuführen. Daher muss LilyPond auf eine Art gestartet werden,
381 die keine weitere Ausführung von Programmen benötigt. Wie bereits erwähnt
382 muss LilyPond mit Administrator-Rechten gestartet werden (die es allerdings
383 sofort wieder abgibt), beispielsweise mittels @command{sudo}. Außerdem
384 ist es eine gute Idee, die LilyPond zur Verfügung stehende CPU-Zeit zu
385 limitieren (z. B. mit @command{ulimit -t}) und -- falls das Betriebssystem
386 dies unterstützt -- auch den zur Verfügung stehenden Hauptspeicher.
391 Gibt die Versionsnummer aus.
394 Gibt ausführliche informative Meldungen aus: Zeigt die vollen Dateipfade
395 aller gelesenen Dateien sowie Informationen über die Laufzeit.
398 Zeigt die Garantiebedingungen an, unter denen GNU LilyPond steht. (Es besteht
399 @strong{KEINERLEI GARANTIE}!)
403 @node Environment variables
404 @subsection Environment variables
407 @cindex LILYPOND_DATADIR
409 @command{lilypond} erkennt und benützt die folgenden Umgebungsvariablen:
411 @item LILYPOND_DATADIR
412 Diese Variable gibt das Verzeichnis an, wo Lilypond seine eigenen Dateien,
413 Meldungen und Übersetzungen finden kann. Dieses Verzeichnis sollte
414 Unterverzeichnisse @file{ly/}, @file{ps/}, @file{tex/}, etc. beinhalten.
417 Gibt die Sprache an, in der Warnungen und Fehlermeldungen ausgegeben werden.
419 @item LILYPOND_GC_YIELD
420 Mit dieser Variable (mit Werten zwischen 0 und 100) kann die Feinabstimmung
421 zwischen dem Bedarf an Hauptspeicher und Rechenleistung bei der Ausführung
422 von LilyPond durchgeführt werden. Bei höheren Werten benutzt LilyPond
423 mehr Hauptspeicher, benötigt aber weniger Prozessor-Leistung. Bei
424 niedrigeren Werten wird mehr Prozessor-Zeit, dafür weniger Hauptspeicher
425 benötigt. Voreinstellung ist ein Wert von @code{70}.
431 @section Error messages
433 @cindex error messages
434 Während der Verarbeitung einer Dateien können diverse Meldungen an der
435 Kommandozeile auftreten:
441 Irgendetwas ist verdächtig. Wenn Sie etwas Ungewöhnliches in Ihrer
442 Datei durchführen, dann werden Sie die Meldung verstehen und können
443 sie gegebenenfalls ignorieren. Im Normalfall jedoch bedeutet eine
444 Warnung, dass mit Ihrer Datei etwas nicht stimmt, LilyPond jedoch
445 trotzdem versucht, die Datei soweit wie möglich korrekt zu übersetzen.
449 Irgendetwas stimmt definitiv nicht. Der aktuelle Bearbeitungsschritt
450 (Einlesen, Interpretieren oder Formatieren der Datei) wird noch fertig
451 ausgeführt, danach bricht die Bearbeitung aber ab.
454 @cindex Fataler Fehler
455 Irgendetwas stimmt definitiv nicht und LilyPond kann nicht weiter
456 ausgeführt werden. Dies ist nur sehr selten der Fall, meist sind
457 die Schriftarten nicht korrekt installiert.
460 @cindex Fehlerprotokoll, Scheme
461 @cindex Scheme Fehler
462 Fehler, die während der Ausführung von Scheme-Code auftreten, werden
463 vom Scheme-Interpreter aufgefangen und an der Kommandozeile ausgegeben.
464 Wenn Sie LilyPond mit der @code{--verbose} Option (auch @code{-V})
465 ausführen, wird der sogennante @q{Call trace} ausgegeben, der die
466 aufgerufenen Funktionen zur Zeit des Fehlers angibt.
468 @item Programmierfehler
469 @cindex Programmierfehler
470 Eine interne Inkonsistenz ist aufgetreten. Diese Fehlermeldungen
471 sollen den Programmierern die Fehlersuche erleichtern und
472 können meistens einfach ignoriert werden. In manchen Fällen werden
473 so viele Meldungen ausgegeben, dass die Lesbarkeit der restliche
474 Ausgabe davon beeinträchtigt wird.
476 @item Abgebrochen (core dumped)
477 Dies bezeichnet einen ernsten Programmierfehler, der das Programm
478 zum Absturz gebracht hat. Solche Fehler werden als kritisch angesehen.
479 Falls daher einer auftritt, senden Sie bitte einen Bug-Report!
482 @cindex Fehlermeldung, Format
483 @cindex Form der Fehlermeldungen
484 Wenn Warnungen oder Fehlermeldungen mit einer konkreten Stelle in der
485 Eingabedatei verknüpft werden können, dann hat die Meldung die folgende
489 @var{Dateiname}:@var{Zeile}:@var{Spalte}: @var{Meldung}
490 @var{Fehlerhafte Eingabezeile}
493 Ein Zeilenumbruch wird in der fehlerhaften Zeile an jener Stelle eingefügt,
494 wo der Fehler aufgetreten ist. Zum Beispiel
497 test.ly:2:19: Fehler: keine gültige Dauer: 5
502 Diese Stellen sind LilyPonds Vermutung, wo die Warnung oder der Fehler
503 aufgetreten ist, allerdings treten Warnungen und Fehler ja gerade in
504 unerwarteten Fällen auf. Manchmal kann Lilypond auch eine fehlerhafte
505 Stelle zwar noch problemlos verarbeiten, ein paar Zeilen später wirkt
506 sich der Fehler aber dann doch noch aus. In solchen Fällen, wo Sie in
507 der angegebenen Zeile keinen Fehler erkennen, sollten Sie auch die Zeilen
508 oberhalb der angegebenen Stelle genauer unter die Lupe nehmen.
511 @node Updating files with convert-ly
512 @section Updating files with @command{convert-ly}
514 @cindex Aktualisierung von LilyPond-Dateien
515 @cindex Aktualisierung mit convert-ly
516 @cindex convert-ly: Aktualisierung
518 Die Eingabesyntax von LilyPond ändert sich graduell um etwa die
519 Eingabe zu erleichtern oder neue Funktionen zu ermöglichen. Ein
520 Nebeneffekt hiervon ist, dass das LilyPond-Übersetzerprogramm nicht
521 mehr mit älteren Eingabedateien kompatibel sein kann. Um dies
522 zu umgehen, kann @command{convert-ly} benutzt werden, welches die
523 meisten der Syntaxänderungen korrigieren kann.
525 Das Programm benötigt eine @code{\version}-Information in der
526 Eingabedatei, um zu wissen, von welcher Version konvertiert werden
527 soll. In den meisten Fällen genügt es, den Befehl
530 convert-ly -e meineDatei.ly
535 @c MacOS@tie{}X-Benutzer können diesen Befehl im Menu unter
536 @c @code{Compile > Update syntax} finden.
539 Wenn keine Veränderungen in @code{meineDatei.ly} vorgenommen wurden
540 und eine Datei @code{meineDatei.ly.NEW} erstellt wird, it
541 @code{meineDatei.ly} schon aktuell.
545 * Command line options for convert-ly::
546 * Problems with convert-ly::
549 @node Command line options for convert-ly
550 @subsection Command line options for @command{convert-ly}
552 @command{convert-ly} konvertiert immer bis zur letzten Syntaxänderung,
553 die es beherrscht. Das heißt, dass die neue @code{version}-Nummer
554 in der Datei überlicherweise etwas niedriger ist als die
555 Version von @command{convert-ly}.
557 Um LilyPond-Fragmente in texinfo-Dateien zu aktualisieren, gilt
561 convert-ly --from=... --to=... --no-version *.itely
564 Um die Änderungen der LilyPond-Syntax zwischen bestimmten Versionen
565 zu sehen, kann der Befehl
568 convert-ly --from=... --to=... -s
574 Viele Dateien können auf einmal aktualisiert werden, indem
575 @code{convert-ly} mit den üblichen UNIX-Befehlen kombiniert
576 wird. Das folgende Beispiel aktualisiert alle @code{.ly}-Dateien
577 im aktuellen Verzeichnis:
580 for f in *.ly; do convert-ly -e $f; done;
583 Die allgemeine Syntax des Programms lautet:
586 convert-ly [@var{option}]@dots{} @var{file}@dots{}
589 Folgende Optionen sind möglich:
593 Verändere die entsprechende Zeile der Eingabedatei. Überschreibt
596 @item -f,--from=@var{von-Versionsnummer}
597 Setze die Version, ab welcher konvertiert werden soll. Wenn diese
598 Option nicht gesetzt ist, versucht @command{convert-ly}, die
599 Version auf Grundlage von @code{\version} zu raten.
601 @item -n,--no-version
602 Normalerweise fügt @command{convert-ly} eine @code{\version}-Zeile
603 zur Ausgabe hinzu. Mit dieser Option kann das unterdrückt werden.
605 @item -s, --show-rules
606 Zeige alle bekannten Konversionsregeln und beende.
608 @item --to=@var{bis-Versionsnummer}
609 Hiermit kann das Ziel der Konversion gesetzt werden. Standard ist
610 die neueste mögliche Version.
613 Benutzerhilfe ausgeben.
617 @node Problems with convert-ly
618 @subsection Problems with @code{convert-ly}
620 Nicht alle Änderungen der Syntax können konvertiert werden. Nur
621 eine Ausgabeoption kann angegeben werden. Scheme- und
622 LilyPond-Scheme-Code wird sehr unwahrscheinlich korrekt aktualisiert,
623 hier ist meistens Nacharbeit erforderlich.
626 Hier eine Liste einiger Befehle, die convert-ly nicht konvertieren kann.
628 Diese Liste ist in Form von Fehlermeldungen, denn convert-ly
629 ist so strukturiert, dass nicht alle benötigten Änderungen
630 implementiert werden können. Es handelt sich also eher um eine
631 Wunschliste zur Referenz.
634 Bezifferter Bass wird nicht immer korrekt konvertiert, besonders
635 Befehle wie {< >}. Mats Kommentar hierzu:
636 Um convert-ly korrekt ausführen zu können, müssen alle Vorkommen
637 von '{<' in etwas beliebiges wie '{#' und genauso '>}' in '&}'
638 geändert werden. Nach der Konversion können sie dann zurück
639 in '{ <' und '> }' verwandelt werden
640 Nicht alle Textbeschriftungen werden richtig konvertiert. In der
641 alten Syntax konnten Beschriftungsbefehle mit Klammern gruppiert
643 -#'((bold italic) "string")
644 This will incorrectly be converted into
645 -\markup{{\bold italic} "string"}
646 instead of the correct
647 -\markup{\bold \italic "string"}
649 \partcombine wird nicht konvertiert
650 \addlyrics => \lyricsto wird nicht konvertiert, dadurch kompilieren
651 manche Dateien mit mehreren Strophen nicht.
653 \magnify wird nicht nach \fontsize konvertiert.
654 - \magnify #m => \fontsize #f, where f = 6ln(m)/ln(2)
655 remove-tag wird nicht verändert.
656 - \applyMusic #(remove-tag '. . .) => \keepWithTag #'. . .
657 first-page-number wird nicht geändert.
658 - first-page-number no => print-first-page-number = ##f
659 Zeilenumbrüche im \header-Feld werde nicht konvertiert.
660 - \\\\ als Zeilenumbruch in \header{...} => \markup \center-align <
661 "First Line" "Second Line" >
662 Crescendo- und Decrescendo-Enden werden nicht konvertiert.
666 \turnOff (in \set Staff.VoltaBracket = \turnOff eingesetzt) wird nicht korrekt behandelt.
668 \markup{ \center-align <{ ... }> } sollte umgewandelt werden in:
669 \markup{ \center-align {\line { ... }} }
670 aber im Moment fehlt \line.
672 Besondere LaTeX-Zeichen wie $~$ im Text werden nicht nach UTF(
675 \score{} muss jetzt mit einem musikalischen Ausdruck beginnen.
676 Alles andere (insbesondere \header{}) darf erst nach den Noten
683 @section Reporting bugs
687 @cindex Fehler melden
689 Wenn Sie eine Datei haben, die zu einem Absturz von LilyPond oder zu einer
690 fehlerhaften Ausgabe führt, so ist dies ein @q{Bug}. Die List der aktuell
691 bekannten derartigen Fehler findet sich in unserem @q{Google Bug Tracker}:
693 @uref{http://code.google.com/p/lilypond/issues/list}
695 Wenn Sie einen Fehler gefunden haben, der noch nicht aufgelistet ist, melden
696 Sie dies bitte anhand der Anweisungen auf der Seite
698 @uref{http://lilypond.org/web/devel/participating/bugs}
700 Wenn Sie Beispieldateien für den Fehler erstellen, versuchen Sie bitte, die
701 Datei möglichst minimal zu halten und nur jenen LilyPond Code aufzunehmen,
702 der auch wirklich für den Fehler verantwortlich ist. Meldungen mit
703 Beispieldateien, die nicht minimal sind, können wir meist aus Zeitgründen
704 nicht effektiv bearbeiten.