]> git.donarmstrong.com Git - lilypond.git/blobdiff - Documentation/de/user/working.itely
Merge branch 'master' into nested-bookparts
[lilypond.git] / Documentation / de / user / working.itely
index acd4be3d153ad1484757362d2666eeca6bfe433b..de14bd0139c688f11f4badb422aa6d190cb0455d 100644 (file)
@@ -7,6 +7,8 @@
     version that you are working on.  See TRANSLATION for details.
 @end ignore
 
+@c \version "2.11.51"
+
 @node Working on LilyPond projects
 @chapter Working on LilyPond projects
 
@@ -18,17 +20,15 @@ zu lesen.
 
 
 @menu
-* Suggestions for writing LilyPond files::  
-* Saving typing with identifiers and functions::  
-* Style sheets::                
-* Updating old files::          
-* Troubleshooting (taking it all apart)::  
-* Minimal examples::            
+* Suggestions for writing LilyPond input files::  
+* When things don't work::      
+* Scores and parts::            
 @end menu
 
 
-@node Suggestions for writing LilyPond files
-@section Suggestions for writing LilyPond files
+@node Suggestions for writing LilyPond input files
+@section Suggestions for writing LilyPond input files
+
 Jetzt sind Sie so weit, größere Stücke mit LilyPond zu schreiben -- 
 nicht 
 nur die kleinen Beispiele aus der Übung, sondern ganze Stücke.
@@ -46,14 +46,14 @@ Fehler zu finden.
 
 @item Was ist, wenn Sie Ihre Dateien mit jemandem austauschen 
 wollen? Oder Ihre Dateien nach einige Jahren noch einmal überarbeiten 
-wollen? Manche LilyPond-Dateien vesteht man auf den ersten Blick, 
+wollen? Manche LilyPond-Dateien versteht man auf den ersten Blick, 
 über anderen muss man eine Stunde grübeln, um die Struktur zu ahnen.
 
 @item Was ist, wenn sie Ihre Dateien auf eine neuere LilyPond-Version 
 aktualisieren wollen? Die Syntax der Eingabesprache verändert sich 
-allmählich mit Verbesserungen im Programm. Die meisten Verändernungen 
+allmählich mit Verbesserungen im Programm. Die meisten Veränderungen 
 können automatisch durch @code{convert-ly} gelöst werden, aber 
-bestimmte Änderungen brauchen Hanbarbeit. LilyPond-Dateien können 
+bestimmte Änderungen brauchen Handarbeit. LilyPond-Dateien können 
 strukturiert werden, damit sie einfacher aktualisierbar sind.
 @end itemize
 
@@ -61,6 +61,8 @@ strukturiert werden, damit sie einfacher aktualisierbar sind.
 * General suggestions::         
 * Typesetting existing music::  
 * Large projects::              
+* Saving typing with variables and functions::  
+* Style sheets::                
 @end menu
 
 
@@ -73,26 +75,25 @@ Hier einige Vorschläge, wie Sie Probleme vermeiden oder lösen können:
 @item @strong{Schreiben Sie immer mit @code{\version} die 
 Versionsnummer 
 in jede Datei}. Beachten Sie, dass in allen Vorlagen die Versionsnummer  
-@code{\version "2.11.23"} eingetragen ist. Es empfielt sich, in alle 
+@code{\version "2.11.51"} eingetragen ist. Es empfiehlt sich, in alle 
 Dateien, unabhängig von ihrer Größe, den @code{\version}-Befehl 
 einzufügen. Persönliche Erfahrung hat gezeigt, dass es ziemlich 
 frustrierend sein kann zu erinnern, welche Programmversion man etwa 
 vor einem Jahr verwendet hat. Auch @code{convert-ly} benötigt die 
 Versionsnummer.
 
-@item @strong{Benutzen Sie Überprüfungen}: @ruser{Bar check}, 
-@ruser{Octave check} und
-@ruser{Barnumber check}.  Wenn Sie hier und da diese Überprüfungen 
-einfügen, finden Sie einen möglichen Fehler weit schneller. Wie oft 
-aber 
-ist @qq{hier und da}? Das hängt von der Komplexität der Musik ab. Bei 
-einfachen Stücken reicht es vielleicht ein- oder zweimal, in sehr
-komplexer Musik sollte man sie vielleicht in jeden Takt einfügen.
+@item @strong{Benutzen Sie Überprüfungen}: @ruser{Octave checks}, und
+@ruser{Bar and bar number checks}.  Wenn Sie hier und da diese
+Überprüfungen einfügen, finden Sie einen möglichen Fehler weit
+schneller. Wie oft aber ist @qq{hier und da}?  Das hängt von der
+Komplexität der Musik ab. Bei einfachen Stücken reicht es vielleicht
+ein- oder zweimal, in sehr komplexer Musik sollte man sie vielleicht
+in jeden Takt einfügen.
 
 @item @strong{Ein Takt pro Textzeile}. Wenn irgendetwas kompliziertes 
 vorkommt, entweder in der Musik selber oder in der Anpassung der 
 Ausgabe,
