-@c -*- coding: utf-8; mode: texinfo; -*-
+@c -*- coding: utf-8; mode: texinfo; documentlanguage: de -*-
@c This file is part of lilypond.tely
@ignore
- Translation of GIT committish: 73bd631bc04ed993b13a7dde542854bb660eb590
+ Translation of GIT committish: 5131c3292d30cabdf08839daa02a006e4d3c96c5
When revising a translation, copy the HEAD committish of the
version that you are working on. See TRANSLATION for details.
@menu
* Contexts explained::
* Creating contexts::
+* Keeping contexts alive::
* Modifying context plug-ins::
* Changing context default settings::
* Defining new contexts::
@end itemize
+
+@node Keeping contexts alive
+@subsection Keeping contexts alive
+
+@cindex Kontexte, am Leben erhalten
+@cindex Kontexte, Lebensdauer
+
+Kontexte werden normalerweise am ersten musikalischen Moment
+beendet, an dem sie nichts mehr zu tun haben. Ein
+@code{Voice}-Kontext stirbt also sofort, wenn keine Ereignisse
+mehr auftreten, @code{Staff}-Kontexte sobald alle in ihnen
+enthaltenen @code{Voice}-Kontexte keine Ereignisse mehr aufweisen
+usw. Das kann Schwierigkeiten ergeben, wenn auf frühere
+Kontexte verwiesen werden soll, die in der Zwischenzeit schon
+gestorben sind, beispielsweise wenn man Systemwechsel mit
+@code{\change}-Befehlen vornimmt, wenn Gesangstext einer
+Stimme mit dem @code{\lyricsto}-Befehl zu gewiesen wird oder
+wenn weitere musikalische Ereignisse zu einem früheren Kontext
+hinzugefügt werden sollen.
+
+Es gibt eine Ausnahme dieser Regel: genau ein @code{Voice}-Kontext
+innerhalb eines @code{Staff}-Kontextes oder in einer
+@code{<<...>>}-Konstruktion bleibt immer erhalten bis zum Ende
+des @code{Staff}-Kontextes oder der @code{<<...>>}-Konstruktion, der ihn einschließt, auch wenn es Abschnitte gibt, in der er nichts zu
+tun hat. Der Kontext, der erhalten bleibt ist immer der erste,
+der in der ersten enthaltenden @code{@{...@}}-Konstruktion
+angetroffen wird, wobei @code{<<...>>}-Konstruktionen ignoriert
+werden.
+
+Jeder Kontext kann am Leben gehalten werden, indem man sicherstellt
+dass er zu jedem musikalischen Moment etwas zu tun hat.
+@code{Staff}-Kontexte werden am Leben gehalten, indem man sicherstellt,
+dass eine der enthaltenen Stimmen am Leben bleibt. Eine Möglichkeit,
+das zu erreichen, ist es, unsichtbare Pause zu jeder Stimme
+hinzuzufügen, die am Leben gehalten werden soll. Wenn mehrere
+Stimmen sporadisch benutzt werden sollen, ist es am sichersten,
+sie alle am Leben zu halten und sich nicht auf die Ausnahmeregel
+zu verlassen, die im vorigen Abschnitt dargestellt wurde.
+
+Im folgenden Beispiel werden sowohl Stimme A als auch B auf diese
+Weise für die gesamte Dauer des Stückes am Leben gehalten.
+
+@lilypond[quote,verbatim]
+musicA = \relative c'' { d4 d d d }
+musicB = \relative c'' { g4 g g g }
+keepVoicesAlive = {
+ <<
+ \new Voice = "A" { s1*5 } % Keep Voice "A" alive for 5 bars
+ \new Voice = "B" { s1*5 } % Keep Voice "B" alive for 5 bars
+ >>
+}
+
+music = {
+ \context Voice = "A" {
+ \voiceOneStyle
+ \musicA
+ }
+ \context Voice = "B" {
+ \voiceTwoStyle
+ \musicB
+ }
+ \context Voice = "A" { \musicA }
+ \context Voice = "B" { \musicB }
+ \context Voice = "A" { \musicA }
+}
+
+\score {
+ \new Staff <<
+ \keepVoicesAlive
+ \music
+ >>
+}
+@end lilypond
+
+@cindex Gesangstext, an einer sporadischen Melodie ausrichten
+
+Das nächste Beispiel zeigt eine Melodie, die zeitweise unterbrochen
+wird und wie man den entsprechenden Gesangstext mit ihr verknüpfen
+kann, indem man die Stimme am Leben hält. In wirklichen Situationen
+würden Begleitung und Melodie natürlich aus mehreren Abschnitten bestehen.
+
+@lilypond[quote,verbatim]
+melody = \relative c'' { a4 a a a }
+accompaniment = \relative c' { d4 d d d }
+words = \lyricmode { These words fol -- low the mel -- o -- dy }
+\score {
+ <<
+ \new Staff = "music" {
+ <<
+ \new Voice = "melody" {
+ \voiceOne
+ s1*4 % Keep Voice "melody" alive for 4 bars
+ }
+ {
+ \new Voice = "accompaniment" {
+ \voiceTwo
+ \accompaniment
+ }
+ <<
+ \context Voice = "melody" { \melody }
+ \context Voice = "accompaniment" { \accompaniment }
+ >>
+ \context Voice = "accompaniment" { \accompaniment }
+ <<
+ \context Voice = "melody" { \melody }
+ \context Voice = "accompaniment" { \accompaniment }
+ >>
+ }
+ >>
+ }
+ \new Lyrics \with { alignAboveContext = #"music" }
+ \lyricsto "melody" { \words }
+ >>
+}
+@end lilypond
+
+Eine Alternative, die in manchen Umständen besser geeignet sein kann,
+ist es, einfach unsichtbare Pausen einzufügen, um die Melodie
+mit der Begleitung passend auszurichten:
+
+@lilypond[quote,verbatim]
+melody = \relative c'' {
+ s1 % skip a bar
+ a4 a a a
+ s1 % skip a bar
+ a4 a a a
+}
+accompaniment = \relative c' {
+ d4 d d d
+ d4 d d d
+ d4 d d d
+ d4 d d d
+}
+words = \lyricmode { These words fol -- low the mel -- o -- dy }
+
+\score {
+ <<
+ \new Staff = "music" {
+ <<
+ \new Voice = "melody" {
+ \voiceOne
+ \melody
+ }
+ \new Voice = "accompaniment" {
+ \voiceTwo
+ \accompaniment
+ }
+ >>
+ }
+ \new Lyrics \with { alignAboveContext = #"music" }
+ \lyricsto "melody" { \words }
+ >>
+}
+@end lilypond
+
+
+
@node Modifying context plug-ins
@subsection Modifying context plug-ins
@noindent
wurde das @var{Kontext}-Argument für den @code{\set}-Befehl
ausgelassen, sodass automatische Bebalkung für die aktuelle
-Stimme (@code{Voice}-Kontext}) abgeschaltet wird. Dabei
+Stimme (@code{Voice}-Kontext) abgeschaltet wird. Dabei
gilt zu beachten, dass der unterste Kontext nicht immer die
Eigenschaft enthält, die verändert werden soll. Wenn man
beispielsweise @code{skipBars} aus dem oberen Beispiel
@item Abkürzungen von Artikulationen, wie @code{-.}, @code{->}, @code{--}
@end itemize
-@strong{Die @code{direction)-(Richtungs-)Eigenschaft}
+@strong{Die @code{direction}-(Richtungs-)Eigenschaft}
Die Position oder Richtung vieler Layoutobjekte wird von der
@code{direction}-Eigenschaft kontrolliert.
Der Wert der @code{direction}-Eigenschaft kann auf den Wert
-@codde{1} gesetzt werden, was gleichbedeutend mit @qq{nach oben}
+@code{1} gesetzt werden, was gleichbedeutend mit @qq{nach oben}
bzw. @qq{oberhalb} ist, oder auf den Wert @code{-1}, was
@qq{nach unten} bzw. @qq{unterhalb} bedeutet. Die Symbole
@code{UP} und @code{DOWN} können anstelle von @code{1}
niedrigsten Zahl in der @code{layer}-Eigenschaft werden zuerst
gesetzt, dann die nächstne Objekte in ansteigender Ordnung. Objekte
mit höheren Werten überschneiden also Objekte mit niedrigeren
-Werten. Die meisten Objekte bekommen den Wert @code1} zugewiesen,
+Werten. Die meisten Objekte bekommen den Wert @code{1} zugewiesen,
einige wenige Objekte, unter die auch @code{StaffSymbol} (die
Notenlinien) gehört, jedoch den Wert @code{0}. Die Reihenfolge,
in der Objekte mit demselben Wert gesetzt werden, ist nicht