+@cindex error messages
+Während der Verarbeitung einer Dateien können diverse Meldungen an der
+Kommandozeile auftreten:
+
+@table @emph
+
+@item Warnung
+@cindex Warnung
+Irgendetwas ist verdächtig. Wenn Sie etwas Ungewöhnliches in Ihrer
+Datei durchführen, dann werden Sie die Meldung verstehen und können
+sie gegebenenfalls ignorieren. Im Normalfall jedoch bedeutet eine
+Warnung, dass mit Ihrer Datei etwas nicht stimmt, LilyPond jedoch
+trotzdem versucht, die Datei soweit wie möglich korrekt zu übersetzen.
+
+@item Fehler
+@cindex Fehler
+Irgendetwas stimmt definitiv nicht. Der aktuelle Bearbeitungsschritt
+(Einlesen, Interpretieren oder Formatieren der Datei) wird noch fertig
+ausgeführt, danach bricht die Bearbeitung aber ab.
+
+@item Fataler Fehler
+@cindex Fataler Fehler
+Irgendetwas stimmt definitiv nicht und LilyPond kann nicht weiter
+ausgeführt werden. Dies ist nur sehr selten der Fall, meist sind
+die Schriftarten nicht korrekt installiert.
+
+@item Scheme Fehler
+@cindex Fehlerprotokoll, Scheme
+@cindex Scheme Fehler
+Fehler, die während der Ausführung von Scheme-Code auftreten, werden
+vom Scheme-Interpreter aufgefangen und an der Kommandozeile ausgegeben.
+Wenn Sie LilyPond mit der @code{--verbose} Option (auch @code{-V})
+ausführen, wird der sogennante @q{Call trace} ausgegeben, der die
+aufgerufenen Funktionen zur Zeit des Fehlers angibt.
+
+@item Programmierfehler
+@cindex Programmierfehler
+Eine interne Inkonsistenz ist aufgetreten. Diese Fehlermeldungen
+sollen den Programmierern die Fehlersuche erleichtern und
+können meistens einfach ignoriert werden. In manchen Fällen werden
+so viele Meldungen ausgegeben, dass die Lesbarkeit der restliche
+Ausgabe davon beeinträchtigt wird.
+
+@item Abgebrochen (core dumped)
+Dies bezeichnet einen ernsten Programmierfehler, der das Programm
+zum Absturz gebracht hat. Solche Fehler werden als kritisch angesehen.
+Falls daher einer auftritt, senden Sie bitte einen Bug-Report!
+@end table
+
+@cindex Fehlermeldung, Format
+@cindex Form der Fehlermeldungen
+Wenn Warnungen oder Fehlermeldungen mit einer konkreten Stelle in der
+Eingabedatei verknüpft werden können, dann hat die Meldung die folgende
+Form:
+
+@example
+@var{Dateiname}:@var{Zeile}:@var{Spalte}: @var{Meldung}
+@var{Fehlerhafte Eingabezeile}
+@end example
+
+Ein Zeilenumbruch wird in der fehlerhaften Zeile an jener Stelle eingefügt,
+wo der Fehler aufgetreten ist. Zum Beispiel
+
+@example
+test.ly:2:19: Fehler: keine gültige Dauer: 5
+ @{ c'4 e'
+ 5 g' @}
+@end example
+
+Diese Stellen sind LilyPonds Vermutung, wo die Warnung oder der Fehler
+aufgetreten ist, allerdings treten Warnungen und Fehler ja gerade in
+unerwarteten Fällen auf. Manchmal kann Lilypond auch eine fehlerhafte
+Stelle zwar noch problemlos verarbeiten, ein paar Zeilen später wirkt
+sich der Fehler aber dann doch noch aus. In solchen Fällen, wo Sie in
+der angegebenen Zeile keinen Fehler erkennen, sollten Sie auch die Zeilen
+oberhalb der angegebenen Stelle genauer unter die Lupe nehmen.
+
+
+@node Updating files with convert-ly
+@section Updating files with @command{convert-ly}
+
+@cindex Aktualisierung von LilyPond-Dateien
+@cindex Aktualisierung mit convert-ly
+@cindex convert-ly: Aktualisierung
+
+Die Eingabesyntax von LilyPond ändert sich graduell um etwa die
+Eingabe zu erleichtern oder neue Funktionen zu ermöglichen. Ein
+Nebeneffekt hiervon ist, dass das LilyPond-Übersetzerprogramm nicht
+mehr mit älteren Eingabedateien kompatibel sein kann. Um dies
+zu umgehen, kann @command{convert-ly} benutzt werden, welches die
+meisten der Syntaxänderungen korrigieren kann.
+
+Das Programm benötigt eine @code{\version}-Information in der
+Eingabedatei, um zu wissen, von welcher Version konvertiert werden
+soll. In den meisten Fällen genügt es, den Befehl
+
+@example
+convert-ly -e meineDatei.ly
+@end example
+
+@noindent
+auszuführen.
+
+Damit wird @code{meineDatei.ly} direkt aktualisiert und die
+Originaldatei unter @code{meineDatei.ly~} gespeichert.
+
+Alternativ kann man der aktualisierten Datei auch einen anderen
+Namen geben, in welchem Fall die Originaldatei unverändert
+gelassen wird. Das geht mit dem Befehl
+
+@example
+convert-ly meineDatei.ly > meineneueDatei.ly
+@end example
+
+Das Programm zeigt die Versionsnummern an, für die Konvertierungen
+vorgenommen wurden. Wenn keine Versionsnummern angezeigt werden,
+ist die Datei schon aktuell.
+
+
+MacOS@tie{}X-Benutzer können diesen Befehl im Menu unter
+@code{Compile > Update syntax} finden.
+
+Benutzer unter Windows müssen diesen Befehl auf der Eingabeaufforderung
+schreiben, welche man üblicherweise unter dem Menüeintrag
+@code{Start > Alle Programme > Zubehör > Eingabeaufforderung} zu
+finden ist.
+
+
+@menu
+* Command line options for convert-ly::
+* Problems with convert-ly::
+@end menu
+
+
+@node Command line options for convert-ly
+@subsection Command line options for @command{convert-ly}
+
+@command{convert-ly} konvertiert immer bis zur letzten Syntaxänderung,
+die es beherrscht. Das heißt, dass die neue @code{version}-Nummer
+in der Datei überlicherweise etwas niedriger ist als die
+Version von @command{convert-ly}.
+
+Die allgemeine Syntax des Programms lautet:
+
+@example
+convert-ly [@var{Option}]@dots{} @var{Dateiname}@dots{}
+@end example
+
+Folgende Optionen sind möglich:
+
+@table @code
+@item -e,--edit
+Führt die Aktualisierung direkt in der Datei durch, die Datei wird
+dabei verändert.
+
+@item -f,--from=@var{von-Versionsnummer}
+Setze die Version, ab welcher konvertiert werden soll. Wenn diese
+Option nicht gesetzt ist, versucht @command{convert-ly}, die
+Version auf Grundlage von @code{\version} zu raten.
+Beispiel: @code{--from=2.10.25}
+
+@item -n,--no-version
+Normalerweise fügt @command{convert-ly} eine @code{\version}-Zeile
+zur Ausgabe hinzu. Mit dieser Option kann das unterdrückt werden.
+
+@item -s, --show-rules
+Zeige alle bekannten Konversionsregeln und beende.
+
+@item --to=@var{bis-Versionsnummer}
+Hiermit kann das Ziel der Konversion gesetzt werden. Standard ist
+die neueste mögliche Version. Beispiel: @code{--to=2.12.2}
+
+@item -h, --help
+Benutzerhilfe ausgeben.
+@end table
+
+Um LilyPond-Fragmente in texinfo-Dateien zu aktualisieren, gilt
+der Befehl:
+
+@example
+convert-ly --from=... --to=... --no-version *.itely
+@end example
+
+Um die Änderungen der LilyPond-Syntax zwischen bestimmten Versionen
+zu sehen, kann der Befehl
+
+@example
+convert-ly --from=... --to=... -s
+@end example
+
+@noindent
+benutzt werden.
+
+Viele Dateien können auf einmal aktualisiert werden, indem
+@code{convert-ly} mit den üblichen UNIX-Befehlen kombiniert
+wird. Das folgende Beispiel aktualisiert alle @code{.ly}-Dateien
+im aktuellen Verzeichnis:
+
+@example
+for f in *.ly; do convert-ly -e $f; done;
+@end example
+
+
+
+@node Problems with convert-ly
+@subsection Problems with @code{convert-ly}
+
+Wenn convert-ly unter Windows auf der Eingabeaufforderung mit einer
+Datei benutzt wird, deren Name oder Pfad Leerzeichen enthält, muss
+der gesamte Dateipfad mit drei (!) Anführungszeichen umgeben werden:
+
+@example
+convert-ly """D:/My Scores/Ode.ly""" > """D:/My Scores/new Ode.ly"""
+@end example
+
+Nicht alle Änderungen der Syntax können konvertiert werden. Nur
+eine Ausgabeoption kann angegeben werden. Scheme- und
+LilyPond-Scheme-Code wird sehr unwahrscheinlich korrekt aktualisiert,
+hier ist meistens Nacharbeit erforderlich.
+
+@verbatim
+Hier eine Liste einiger Befehle, die convert-ly nicht konvertieren kann.
+
+Diese Liste ist in Form von Fehlermeldungen, denn convert-ly
+ist so strukturiert, dass nicht alle benötigten Änderungen
+implementiert werden können. Es handelt sich also eher um eine
+Wunschliste zur Referenz.
+
+1.6->2.0:
+ Bezifferter Bass wird nicht immer korrekt konvertiert, besonders
+ Befehle wie {< >}. Mats Kommentar hierzu:
+ Um convert-ly korrekt ausführen zu können, müssen alle Vorkommen
+ von '{<' in etwas beliebiges wie '{#' und genauso '>}' in '&}'
+ geändert werden. Nach der Konversion können sie dann zurück
+ in '{ <' und '> }' verwandelt werden
+ Nicht alle Textbeschriftungen werden richtig konvertiert. In der
+ alten Syntax konnten Beschriftungsbefehle mit Klammern gruppiert
+ werden, etwa
+ -#'((bold italic) "string")
+ This will incorrectly be converted into
+ -\markup{{\bold italic} "string"}
+ instead of the correct
+ -\markup{\bold \italic "string"}
+2.0->2.2:
+ \partcombine wird nicht konvertiert
+ \addlyrics => \lyricsto wird nicht konvertiert, dadurch kompilieren
+ manche Dateien mit mehreren Strophen nicht.
+2.0->2.4:
+ \magnify wird nicht nach \fontsize konvertiert.
+ - \magnify #m => \fontsize #f, where f = 6ln(m)/ln(2)
+ remove-tag wird nicht verändert.
+ - \applyMusic #(remove-tag '. . .) => \keepWithTag #'. . .
+ first-page-number wird nicht geändert.
+ - first-page-number no => print-first-page-number = ##f
+ Zeilenumbrüche im \header-Feld werde nicht konvertiert.
+ - \\\\ als Zeilenumbruch in \header{...} => \markup \center-align <
+ "First Line" "Second Line" >
+ Crescendo- und Decrescendo-Enden werden nicht konvertiert.
+ - \rced => \!
+ - \rc => \!
+2.2->2.4:
+ \turnOff (in \set Staff.VoltaBracket = \turnOff eingesetzt) wird nicht korrekt behandelt.
+2.4.2->2.5.9
+ \markup{ \center-align <{ ... }> } sollte umgewandelt werden in:
+ \markup{ \center-align {\line { ... }} }
+ aber im Moment fehlt \line.
+2.4->2.6
+ Besondere LaTeX-Zeichen wie $~$ im Text werden nicht nach UTF(
+ konvertiert.
+2.8
+ \score{} muss jetzt mit einem musikalischen Ausdruck beginnen.
+ Alles andere (insbesondere \header{}) darf erst nach den Noten
+ kommen.
+@end verbatim
+
+
+
+@node Reporting bugs
+@section Reporting bugs
+
+
+@cindex Fehler
+@cindex Fehler melden