-empfielt es sich oft, nur einen Takt pro Zeile zu schreiben. 
+empfiehlt es sich oft, nur einen Takt pro Zeile zu schreiben. 
 Bildschirmplatz zu sparen, indem Sie acht Takte in eine Zeile zwängen, 
 hilft nicht weiter, wenn Sie ihre Datei @qq{debuggen} müssen.
 
@@ -117,9 +118,9 @@ ersparen Sie sich viele Probleme, wenn Sie ihre Musik
 eines Tages umarrangieren wollen.
 
 @item @strong{Trennen Sie Einstellungen} von den eigentlichen 
-Noten. Siehe auch @ruser{Saving typing with identifiers and functions} 
+Noten. Siehe auch @ref{Saving typing with variables and functions} 
 und
-@ruser{Style sheets}.
+@ref{Style sheets}.
 
 @end itemize
 
@@ -146,7 +147,7 @@ Zeile mit den ursprünglichen Noten zu vergleichen. Wenn Sie die
 Partitur fertig gestellt haben, könne Sie  @code{mBreak = @{ @}}, 
 also leer definieren, um diese manuellen Zeilenumbrüche zu entfernen. 
 Damit kann dann LilyPond selber entscheiden, wohin es passende 
-Zeilenumbrüche plaziert.
+Zeilenumbrüche platziert.
 
 @end itemize
 
@@ -180,7 +181,7 @@ g4 c'8. e16
 @end example
 
 @item @strong{Trennen Sie Einstellungen von den Noten}.  Diese 
-Empfehlung wurde schon im Abschnitt @ruser{General suggestions} gegeben, 
+Empfehlung wurde schon im Abschnitt @ref{General suggestions} gegeben, 
 aber für große Projekte ist es unumgänglich. Muss z. B. die 
 Definition für @code{fdannp} verändert werden, so braucht 
 man es nur einmal vorzunehmen und die Noten in der Geigenstimme, 
@@ -197,8 +198,8 @@ g4\fdannp c'8. e16
 @end itemize
 
 
-@node Saving typing with identifiers and functions
-@section Saving typing with identifiers and functions
+@node Saving typing with variables and functions
+@subsection Saving typing with variables and functions
 
 @cindex Variable
 @cindex Bezeichner
@@ -296,24 +297,24 @@ padText =
 
 Die Benutzung von Variablen hilft auch, viele Schreibarbeit zu 
 vermeiden, wenn die Eingabesyntax von LilyPond sich verändert 
-(siehe auch @ruser{Updating old files}). Wenn nur eine einzige 
+(siehe auch @ref{Updating old files}). Wenn nur eine einzige 
 Definition (etwa @code{\dolce}) für alle Dateien verwendet wird 
-(vgl. @ruser{Style sheets}), muss nur diese einzige Definition 
+(vgl. @ref{Style sheets}), muss nur diese einzige Definition 
 verändert werden, wenn sich die Syntax ändert. Alle Verwendungen 
 des Befehles beziehen sich dann auf die neue Definition.
 
 @node Style sheets
-@section Style sheets
+@subsection Style sheets
 
