@c -*- coding: utf-8; mode: texinfo; documentlanguage: de -*-
@ignore
- Translation of GIT committish: aa632c095138aaaa0f50f73c90e72efb4b61d745
+ Translation of GIT committish: e5a609e373eae846857f9a6d70a402a3d42b7d94
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
Guide, node Updating translation committishes.
@end ignore
-@c \version "2.13.39"
+@c \version "2.17.18"
@c Translators: Till Paala, Reinhold Kainhofer
@node Grundbegriffe
beginnen. Das ist letztendlich alle Musik, angefangen bei einer
einzelnen
Note bis hin zu einer riesigen Partitur mit vielen Notensystemen
-(bezeichnet durch @code{GrandStaff}):
+(bezeichnet hier durch @code{GrandStaff}):
@example
@{
allerdings alle in dieselbe Ausgabedatei plaziert werden.
Ein @code{\book}-Befehl ist nicht explizit notwendig -- er wird
implizit erzeugt. Wenn jedoch für jeden @code{\score}-Block in einer
-einzigen @code{.ly}-Datei eine eigene Ausgabe-Datei erzeugt werden soll,
+einzigen @file{.ly}-Datei eine eigene Ausgabe-Datei erzeugt werden soll,
dann muss jeder dieser Blöcke in einen eigenen @code{\book}-Block
gesetzt werden: Jeder @code{\book}-Block erzeugt dann eine
eigene Ausgabedatei.
Dies mag zwar musikalisch wenig Sinn ergeben, ist aber in LilyPond
auch möglich:
-@lilypond[quote,verbatim,fragment,ragged-right,relative=2]
- { g8\( a b[ c b\) a] g4 }
+@lilypond[quote,verbatim,ragged-right,relative=2]
+{ g8\( a b[ c b\) a] g4 }
@end lilypond
Im Allgemeinen können die verschiedenen Klammerarten,
ein Haltebogen, der über zwei Triolen läuft, sowie einen
Phrasierungsbogen, der in einer Triole beginnt (Zeilen 3 und 4).
-@lilypond[quote,verbatim,fragment,ragged-right]
+@lilypond[quote,verbatim,ragged-right]
{
- r16[ g \times 2/3 { r16 e'8] }
- g16( a \times 2/3 { b16 d) e' }
- g8[( a \times 2/3 { b8 d') e'~] } |
- \times 4/5 { e'32\( a b d' e' } a'4.\)
+r16[ g \tuplet 3/2 { r16 e'8] }
+g16( a \tuplet 3/2 { b16 d) e' }
+g8[( a \tuplet 3/2 { b8 d') e'~] } |
+\tuplet 5/4 { e'32\( a b d' e' } a'4.\)
}
@end lilypond
(Stimme) genannt. Stimmen werden in anderen Notationsprogrammen
manchmal auch als @qq{layer} (Ebene) bezeichnet.
-Tatsächlich ist die Stimmenebene die einzige, die wirklich Noten
-enthalten kann. Wenn kein Stimmenkontext explizit erstellt wird,
+Tatsächlich ist die Voice-Ebene die einzige, die wirklich Noten
+enthalten kann. Wenn kein Voice-Kontext explizit erstellt wird,
wird er automatisch erstellt, wie am Anfang dieses Kapitels
gezeigt. Manche Instrumente wie etwa die Oboe können nur eine
-Note gleichzeitig spielen. Noten für solche Instrumente sind
-monophon und brauchen nur eine einzige Stimme. Instrumente, die
+Note gleichzeitig spielen. Noten für solche Instrumente brauchen nur
+eine einzige Stimme. Instrumente, die
mehrere Noten gleichzeitig spielen können, wie das Klavier, brauchen
dagegen oft mehrere Stimmen, um die verschiedenen gleichzeitig
erklingenden Noten mit oft unterschiedlichen Rhythmen darstellen
enthalten -- wann also braucht man dann mehrere Stimmen? Schauen wir
uns zuerst dieses Beispiel mit vier Akkorden an:
-@lilypond[quote,verbatim,fragment,ragged-right,relative=1]
+@lilypond[quote,verbatim,ragged-right,relative=1]
\key g \major
<d g>4 <d fis> <d a'> <d g>
@end lilypond
So sieht es aus, wenn die Akkorde in zwei Stimmen aufgeteilt werden
und zur Durchgangsnote noch ein Bogen hinzugefügt wird:
-@lilypond[quote,verbatim,fragment,ragged-right,relative=2]
+@lilypond[quote,verbatim,ragged-right,relative=2]
\key g \major
% Voice "1" Voice "2"
<< { g4 fis8( g) a4 g } \\ { d4 d d d } >>
@end lilypond
-Beachte, dass die Hälse der zweiten Stimme nun nach unten zeigen.
+Beachten Sie, dass die Hälse der zweiten Stimme nun nach unten zeigen.
Hier ein anderes Beispiel:
-@lilypond[quote,verbatim,fragment,ragged-right,relative=2]
+@lilypond[quote,verbatim,ragged-right,relative=2]
\key d \minor
% Voice "1" Voice "2"
<< { r4 g g4. a8 } \\ { d,2 d4 g } >>
wenn in einem Takt viele Noten vorkommen, kann man die gesamten Stimmen
separat schreiben, wie hier:
-@lilypond[quote,verbatim,fragment,ragged-right,relative=2]
+@lilypond[quote,verbatim,ragged-right,relative=2]
\key d \minor
<< {
% Voice "1"
angewendet werden, wenn man drei oder mehr Stimmen hat, indem man weitere
Backslash-Trenner hinzufügt.
-Die Stimmenkontexte tragen die Namen @code{"1"}, @code{"2"} usw. In jedem
-dieser Kontexte wird die vertikale Ausrichtung von Hälsen, Bögen, Dynamik-Zeichen
-usw. entsprechend ausgerichtet.
+Die Stimmenkontexte tragen die Namen @code{"1"}, @code{"2"} usw. Der erste
+Kontext stellt die @qq{äußeren} Stimmen ein, die höchste Stimme im
+Kontext @code{"1"} und die tiefste Stimme im Kontext @code{"2"}. Die
+inneren Stimmen kommen in die Kontexte @code{"3"} und @code{"4"}. In
+jeder dieser Kontexte wird die vertikale Ausrichtung von Bögen, Hälsen,
+Dynamik usw. entsprechend eingestellt.
-@lilypond[quote,verbatim,fragment]
+@lilypond[quote,verbatim]
\new Staff \relative c' {
% Main voice
c16 d e f
<< % Voice one
{ c2 aes4. bes8 }
\\ % Voice two
- { aes2 f4 fes }
- \\ % No voice three
- \\ % Voice four
{
% Ignore these for now - they are explained in Ch 4
- \once \override NoteColumn #'force-hshift = #0
- <ees c>2
- \once \override NoteColumn #'force-hshift = #0.5
+ \once \override NoteColumn.ignore-collision = ##t
+ <ees, c>2
+ \once \override NoteColumn.force-hshift = #0.5
des2
}
+ \\ % No voice three
+ \\ % Voice four
+ {
+ \override NoteColumn.force-hshift = #0
+ aes'2 f4 fes
+ }
>> |
<c ees aes c>1 |
}
}
\\ % Voice two
{ \voiceTwoStyle
- aes2 f4 fes
+ % Ignore these for now - they are explained in Ch 4
+ \once \override NoteColumn.ignore-collision = ##t
+ <ees, c>2
+ \once \override NoteColumn.force-hshift = #0.5
+ des2
}
\\ % No Voice three (we want stems down)
\\ % Voice four
{ \voiceThreeStyle
- % Ignore these for now - they are explained in Ch 4
- \once \override NoteColumn #'force-hshift = #0
- <ees c>2
- \once \override NoteColumn #'force-hshift = #0.5
- des2
+ \override NoteColumn.force-hshift = #0
+ aes'2 f4 fes
}
- >>
- <c ees aes c>1
+ >> |
+ <c ees aes c>1 |
}
@end lilypond
wir es gelernt haben, indem wir mit der @code{<< \\ >>}-Konstruktion
die drei Stimmen des ersten Taktes notieren:
-@lilypond[quote,verbatim,fragment,ragged-right]
+@lilypond[quote,verbatim,ragged-right]
\new Staff \relative c'' {
\key aes \major
<<
- { c2 aes4. bes8 } \\ { aes2 f4 fes } \\ { <ees c>2 des }
+ { c2 aes4. bes8 } \\ { <ees, c>2 des } \\ { aes'2 f4 fes }
>> |
<c ees aes c>1 |
}
Noten in die vierte Stimme verschieben. Das wird einfach vorgenommen,
indem noch ein Paar @code{\\}-Stimmen hinzugefügt wird.
-@c KEEP LY
-@lilypond[quote,verbatim,fragment,ragged-right]
+@lilypond[quote,verbatim,ragged-right]
\new Staff \relative c'' {
\key aes \major
- << % erste Stimme
+ << % Voice one
{ c2 aes4. bes8 }
- \\ % zweite Stimme
- { aes2 f4 fes }
- \\ % Stimme drei auslassen
- \\ % vierte Stimme
- { <ees c>2 des }
- >>
- <c ees aes c>1
+ \\ % Voice two
+ { <ees, c>2 des }
+ \\ % Omit Voice three
+ \\ % Voice four
+ { aes'2 f4 fes }
+ >> |
+ <c ees aes c>1 |
}
@end lilypond
@noindent
-Wie zu sehen ist, ändert das die Richtung der Hälse, aber zeigt ein
-anderes Problem auf, auf das man manchmal bei mehreren Stimmen stößt:
-Die Hälse einer Stimme können mit den Hälsen anderer Stimmen kollidieren.
-LilyPond erlaubt Noten in verschiedenen Stimmen sich auf der gleichen
-vertikalen Position zu befinden, wenn die Hälse in entgegengesetzte
-Richtungen zeigen, und positioniert die dritte und vierte Stimme dann
-so, dass Zusammenstöße möglichst vermieden werden. Das funktioniert
-gewöhnlich recht gut, aber in diesem Beispiel sind die Noten der untersten
-Stimme eindeutig standardmäßig schlecht positioniert. LilyPond bietet
-verschiedene Möglichkeiten, die horizontale Position von Noten
-anzupassen. Wir sind aber noch nicht so weit, dass wir diese Funktionen
-anwenden könnten. Darum heben wir uns das Problem für einen späteren Abschnitt auf; siehe @code{force-hshift}-Eigenschaft in @ref{Überlappende Notation in Ordnung bringen}.
-
+Wie zu sehen ist, ändert das die Richtung der Hälse, aber die horizontale
+Ausrichtung der Noten ist nicht so, wie wir sie wollen. LilyPond
+verschiebt die inneren NOten wenn sie oder ihre Hälse mit den äußeren
+Stimmen zusammenstoßen würden, aber das ist nicht richtig für Klaviermusik.
+In anderen Situationen können die Verschiebungen von LilyPond nicht
+ausreichend sein, um Überlappungen aufzulösen. LilyPond stellt verschiedene
+Möglichkeiten zur Verfügung, um die horizontale Ausrichtung von Noten
+zu beeinflussen. Wir sind aber noch nicht so weit, dass wir diese Funktionen
+anwenden könnten. Darum heben wir uns das Problem für einen späteren Abschnitt
+auf; siehe @code{force-hshift}-Eigenschaft in
+@ref{Überlappende Notation in Ordnung bringen}.
+
+@warning{Gesangstext und Strecker (wie etwa Bögen, Crescendo-Klammern usw.) können
+nicht von einer Stimme zur anderen erstellt werden.}
@seealso
Notationsreferenz: @ruser{Mehrere Stimmen}.
@lilypond[quote,ragged-right,verbatim]
\new Staff \relative c' {
\voiceOneStyle
- % The following notes are monophonic
+ % This section is homophonic
c16^( d e f
% Start simultaneous section of three voices
<<
mit einer bestimmten Stimme verknüpft werden, indem die
Bezeichnung der Stimme benutzt wird.
-@lilypond[quote,verbatim,fragment]
+@lilypond[quote,verbatim]
<<
\new Voice = "one" {
\relative c'' {
die im Quellcode gar nicht explizit vorkommen. Vergleichen Sie
etwa den Quellcode und die Notenausgabe des folgenden Beispiels:
-@lilypond[quote,verbatim,relative=2,fragment]
+@lilypond[quote,verbatim,relative=2]
cis4 cis2. | a4 a2. |
@end lilypond
den (englischen) Wörtern ihrer Funktionsweise bestehen. Nur
das erste Wort hat einen Großbuchstaben, und die restlichen
Wörter werden mit einem Unterstrich angefügt. Ein
-@code{Staff_symbol_engraver} verantwortet also die Erstellung
+@code{Staff_symbol_engraver} verantwortet also die Erstellung
der Notenlinien, ein @code{Clef_engraver} entscheidet über die
Art der Notenschlüssel und setzt die entsprechenden Symbole; damit
wird gleichzeitig die Referenztonhöhe auf dem Notensystem festgelegt.
@item Rest_engraver
@tab Erstellt Pausen.
@item Staff_symbol_engraver
- @tab Ersetllt die (standardmäßig) fünf Notenlinien des Systems.
+ @tab Erstellt die (standardmäßig) fünf Notenlinien des Systems.
@item Stem_engraver
@tab Erstellt die Notenhälse und Tremolos mit einem Hals.
@item Time_signature_engraver
@lilypond[quote,verbatim,ragged-right]
<<
\new Staff \relative c'' {
- ais2 aes
+ aeses2 aes
}
\new Staff \relative c'' {
\set Staff.extraNatural = ##f
- ais2 aes
+ aeses2 aes
}
>>
@end lilypond
@lilypond[quote,verbatim,ragged-right]
<<
\new Staff \relative c'' {
- ais2 aes
+ aeses2 aes
}
\new Staff \relative c'' {
\set Score.extraNatural = ##f
- ais2 aes
+ aeses2 aes
}
>>
@end lilypond
-Ein anderes Beispiel ist die Eigenschaft @code{clefOctavation}:
+Ein anderes Beispiel ist die Eigenschaft @code{clefTransposition}:
wenn sie im @code{Score}-Kontext gesetzt wird, ändert sich sofort
der Wert der Oktavierung in allen aktuellen Systemen und wird
auf einen neuen Wert gesetzt, der sich auf alle Systeme auswirkt.
auf die Notenköpfe auswirkt. Die Änderung bezieht sich immer auf den Standard,
nicht vom letzten gesetzten Wert.
-@lilypond[quote,verbatim,ragged-right,relative=1,fragment]
+@lilypond[quote,verbatim,ragged-right,relative=1]
c4 d
% make note heads smaller
\set fontSize = #-4
@cindex Kontexteigenschaft, setzen mit \with
Die Standardwerte von Kontexteigenschaften können zu dem Zeitpunkt
-definiert werden, an welchem der Kontext erstellt wird. Manchmal
+definiert werden, an welchem der Kontext erstellt wird. Manchmal
ist das eine saubere Weise, eine Eigenschaft zu bestimmen, die für
-die gesamte Partitur erhalten bleichen soll. Wenn ein Kontext mit
+die gesamte Partitur erhalten bleiben soll. Wenn ein Kontext mit
einem @code{\new}-Befehl erstellt wird, können in einer
direkt folgenden @code{\with @{ .. @}}-Umgebung die Eigenschaften
bestimmt werden. Wenn also die zusätzlichen
<<
\new Staff
\relative c'' {
- gis4 ges aes ais
+ gisis4 gis aeses aes
}
\new Staff \with { extraNatural = ##f } {
\relative c'' {
- gis ges aes ais
+ gisis4 gis aeses aes
}
}
>>
\score {
\new Staff {
\relative c'' {
- cis4 e d ces
+ cisis4 e d cis
}
}
\layout {
<<
\new Staff {
\relative c'' {
- gis4 ges aes ais
+ gisis4 gis aeses aes
}
}
\new Staff {
\relative c'' {
- gis4 ges aes ais
+ gisis4 gis aeses aes
}
}
>>
@lilypond[quote,verbatim,ragged-right]
\new Staff \with {
- \remove Staff_symbol_engraver
+ \remove "Staff_symbol_engraver"
}
\relative c' {
c4 d
@lilypond[quote,verbatim,ragged-right]
\new Staff <<
\new Voice \with {
- \consists Ambitus_engraver
+ \consists "Ambitus_engraver"
} {
\relative c'' {
\voiceOne
@lilypond[quote,verbatim,ragged-right]
\new Staff \with {
- \consists Ambitus_engraver
+ \consists "Ambitus_engraver"
}
<<
\new Voice {
\layout {
\context {
\Staff
- \consists Ambitus_engraver
+ \consists "Ambitus_engraver"
}
}
}
Notationsreferenz: @ruser{Umgebungs-Plugins verändern},
@ruser{Die Standardeinstellungen von Kontexten ändern}.
+@knownissues
+Die @code{Stem_engraver} und @code{Beam_engraver} fügen ihre
+Objekte an Notenköpfe an. Wenn der @code{Note_heads_engraver}
+entfernt wird, werden keine Notenköpfe erstellt und demzufolge auch keine
+Hälse oder Bögen dargestellt.
+
@node Erweiterung der Beispiele
@section Erweiterung der Beispiele
@cindex Grobs
@cindex Objekte, graphische
-Die Spreizbarkeit von Systemen kann mit der @code{nex-staff-spacing}-Eigenschaft
+Die Spreizbarkeit von Systemen kann mit der @code{staff-staff-spacing}-Eigenschaft
des @code{VerticalAxisGroup}-@qq{graphischen Objekts} (üblicherweise als
@qq{Grob} innerhalb der LilyPond-Dokumentation bezeichnet) kontrolliert
werden. An dieser Stelle brauchen Sie sich um die Details nicht zu
-sorgen, sie werden später erklärt. Sehr neugierigen können sich den
-Abschnitt @ruser{Overview of modifying properties} anschauen. Im Moment
-kann man nicht nur die @code{strechability}-Untereigenschaft verändern,
+sorgen, sie werden später erklärt. Sehr Neugierige können sich den
+Abschnitt @ruser{Grundlagen zum Verändern von Eigenschaften} anschauen. Im Moment
+kann man nicht nur die @code{strechability} (Spreizbarkeit)-Untereigenschaft verändern,
darum müssen hier auch die anderen Untereigenschaften kopiert werden. Die
Standardeinstellungen dieser Untereigenschaften finden sich in der Datei
-@file{scm/@/define-grobs@/.scm} in den Definitionen für den
+@file{scm/define-grobs.scm} in den Definitionen für den
@code{VerticalAxisGroup}-Grob. Der Wert für @code{strechability} wird aus
der Definition für das Klaviersystem (@code{PianoStaff}) entnommen
-(in der Datei @file{ly/@/engraver-init@/.ly}) sodass die Werte identisch
+(in der Datei @file{ly/engraver-init.ly}), damit die Werte identisch
sind.
@example
@}
>> % end ManualOne Staff context
\new Staff = "ManualTwo" \with @{
- \override VerticalAxisGroup
- #'staff-staff-spacing = #'((space . 9)
- (minimum-distance . 8)
- (padding . 1)
- (stretchability . 5))
+ \override VerticalAxisGroup.staff-staff-spacing.stretchability = 5
@} <<
\keyTime
\clef "bass"
}
>> % end ManualOne Staff context
\new Staff = "ManualTwo" \with {
- \override VerticalAxisGroup
- #'staff-staff-spacing = #'((space . 9)
- (minimum-distance . 8)
- (padding . 1)
- (stretchability . 5))
+ \override VerticalAxisGroup.staff-staff-spacing.stretchability = 5
} <<
\keyTime
\clef "bass"
@c TODO Avoid padtext - not needed with skylining
@lilypond[quote,verbatim,ragged-right]
dolce = \markup { \italic \bold dolce }
-padText = { \once \override TextScript #'padding = #5.0 }
+padText = { \once \override TextScript.padding = #5.0 }
fthenp=_\markup {
\dynamic f \italic \small { 2nd } \hspace #0.1 dynamic p
}
violin = \relative c'' @{
\repeat volta 2 @{
c4._\markup @{ \italic \bold dolce @} b8 a8 g a b
- \once \override TextScript #'padding = #5.0
+ \once \override TextScript.padding = #5.0
c4.^"hi there!" d8 e' f g d
c,4.\markup @{
\dynamic f \italic \small @{ 2nd @} \hspace #0.1 \dynamic p
(parser location padding)
(number?)
#{
- \once \override TextScript #'padding = $padding
+ \once \override TextScript.padding = #padding
#})
\relative c''' {
Wenn man eine einzige Definition hat (wie etwa @code{\dolce}),
die für alle Vorkommen in der Notation eingesetzt wird, muss
man auch nur einmal diese Definition aktualisieren, anstatt
-dass man sie in jeder @code{.ly}-Datei einzeln ändern müsste.
+dass man sie in jeder @file{.ly}-Datei einzeln ändern müsste.
@node Partitur und Stimmen