-Die Ausgabe, die LilyPond erstellt, kann sehr start modifiziert 
-werden, siehe @ruser{Tweaking output} für Einzelheiten. Aber wie 
+Die Ausgabe, die LilyPond erstellt, kann sehr stark modifiziert 
+werden, siehe @ref{Tweaking output} für Einzelheiten. Aber wie 
 kann man diese Änderungen auf eine ganze Serie von Dateien 
 anwenden? Oder die Einstellungen von den Noten trennen? Das 
 Verfahren ist ziemlich einfach.
 
 Hier ist ein Beispiel. Es ist nicht schlimm, wenn Sie nicht auf 
 Anhieb die Abschnitte mit den ganzen @code{#()} verstehen. Das 
-wird im Kapitel @ruser{Advanced tweaks with Scheme} erklärt.
+wird im Kapitel @ref{Advanced tweaks with Scheme} erklärt.
 
 @lilypond[quote,verbatim,ragged-right]
 mpdolce = #(make-dynamic-script (markup #:hspace 1 #:translate (cons 5 0)
@@ -334,13 +335,13 @@ tempoMark = #(define-music-function (parser location markp) (string?)
 @end lilypond
 
 Es treten einige Probleme mit überlappenden Symbolen auf. Sie 
-werden beseitigt mit den Tricks aus dem Kapitel @ruser{Moving objects}.
-Aber auch die @code{mpdolce} und @code{tempoMark}-Defintiionen 
+werden beseitigt mit den Tricks aus dem Kapitel @ref{Moving objects}.
+Aber auch die @code{mpdolce} und @code{tempoMark}-Definitionen 
 können verbessert werden. Sie produzieren das Ergebnis, das 
 gewünscht ist, aber es wäre schön, sie auch in anderen Stücken 
 verwenden zu können. Man könnte sie natürlich einfach kopieren 
 und in die anderen Dateien einfügen, aber das ist lästig. Die 
-Defintionen verbleiben auch in der Notendatei und diese @code{#()} 
+Definitionen verbleiben auch in der Notendatei und diese @code{#()} 
 sehen nicht wirklich schön aus. Sie sollen in einer anderen 
 Datei versteckt werden:
 
@@ -468,8 +469,8 @@ Das sieht schon besser aus! Aber angenommen Sie möchten dieses
 Stück jetzt veröffentlichen. Ihr Kompositionsprofessor mag 
 die @qq{C}-Taktangaben nicht, aber Sie finden sie irgendwie 
 schöner. Also kopieren Sie die Datei @file{definitions.ly} nach 
-@file{web-publish.ly} und veränderen diese. Weil die Noten 
-in einer PDF-Datei auf dem Bilschirm angezeigt werden sollen, 
+@file{web-publish.ly} und verändern diese. Weil die Noten 
+in einer PDF-Datei auf dem Bildschirm angezeigt werden sollen, 
 bietet es sich auch an, die gesamte Ausgabe zu vergrößern.
 
 @example
@@ -549,14 +550,14 @@ Der Anfang der @file{music.ly}-Datei würde dann so aussehen:
 
 Durch diese Herangehensweise kann auch bei der Erstellung 
 von nur einer Ausgabeversion Arbeit gespart werden. Ich 
-benutze ein halbes Dutzent verschidener Stilvorlagen 
+benutze ein halbes Dutzend verschiedener Stilvorlagen 
 für meine Projekte. Jede Notationsdatei fängt an mit 
 @code{\include "../global.ly"}, welches folgenden Inhalt hat:
 
 
 @example
 %%%   global.ly
-\version "2.11.23"
+\version "2.11.51"
 #(ly:set-option 'point-and-click #f)
 \include "../init/init-defs.ly"
 \include "../init/init-layout.ly"
@@ -565,8 +566,17 @@ für meine Projekte. Jede Notationsdatei fängt an mit
 @end example
 
 
+@node When things don't work
+@section When things don't work
+
+@menu
+* Updating old files::          
+* Troubleshooting (taking it all apart)::  
+* Minimal examples::            
+@end menu
+
 @node Updating old files
-@section Updating old files
+@subsection Updating old files
 
 Die Syntax von LilyPond verändert sich ab und zu. Wenn LilyPond 
 besser wird, muss auch die Syntax (Eingabesprache) entsprechend 
@@ -596,7 +606,7 @@ verändern, das muss manuell vorgenommen werden.
 
 
 @node Troubleshooting (taking it all apart)
-@section Troubleshooting (taking it all apart)
+@subsection Troubleshooting (taking it all apart)
 
 Früher oder später werden Sie in die Lage kommen, 
 dass LilyPond Ihre Datei nicht kompilieren will. Die 
@@ -605,7 +615,7 @@ gibt, können Ihnen helfen, den Fehler zu finden, aber
 in vielen Fällen müssen Sie nach der Fehlerquelle 
 auf die Suche gehen.
 
-Die besten Hilfmittel sind in diesem Fall das Zeilen- 
+Die besten Hilfsmittel sind in diesem Fall das Zeilen- 
 und Blockkommentar (angezeigt durch @code{%} bzw. 
 @code{%@{ ... %@}}). Wenn Sie nicht bestimmen können, 
 wo sich das Problem befindet, beginnen Sie damit, große 
@@ -653,11 +663,11 @@ Bassstimme wieder hineinzunehmen, bis Sie die problematische
 Zeile finden.
 
 Eine andere nützliche Technik zur Problemlösung ist es, 
-@ruser{Minimal examples} zu konstruieren.
+@ref{Minimal examples} zu konstruieren.
 
 
 @node Minimal examples
-@section Minimal examples
+@subsection Minimal examples
 
 Ein Minimalbeispiel ist eine Beispieldatei, die so klein wie 
 möglich ist. Diese Beispiele sind sehr viel einfacher zu 
@@ -698,3 +708,140 @@ Zweck des Beispieles sind.
 @end itemize
 
 
+@node Scores and parts
+@section Scores and parts
+
+Orchesternoten werden alle zweimal gesetzt. Erstens als Stimmen für 
+die Musiker, und dann als große Partitur für den Dirigenten. Mit 
+Variablen 
+kann hier doppelte Arbeit erspart werden. Die Musik muss nur einmal 
+eingegeben werden und wird in einer Variable abgelegt. Der Inhalt 
+dieser 
+Variable wird dann benutzt, um sowohl die Stimme als auch die Partitur 
+zu erstellen.
+
+Es bietet sich an, die Noten in eigenen Dateien zu speichern. Sagen wir 
+beispielsweise, dass in der Datei @file{Horn-Noten.ly} die folgenden 
+Noten eines Duetts für Horn und Fagott gespeichert sind:
+
+@example
+HornNoten = \relative c @{
+  \time 2/4
+  r4 f8 a cis4 f e d
+@}
+@end example
+
+@noindent
+Daraus wird dann eine eigene Stimme gemacht, indem folgende Datei 
+erstellt 
+wird:
+
+@example
+\include "Horn-Noten.ly"
+\header @{
+  instrument = "Horn in F"
+@}
+
+@{
+ \transpose f c' \HornNoten
+@}
+@end example
+
+Die Zeile
+
+@example
+\include "Horn-Noten.ly"
+@end example
+
+@noindent
+setzt den Inhalt der Datei @file{Horn-Noten.ly} an die Stelle des 
+Befehls in die aktuelle Datei. Damit besteht also eine Definition 
+für @code{HornNoten}, so dass die Variable verwendet werden kann. 
+Der Befehl @code{\transpose f@tie{}c'} zeigt an, dass das Argument, 
+also @code{\HornNoten}, um eine Quinte nach oben transponiert wird.
+Klingendes @q{f} wird also als @code{c'} notiert. Das entspricht 
+der Notation eines Waldhorn in F. Die Transposition zeigt die folgende 
+Ausgabe:
+
+@lilypond[quote,ragged-right]
+\transpose f c' \relative c {
+  \time 2/4
+  r4 f8 a cis4 f e d
+}
+@end lilypond
+
+In Musik für mehrere Instrumente kommt es oft vor, dass eine Stimme 
+für mehrere Takte nicht spielt. Das wird mit einer besonderen Pause 
+angezeigt, dem Pausenzeichen für mehrere Takte (engl. multi-measure 
+rest). Sie wird mit dem @emph{großen} Buchstaben @samp{R} eingegeben, 
+gefolgt von einer Dauer (@code{1}@tie{}für eine Ganze, @code{2}@tie{}
+für eine Halbe usw.). Indem man die Dauer multipliziert, können längere  
+Pausen erstellt werden. Z. B. dauert diese Pause drei Takte eines 
+2/4-Taktes:
+
+@example
+R2*3
+@end example
+
+Wenn die Stimme gedruckt wird, müssen diese Pausen zusammengezogen 
+werden. 
+Das wird durch eine Variable erreicht:
+
+@example
+\set Score.skipBars = ##t
+@end example
+
+@noindent
+Dieser Befehl setzt die Eigenschaft des @code{skipBars} (@qq{überspringe 
+Takte}) auf wahr (@code{##t}).  Wenn diese Option und die Pause 
+zu der Musik des Beispiels gesetzt wird, erhält man folgendes Ergebnis:
+
+@lilypond[quote,ragged-right]
+\transpose f c' \relative c {
+  \time 2/4
+  \set Score.skipBars = ##t
+  R2*3
+  r4 f8 a cis4 f e d
+}
+@end lilypond
+
+Die Partitur wird erstellt, indem alle Noten zusammengesetzt werden. 
+Angenommen, die andere Stimme trägt den Namen @code{FagottNoten} 
+ und ist in der Datei @file{Fagott-Noten.ly} gespeichert. Die
+Partitur sieht dann folgendermaßen aus:
+
+@example
+\include "Fagott-Noten.ly"
+\include "Horn-Noten.ly"
+
+<<
+  \new Staff \HornNoten
+  \new Staff \FagottNoten
+>>
+@end example
+
+@noindent
+Und mit LilyPond übersetzt:
+
+@lilypond[quote,ragged-right]
+\relative c <<
+  \new Staff {
+    \time 2/4 R2*3
+    r4 f8 a cis4 f e d
+  }
+  \new Staff {
+    \clef bass
+    r4 d,8 f | gis4 c | b bes |
+    a8 e f4 | g d | gis f
+  }
+>>
+@end lilypond
+
+Tiefer gehende Information darüber, wie Stimmauszüge und Partituren 
+erstellt werden, finden sich im Notationshandbuch, siehe 
+@ref{Scores and parts}.
+
+Das Setzen der Variablen, die das Verhalten von LilyPond beeinflussen 
+(@q{properties}), wird im Kapitel
+@ref{Modifying context properties} besprochen.
+