@c -*- coding: utf-8; mode: texinfo; documentlanguage: de -*-
@ignore
- Translation of GIT committish: d3f53c1fb63de959056d00fdd58514b45eb433db
+ 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.42"
+@c \version "2.16.0"
@c Translators: Till Paala
@ref{Papierformat und automatische Skalierung}. Die @code{\paper}-Variablen,
die das Seitenlayout beeinflussen, werden in späteren Abschnitten behandelt.
Die Beschriftungsdefinitionen für Kopf- und Fußzeilen sowie Titeln werden behandelt
-in @ref{Custom headers footers and titles}.
+in @ref{Eigene Kopf und Fußzeilen sowie Titel}.
Die meisten @code{\paper}-Variablen funktionieren nur innerhalb der
@code{\paper}-Umgebung. Die wenigen, die auch in der @code{\layout}-Umgebung
-funktionieren, finden sich in @ref{The \layout block}.
+funktionieren, finden sich in @ref{Die \layout-Umgebung}.
Außer wenn anders angegeben, werden alle @code{\paper}-Variablen, die
Abständen auf der Seite antsprechen, in Millimetern gemessen, es sei denn,
@seealso
Notationsreferenz
@ref{Papierformat und automatische Skalierung},
-@ref{Custom headers footers and titles},
-@ref{The \layout block}.
+@ref{Eigene Kopf und Fußzeilen sowie Titel},
+@ref{Die \layout-Umgebung}.
Installierte Dateien:
@file{ly/paper-defaults-init.ly}.
@node Das Papierformat einstellen
@unnumberedsubsubsec Das Papierformat einstellen
-@translationof Setting paper size
+@translationof Setting the paper size
-Zwei Funktionen ermöglichen es, die Papiergröße zu ändern:
-@code{set-default-paper-size} und @code{set-paper-size}.
-@code{set-default-paper-size} muss auf der obersten Ebene in
-der Quelldatei gesetzt werden, @code{set-paper-size} hingegen
-muss sich in einer @code{\paper}-Umgebung befinden:
+@q{A4} ist der Standardwert, wenn keine ausdrückliches Papierformat
+eingestellt ist. Es gibt jedoch zwei Funktionen, mit denen man
+das Papierformat ändern kann: @code{set-default-paper-size}
@example
-#(set-default-paper-size "a4")
+#(set-default-paper-size "quarto")
@end example
+@noindent
+welcher immer auf oberster Ebene der Datei geschrieben werden muss, und
+@code{set-paper-size}
+
@example
\paper @{
- #(set-paper-size "a4")
+ #(set-paper-size "tabliod")
@}
@end example
@noindent
-Auf oberster Ebene kann @code{set-default-paper-size} überall vor der ersten
-@code{\paper}-Umgebung aufgerufen werden. Innerhalb einer @code{\paper}-Umgebung
-ist der beste Platz für @code{set-paper-size} gleich am Anfang, über der Liste
-der Variablen-Definitionen. Der Grund dafür wird behandelt in
-@ref{Automatische Skalierung auf ein Papierformat}
-
-@code{set-default-paper-size} bestimmt die Größe aller Seiten, während
-@code{set-paper-size} nur die Seitengröße für die Seiten definiert,
-auf die sich die aktuelle @code{\paper}-Umgebung bezieht. Wenn die
-@code{\paper}-Umgebung gleich am Anfang der Datei steht, bezieht sich die
-Papiergröße auf alle Seiten, wenn sie aber innerhalb einer
-@code{\book}-Umgebung definiert wird, nur auf die Seiten innerhalb
-dieses Buches.
-
-Die normalen Papierformate sind definiert, u.A. @code{a4},
-@code{letter}, @code{legal} und @code{11x17} (auch als
-Tabloit bekannt). Sehr viel mehr Formate sind unterstützt.
-Einzelheiten finden sich in der Datei
-@file{scm/paper.scm} in der Definition von
-@code{paper-alist}.
-
-@warning{Das Standardformat ist @code{a4}.}
-
-Weitere Papierformate können hinzugefügt werden, indem die
-Definition von @code{paper-alist} in der Datei
-@file{scm/paper.scm} verändert wird. Derartige
-Änderungen werden jedoch bei einer Aktualisierung des
-Programmes überschrieben.
+welcher in eine @code{\paper}-Umgebung geschrieben werden muss.
+
+
+Wenn die @code{set-default-paper-size}-Funktion auf oberster Ebene der
+Datei eingesetzt wird, muss sie vor allen @code{\paper}-Umgebungen kommen.
+@code{set-default-paper-size} definiert das Papierformat für alle Seiten,
+während @code{set-paper-size} nur das Format der Seiten bestimmt, auf die
+sich die @code{\paper}-Umgebung bezieht. Wenn beispielsweise die
+@code{\paper}-Umgebung oben in der Datei steht, dann bezieht sie sich
+auf alle Seiten in der Datei. Wenn die @code{\paper}-Umgebung innherhalb
+einer @code{\book}-Umgebung steht, dann bezieht sie sich nur auf das eine
+Buch.
+
+Wenn die @code{set-paper-size}-Funktion eingesetzt wird, muss sie @emph{vor}
+allen anderen Funktionen stehen, die in derselben @code{\paper}-Umgebung
+benützt werden. Siehe @ref{Automatische Skalierung auf ein Papierformat}.
+
+Die Papierformate finden sich in der Datei @file{scm/paper.scm} definiert.
+Hierhin kann man eigene Formate definieren, sie werden jedoch bei einer
+Aktualisierung von LilyPond überschrieben. Die vorhandenen Papierformate
+finden sich in @ref{Vordefinierte Papierformate}.
+
+@c An appendix entry exists for paper sizes but is not auto-generated
+
+Der folgende Befehl kann benützt werden, um ein eigenes Papierformat
+hinzuzufügen, welches dann mit @code{set-default-paper-size} oder
+@code{set-paper-size} benützt werden kann:
+
+@example
+#(set! paper-alist (cons '("mein Format" . (cons (* 15 in) (* 3 in))) paper-alist))
+
+\paper @{
+ #(set-paper-size "mein Format")
+@}
+@end example
+
+Die Einheiten @code{in} (Fuß), @code{cm} (Centimeter) and @code{mm} (Millimeter)
+können benützt werden.
@cindex Ausrichtung, Papier
@cindex Papier, Ausrichtung
@cindex hochkant, Papier
@cindex quer, Papier
+@cindex Papier, quer
@funindex landscape
-Wenn das Symbol @code{'landscape} als Argument an die Funktion
+Wenn das Symbol @code{'landscape} an die Funktion
@code{set-default-paper-size} gehängt wird, werden die Seiten um
90° gedreht und die Notensysteme entsprechend breiter gesetzt.
#(set-default-paper-size "a6" 'landscape)
@end example
+Die Notenausgabe wird @emph{nicht} gedreht, nur das Papierformat.
+
@seealso
Notationsreferenz:
-@ref{Automatische Skalierung auf ein Papierformat}.
+@ref{Automatische Skalierung auf ein Papierformat},
+@ref{Vordefinierte Papierformate}.
Installierte Dateien:
@file{scm/paper.scm}.
-
@node Automatische Skalierung auf ein Papierformat
@unnumberedsubsubsec Automatische Skalierung auf ein Papierformat
@translationof Automatic scaling to paper size
Die vertikalen Dimensionen, die durch die automatische Skalierung verändert
werden sind: @code{top-margin} und @code{bottom-margin} (siehe
-@ref{Vertikale \paper-Variablen mit festen Abständen}. Die horizontalen
+@ref{Vertikale \paper-Variablen mit festen Abständen}). Die horizontalen
Dimensionen, die durch die automatische Skalierung verändert werden, sind
@code{left-margin}, @code{right-margin}, @code{inner-margin}, @code{outer-margin},
@code{binding-offset}, @code{indent} und @code{short-indent} (siehe
-@ref{\paper-Variablen für horizontale Abstände}.
+@ref{\paper-Variablen für horizontale Abstände}).
Die Standardwerte für diese Dimensionen sind in
@file{ly/paper-defaults-init.ly} definiert, wobei interne Variablen mit den
Wenn auf falsch gesetzt, werden die Systeme vertikal auf der letzten Seite
verteilt. Bei Stücken, die grob zwei oder mehr Seiten füllen, sollten es auf
-wahr gesetzt werden. Hiermit wird auch die letzte Seite von Teilen eines
+falsch (@code{false}) gesetzt werden. Hiermit wird auch die letzte Seite von Teilen eines
@code{\book}, die mit @code{\bookpart} erstellt sind, beeinflusst.
@end table
zusätzlichen Abstand zwischen den Titel und dem ersten System einer
Paritur einfügt.
+Explizit definierte Papierformate überschreiben alle vom Benutzer erstellte
+Randeinstellung für die Ränder oben und unten.
+
@node Vertikale \paper-Variablen mit flexiblen Abständen
@unnumberedsubsubsec Vertikale @code{\paper}-Variablen mit flexiblen Abständen
wird mit Grob-Eigenschaften kontrolliert, deren Einstellungen
normalerweise innerhalb der @code{\score}-Umgebung vorgenommen
werden, und nicht innerhalb der @code{\paper}-Umgebung. Siehe auch
-@ref{Flexible vertical spacing within systems}.
+@ref{Flexible vertikale Abstände in Systemgruppen}.
@menu
-* Struktur der Alisten für flexible vertiakale Abstände::
-* Liste der flexiblen vertikalen Abstandsvariblen in \paper::
+* Struktur der Alisten für flexible vertikale Abstände::
+* Liste der flexiblen vertikalen Abstandsvariablen in \paper::
@end menu
-@node Struktur der Alisten für flexible vertiakale Abstände
-@unnumberedsubsubsec Struktur der Alisten für flexible vertiakale Abstände
+@node Struktur der Alisten für flexible vertikale Abstände
+@unnumberedsubsubsec Struktur der Alisten für flexible vertikale Abstände
@translationof Structure of flexible vertical spacing alists
Jede der flexiblen vertikalen Abstandsvariablen ist eine Aliste (eine assoziative Liste), die
@end itemize
+Bei Partituren über mehrere Seiten mit nicht ausgeglichenem unteren Rand
+greift die letzte Seite auf die gleiche Positionierung zurück wie die
+vorhergehende Seite, vorausgesetzt, dafür ist genügend Platz vorhanden.
+
Spezifische Methoden, um Alisten zu verändern, werden behandelt in
@ref{Alisten verändern}. Das folgende Beispiel demonstriert beide Arten,
wie diese Alisten verändert werden können. Der erste Aufruf verändert
@end example
-@node Liste der flexiblen vertikalen Abstandsvariblen in \paper
-@unnumberedsubsubsec Liste der flexiblen vertikalen Abstandsvariblen in @code{\paper}
+@node Liste der flexiblen vertikalen Abstandsvariablen in \paper
+@unnumberedsubsubsec Liste der flexiblen vertikalen Abstandsvariablen in @code{\paper}
@translationof List of flexible vertical spacing \paper variables
Die Bezeichnungen dieser Variablen entsprechen dem Format
@seealso
Notationsreferenz:
-@ref{Flexible vertical spacing within systems}.
+@ref{Flexible vertikale Abstände in Systemgruppen}.
Installierte Dateien:
@file{ly/paper-defaults-init.ly}.
-
-
-
@node \paper-Variablen für horizontale Abstände
@unnumberedsubsubsec \paper-Variablen für horizontale Abstände
@translationof Horizontal spacing \paper variables
Installierte Dateien:
@file{ly/paper-defaults-init.ly}.
+@knownissues
+Explizit definierte Papierformate überschreiben alle vom Benutzer erstellte
+Randeinstellung für die Ränder oben und unten.
+
@node \paper-Variablen für zweiseitigen Satz
@unnumberedsubsubsec @code{\paper}-Variablen für zweiseitigen Satz
@ref{Seitenumbrüche},
@ref{Optimale Seitenumbrüche},
@ref{Optimale Umbrüche zum Blättern},
-@ref{Minimale Seitenumbrüche}.
+@ref{Minimale Seitenumbrüche},
+@ref{Eine-Seite-Seitenumbrüche}.
Installierte Dateien:
@file{ly/paper-defaults-init.ly}.
@item auto-first-page-number
@funindex auto-first-page-number
+@cindex Seitenzahlen, automatische Nummerierung
Der Seitenumbruchsalgorithmus wird davon beeinflusst, ob die erste
Seitenzahl gerade oder ungerade ist. Wenn die Variable auf wahr
@item first-page-number
@funindex first-page-number
+@cindex Sietenzahlen, erste definieren
Der Wert der Seitenzahl auf der ersten Seite.
@item print-page-number
@funindex print-page-number
+@cindex Seitenzahlen, unterdrücken
Wenn falsch, werden Seitenzahlen nicht ausgegeben.
Installierte Dateien:
@file{ly/paper-defaults-init.ly}.
+@knownissues
+Ungrade Seitenzahlen befinden sich immer auf der rechten Seite.
+Wenn Sie die Noten auf Seite 1 beginnen lassen wollen, müssen Sie
+eine leere Seite nach dem Deckblatt einfügen, damit die Noten
+auf der rechten Seite mit Seite 1 beginnen.
+
@node Verschiedene \paper-Variablen
@unnumberedsubsubsec Verschiedene @code{\paper}-Variablen
Die relative Gewichtung von (vertikalem) Abstand auf der Seite und
(horizontalem) Abstand innerhalb der Zeilen. Hohe Werte gewichten
-die vertikalen Abstände mehr. Standard: @code{#10}.
+die vertikalen Abstände mehr. Standard: @code{10}.
@item print-all-headers
@funindex print-all-headers
Wenn wahr, werden alle Einträge des Titelfeldes (@code{\header}-Umgebung)
für jede Partitur (@code{\score}) ausgegeben. Normalerweise wird nur die
Satzbezeichnung und die Opuszahl (@code{piece} und @code{opus})
-ausgegeben. Standard: @code{##f}.
+ausgegeben. Standard: @code{#f}.
@item system-separator-markup
@funindex system-separator-markup
@node Die \layout-Umgebung
-@subsection Die @code{ayout}-Umgebung
+@subsection Die @code{\layout}-Umgebung
@translationof The \layout block
@cindex Partitur, Layout
@}
@end example
+Mehrfache @code{\layout}-Umbgebungen können als Ausdrücke auf höchster
+Ebene eingegeben werden. Das kann beispielsweise nützlich sein, wenn
+unterschiedliche Einstellungen in extra Dateien gespeichert werden und
+optional eingefügt werden. Intern wird eine Kopie der aktuellen
+@code{\layout}-Konfiguration gemacht, wenn eine @code{\layout}-Umgebung
+ausgewertet wird, dann erst werden Änderungen aus der Umgebung angewendet
+und das Ergebnis als die neue aktuelle Konfiguration gespeichert.
+Aus der Sicht des Benutzers werden die @code{\layout}-Umgebungen
+kombiniert, aber in Konfliktsituationen (wenn die gleiche Eigenschaft
+in unterschiedlichen Umgebungen geändert wird), erhält die spätere
+Definition den Vorrang.
+
+Wenn also diese Umgebung:
+
+@example
+\layout @{
+ \context @{
+ \Voice
+ \override TextScript #'color = #magenta
+ \override Glissando #'thickness = #1.5
+ @}
+@}
+@end example
+
+nach der Umgebung aus dem vorherigen Beispiel geschrieben wird, werden
+die @code{'padding}- und @code{'color}-Einstellungen für @code{TextScript}
+kombiniert, aber die spätere @code{'thickness}-Einstellung für
+@code{Glissando} ersetzt (oder versteckt) die vorherige.
+
+@code{\layout}-Umgebungen können einer Variable zur späteren Benutzung
+zugewiesen werden, aber die Funktionsweise dieser Zuweisung ist geringfügig
+aber deutlich unterschiedlich von der Variante, sie auszuschreiben.
+
+Wenn eine Variable etwa so definiert wird:
+
+@example
+layoutVariable = \layout @{
+ \context @{
+ \Voice
+ \override NoteHead #'font-size = #4
+ @}
+@}
+@end example
+
+@noindent
+dann enthält sie die aktuelle @code{\layout}-Konfiguration mit zusätzlicher
+Veränderung von @code{NoteHead #'font-size} (der Schriftgröße der Notenköpfe),
+aber diese Kombination wird @emph{nicht} als nächste aktuelle
+Konfiguration gespeichert. Man muss sich im klaren sein, dass die
+@qq{aktuelle Konfiguration} gelesen wird, wenn die Variable erstellt
+wird, nicht wenn sie benutzt wird. Darum ist der Inhalt der Variable
+abhängig von ihrer Position in der Partitur.
+
+Die Variable kann dann auch innerhalb einer anderen @code{\layout}-Umgebung
+eingesetzt werden, etwa:
+
+@example
+\layout @{
+ \layoutVariable
+ \context @{
+ \Voice
+ \override NoteHead #'color = #red
+ @}
+@}
+@end example
+
+Eine @code{\layout}-Umgebung, die eine Variable enthält wie im Beispiel oben,
+kopiert die aktuelle Konfiguration @emph{nicht}, sondern benützt den
+Inhalt von @code{\layoutVariable} als Basiskonfiguration für die weiteren
+Veränderungen. Das heißt, dass Änderungen, die zwischen der Definition
+der Variable und ihrer Benutzung definiert wurden, verloren gehen.
+
+Wenn @code{layoutVariable} kurz vor ihrer Benutzung definiert wird (oder
+mit @code{\include} eingefügt wird), entspricht ihr Inhalt der
+aktuellen Konfiguration plus die Änderungen, die die Variable definiert.
+Das obige Beispiel, das den Einsatz von @code{\layoutVariable} zeigt,
+würde in seiner finalen Version folgende @code{\layout}-Umgebung haben:
+
+@example
+ TextScript #'padding = #1
+ TextScript #'color = #magenta
+ Glissando #'thickness = #1.5
+ NoteHead #' font-size = #4
+ NoteHead #' color = #red
+@end example
+
+plus die Veränderungen an Einrückung (@code{indent}) und @code{StaffGrouper}.
+
+Aber wenn die Variable vor der ersten @code{\layout}-Umgebung definiert
+wird, würde die aktuelle Konfiguration nur enthalten:
+
+@example
+ NoteHead #' font-size= #4 % (written in the variable definition)
+ NoteHead #' color = #red % (added after the use of the variable)
+@end example
+Wenn man sorgfältig plant, können @code{\layout}-Variablen ein wertvolles
+Instrument sein, um das Layout-Design von Quellen zu strukturieren und
+auch dazu dienen, die Layout-Einstellungen an einer bestimmten Stelle
+wieder zurückzusetzen.
@seealso
Notationsreferenz:
* Optimale Seitenumbrüche::
* Optimale Umbrüche zum Blättern::
* Minimale Seitenumbrüche::
+* Eine-Seite-Seitenumbrüche::
* Ausdrückliche Umbrüche::
* Eine zusätzliche Stimme für Umbrüche benutzen::
@end menu
Es gibt auch vertikale Gegenstücke zu den Variablen
@code{ragged-right} und @code{ragged-last}:
@code{ragged-bottom} und @code{ragged-last-bottom}. Wenn diese
-Variablen auf @code{##t} (wahr) gesetzt werden, werden im ersten
+Variablen auf @code{#t} (wahr) gesetzt werden, werden im ersten
Fall die Notensysteme auf allen Seiten eng nach oben orientiert
gesetzt werden. Im zweiten Fall bezieht sich dies nur auf die
letzte Seite.
Der @code{Page_turn_engraver} liest die Kontexteigenschaft
@code{minimumPageTurnLength} um zu erkennen, wie lang eine Stelle
frei von Noten sein muss, damit ein Seitenumbruch in Frage kommt. Der
-Standardwert hierfür ist @code{#(ly:make-moment 1 1)}. Wenn Sie
+Standardwert hierfür ist @code{(ly:make-moment 1 1)}. Wenn Sie
Seitenumbrüche zum Umblättern ausschalten wollen, können Sie
einen sehr großen Wert angeben.
@}
@end example
-
@seealso
Schnipsel:
@rlsr{Spacing}.
+@node Eine-Seite-Seitenumbrüche
+@subsection Eine-Seite-Seitenumbrüche
+@translationof One-line page breaking
+
+@funindex ly:one-line-breaking
+
+Die Funktion @code{ly:one-line-breaking} ist ein besonderer
+Seitenumbruchalgorithmus, der jede Partitur (@code{score}) auf
+eine eigene Seite ausgibt, und in einer einzlenen Zeile. Diese
+Seitenumbruchfunktion gibt keine Titel oder Ränder aus, nur die
+Partitur wird dargestellt.
+
+Die Seitenbreite wird angepasst, sodass die längeste Partitur auf
+eine Zeile passt. Die Variablen @code{paper-width}, @code{line-width}
+und @code{indent} in der @code{\paper}-Umgebung werden ignoriert,
+wenn auch @code{left-margin} und @code{right-margin} noch beachtet
+werden. Die Höhe der Seite wird nicht verändert.
+
+
@node Ausdrückliche Umbrüche
@subsection Ausdrückliche Umbrüche
@translationof Explicit breaks
@menu
* Flexible vertikale Abstände in Systemgruppen::
-* Explizite Positionierung von Systemen und Systemgruppen::
+* Explizite Positionierung von Systemen::
* Vermeidung von vertikalen Zusammenstößen::
@end menu
@unnumberedsubsubsec Eigenschaften für Abstände innerhalb von Systemgruppen
@translationof Within-system spacing properties
+@funindex staff-affinity
+@funindex staffgroup-staff-spacing
+@funindex staff-staff-spacing
+@funindex nonstaff-unrelatedstaff-spacing
+@funindex nonstaff-relatedstaff-spacing
+@funindex nonstaff-nonstaff-spacing
+@funindex default-staff-staff-spacing
+@funindex minimum-Y-extent
+@funindex extra-offset
+@funindex self-alignment-X
+@funindex X-offset
+@funindex VerticalAxisGroup
+
Der vertikalen Platzierungsmechanismen für Abstände innerhalb von Systemgruppen
werden durch zwei Gruppen von Grob-Eigenschaften kontrolliert. Die erste
Gruppe ist mit dem @code{VerticalAxisGroup}-Grob verknüpft, der von allen
@code{@var{Element1}} befindet; beispielsweise
@code{nonstaff-relatedstaff-spacing} (Nicht-Notensystem-verwandtesNotensystem)
misst von dem Nicht-Notensystem nach oben, wenn @code{staff-affinity}
-(Richtung, an der sich ein System ausrichtet) auf @code{#UP} (nach oben)
+(Richtung, an der sich ein System ausrichtet) auf @code{UP} (nach oben)
eingestellt ist.
Jeder Abstand wird zwischen den @emph{Referenzpunkten} der zwei Objekten
#(define-music-function
(parser location context)
(string?)
- #{ s1*0^\markup { \typewriter $context } #})
+ #{ s1*0^\markup { \typewriter #context } #})
\layout {
\context { \Dynamics \alignToZero }
\context { \FiguredBass \alignToZero }
\context { \Lyrics \alignToZero }
- \context { \NoteNames \alignToZero }
- \context { \ChordNames \alignToZero \lowerCaseChords }
+ \context { \NoteNames \alignToZero \staffAffinityDown }
+ \context { \ChordNames \alignToZero
+ \staffAffinityDown
+ \lowerCaseChords }
\context { \FretBoards \alignToZero \staffAffinityDown }
\context { \Score
\override BarLine #'stencil = ##f
\new RhythmicStaff {
\set RhythmicStaff.instrumentName = #"baseline "
\textLengthOn
- \labelContext "ChordNames" s1 |
- \labelContext "NoteNames" s1 |
+ \labelContext "ChordNames " s1 |
+ \labelContext "NoteNames " s1 |
\labelContext "Lyrics" s1 |
}
\new Lyrics { \lyrics { \skip 1*2 | ghijk1 | } }
\set RhythmicStaff.instrumentName = #"vertical center "
\labelContext "Dynamics" s1*3
}
- \new Dynamics { s2\mp s\fp }
+ \new Dynamics { s1\mp s\fp }
>>
%% The reference point for FiguredBass is its highest point
@end lilypond
Jeder der vertikalen Platzierungs-Grobeigenschaften (außer
-@code{staff-affinity}) wird in einer Aliste (assoziativen Liste)
-gespeichert und jeder benutzt die gleiche Alistenstruktur
+@code{staff-affinity}) benutzt die gleiche Alistenstruktur
wie die @code{\paper}-Variablen, behandelt in
@ref{Vertikale \paper-Variablen mit flexiblen Abständen}. Besondere
Methoden um Alisten zu verändern finden sich in
@example
\new Staff \with @{
- \override VerticalAxisGroup #'staff-staff-spacing #'basic-distance = #10
+ \override VerticalAxisGroup #'default-staff-staff-spacing
+ #'basic-distance = #10
@} @{ @dots{} @}
\new Staff \with @{
- \override VerticalAxisGroup #'staff-staff-spacing =
+ \override VerticalAxisGroup #'default-staff-staff-spacing =
#'((basic-distance . 10)
(minimum-distance . 9)
(padding . 1)
\layout @{
\context @{
\Staff
- \override VerticalAxisGroup #'staff-staff-spacing #'basic-distance = #10
+ \override VerticalAxisGroup #'default-staff-staff-spacing
+ #'basic-distance = #10
@}
@}
@end example
@table @code
@item staff-staff-spacing
System-System-Platzierung
-Der Abstand zwischen dem aktuellen Notensystem und dem Notensystem direkt darunter
-innerhalb derselben Systemgruppe, auch wenn eine oder mehrere
-Nicht-Notensystemzeilen (wie etwa @code{Lyrics}) dazwischen stehen.
-Bezieht sich nicht auf das unterste System einer Systemgruppe. Das
-ersetzt alle Einstellungen, die vom @code{StaffGrouper}-Grob der aktuellen
-Systemgruppe geerbt wurden, wenn solche vorliegen sollten. Wenn nicht
-gesetzt und keine anderen @code{StaffGrouper}-Eigenschaften geerbt
-werden können, wird die @code{default-staff-staff-spacing}-Eigenschaft benutzt.
+
+Wird benutzt, um den Abstand zwischen dem aktuellen Notensystem und dem
+Notensystem direkt darunter in der gleichen Notensystemgruppe zu bestimmen,
+auch wenn eine oder mehrere Nicht-Notensystemzeilen (wie etwa @code{Lyrics})
+dazwischen stehen. Gilt nicht für das unterste System einer Systemgruppe.
+
+Die Eigenschaft @code{staff-staff-spacing} einer @code{VerticalAxisGroup}
+ist eine Scheme-Funktion, welche die Eigenschaften vom @code{StaffGrouper}-Grob
+den Notensystemen zuweist, wenn sie einer Systemgruppe angehören, bzw.
+die @code{default-staff-staff-spacing}-Eigenschaft bei einem einzelnen Notensystem.
+Dadurch können Systeme unterschiedlich in Abhängigkeit von ihrer Zugehörigkeit
+zu einer Gruppe (StaffGroup) platziert werden. Wenn gleichmäßige Aufteilung
+ohne Berücksichtigung von Gruppierungen gewünscht ist, kann diese Funktion durch
+eine flexible Platzierungs-Aliste ersetzt werden, wobei man die vollständige
+Redefinition auf die oben gezeigte Weise vornehmen muss.
@item default-staff-staff-spacing
Normale-System-System-Platzierung
-Die Einstlelungen, die für @code{staff-staff-spacing} benutzt werden,
-wenn die Eigenschaft nicht gesetzt ist. Das gilt für einzelne Systeme
-und Systemgruppen, die keine Einstellungen vom @code{StaffGrouper}-Grob
-geerbt haben.
+
+Eine flexible Platzierungs-Aliste, die den Wert von @code{staff-staff-spacing}
+für ungruppierte Notensysteme einstellt, es sei denn,
+@code{staff-staff-spacing} wirde explizit mit @code{\override} eingestellt.
@item staff-affinity
System-Anziehung
+
Die Richtung des Systems, die benutzt wird, um die aktuelle
Nicht-Notensystemzeile zu platzieren. Mögliche Werte sind
@code{UP} (nach oben), @code{DOWN} (nach unten) und
@code{staff-affinity} für eine Notensystem eingestellt wird, wird es wie
eine Nicht-Notensystemzeile behandelt. Wenn @code{staff-affinity}
auf @code{#f} gesetzt wird, wird eine Nicht-Notensystemzeile wie ein
-Notensystem behandelt.
-
-@c TODO: verify last clause below ("even if other...")
+Notensystem behandelt. Wird @code{staff-affinity} auf @code{UP},
+@code{CENTER} oder @code{DOWN} gesetzt, wird das Notensystem als
+Nicht-Notensystemzeile plaziert.
@item nonstaff-relatedstaff-spacing
Nicht-Notensystem-verwandtesSystem-Platzierung
+
Der Abstand zwischen der aktuellen Nicht-Notensystemzeile und
dem nächsten Notensystem in der Richtung von @code{staff-affinity},
wenn keine Nicht-Notensystemzeilen dazwischen auftreten und @code{staff-affinity}
@code{CENTER} ist, dann wird @code{nonstaff-relatedstaff-spacing} für die
nächsten Notensysteme auf @emph{beiden} Seiten benutzt, auch wenn andere
Nicht-Notensystemzeilen zwischen der aktuellen und einem der Notensystem
-auftreten.
+auftreten. Das heißt, dass die Platzierung eine Nicht-Notensystemzeile
+sowohl von den umliegenden Notensystemen als auch den umliegenden
+Nicht-Notensystemzeilen abhängt. Wenn @code{stretchability} einer dieser
+Platzierungstypen auf einen kleinen Wert gesetzt wird, dominiert diese
+Platzierung. Wird es dagegen auf einen großen Wert gesetzt, hat die
+Platzierung dieses Objekts nur einen kleinen Einfluss.
@item nonstaff-nonstaff-spacing
Nicht-Notensystemzeile-Nicht-Notensystemzeile-Platzierung
+
Der Abstand zwischen der aktuellen Nicht-Notensystemzeile und der
Nicht-Notensystemzeile in der Richtung von @code{staff-affinity},
wenn beide sich auf der gleichen Seite des verwandten Notensystems
@item nonstaff-unrelatedstaff-spacing
Nicht-Notensystemzeile-Nicht-verwandtesSystem-Platzierung
+
Der Abstand zwischen der aktuellen Nicht-Notensystemzeile und
dem Notensystem in der gegenüberliegenden Richtung von @code{staff-affinity},
wenn keine anderen Nicht-Notensystemzeilen dazwischen auftreten und
@table @code
@item staff-staff-spacing
Notensystem-Notensystem-Abstand
+
Der Abstand zwischen zwei aufeinanderfolgenden Notensystemen in
der aktuellen @code{StaffGroup}. Die @code{staff-staff-spacing}-Eigenschaft
-eines des @code{VerticalAxisGroup}-Grob eines einzelnen Notensytems
-wird benutzt für alle Systeme in der Systemgruppe, die diese Eigenschaft
-gesetzt haben. Siehe auch @code{default-staff-staff-spacing}.
+des @code{VerticalAxisGroup}-Grobs eines einzelnen Notensytems
+kann mit @code{\override} in andere Platzierungswerte für dieses Notensystem
+geändert werden.
@item staffgroup-staff-spacing
Systemgruppe-System-Abstand
+
Der Abstand zwischen dem letzten Notensystem der aktuellen @code{StaffGroup}
und dem Notensystem dirket darunter in der selben Notensystemgruppe,
auch wenn eine oder mehrere Nicht-Notensystemzeilen (wie etwa
Gesangstext) zwischen den zwei Notensystemen vorkommen. Gilt nicht
für das letzte Notensystem einer Systemgruppe. Die
@code{staff-staff-spacing}-Eigenschaft des @code{VerticalAxisGroup}-Grobs
-individueller Notensysteme wird anstelle dessen für alle Notensysteme
-in der @code{StaffGroup} benutzt, die sie gesetzt haben. Siehe auch
-@code{default-staff-staff-spacing}.
+individueller Notensysteme kann mit @code{\override} in andere Platzierungswerte
+für dieses Notensystem geändert werden.
@end table
@seealso
+Notationsreferenz:
+@ref{Vertikale \paper-Variablen mit flexiblen Abständen},
+@ref{Alisten verändern}.
+
Installierte Dateien:
@file{ly/engraver-init.ly},
@file{scm/define-grobs.scm}.
@itemize
@item @code{VerticalAxisGroup}-Eigenschaften:
@itemize
+@item @code{default-staff-staff-spacing}
@item @code{staff-staff-spacing}
@end itemize
@end itemize
einer Gruppieren (@code{StaffGroup}) werden, siehe
@ref{Abstände von gruppierten Notensystemen}.
-Folgendes Beispiel zeigt, wie die @code{staff-staff-spacing}-Eigenschaft
-sich auf die Platzierung von nicht-gruppierten Notensystemen auswirken kann:
+Folgendes Beispiel zeigt, wie die @code{default-staff-staff-spacing}-Eigenschaft
+sich auf die Platzierung von nicht-gruppierten Notensystemen auswirken kann.
+Wenn man die gleichen @code{\override}-Befehle auf @code{staff-staff-spacing}
+anwendet, ergäbe das den selben Effekt, würde sich aber auch in Fällen auswirken,
+in denen die Systeme gruppiert sind.
@lilypond[verbatim,quote,staffsize=16]
\layout {
\context {
\Staff
- \override VerticalAxisGroup #'staff-staff-spacing =
+ \override VerticalAxisGroup #'default-staff-staff-spacing =
#'((basic-distance . 8)
(minimum-distance . 7)
(padding . 1))
}
}
-\new StaffGroup <<
+<<
% The very low note here needs more room than 'basic-distance
% can provide, so the distance between this staff and the next
% is determined by 'padding.
% By setting 'padding to a negative value, staves can be made to
% collide. The lowest acceptable value for 'basic-distance is 0.
\new Staff \with {
- \override VerticalAxisGroup #'staff-staff-spacing =
+ \override VerticalAxisGroup #'default-staff-staff-spacing =
#'((basic-distance . 3.5)
(padding . -10))
} { \clef bass g2 r | }
@item @code{VerticalAxisGroup}-Eigenschaften:
@itemize
@item @code{staff-staff-spacing}
-@item @code{default-staff-staff-spacing}
@end itemize
@item @code{StaffGrouper}-Eigenschaften:
@itemize
-
-
-
-
-
-
@node Explizite Positionierung von Systemen
@subsection Explizite Positionierung von Systemen
@translationof Explicit staff and system positioning
Einige Dinge sollten beachtet werden:
@itemize
-@item Wenn @code{alignment-distances} benutzt wird, werden Gesangtextzeilen
+@item Wenn @code{alignment-distances} benutzt wird, werden Gesangstextzeilen
nicht als ein System gezählt.
@item Die Einheiten der Zahlen, die für @code{X-offset},
padding bezeichnet), kann durch @code{outside-staff-padding}
kontrolliert werden.
-@lilypond[quote,ragged-right,relative=2,verbatim]
+@lilypond[quote,ragged-right,relative=2,verbatim,staffsize=18]
\once \override TextScript #'outside-staff-padding = #0
a'^"This text is placed very close to the note"
\once \override TextScript #'outside-staff-padding = #3
häufigste kürzeste Note wird dann als Grundlage für die Platzverteilung
der Noten herangezogen, mit der Bedingung, dass diese kürzeste
Note immer ein Achtel oder kürzer sein soll. Die kürzeste Dauer
-wird ausgegeben, wenn @code{lilypond} mit der Option @code{--verbose}
+wird ausgegeben, wenn @code{lilypond} mit der Option @option{--verbose}
aufgerufen wird.
Diese Dauern können aber auch angepasst werden. Wenn Sie die Eigenschaft
Proportionale Notation ist unterstützt, siehe @ref{Proportionale Notation}.
@seealso
+Aufsatz über den automatischen Notensatz:
+@ressay{Optischer Ausgleich}.
+
Schnipsel:
@rlsr{Spacing}.
werden, um zusätzlichen Platz in eine Partitur einzufügen.
@example
- \once \override Score.SeparationItem #'padding = #10
+ \override Score.NonMusicalPaperColumn #'padding = #10
@end example
Es gibt derzeit keine Möglichkeit, den Platz zu verringern.
welches die Referenzdauer ist, anhand welcher alle Noten platziert werden.
Hier wird die LilyPond Scheme-Funktion @code{make-moment} eingesetzt. Sie
braucht zwei Argumente: einen Zähler und einen Nenner, die einen Bruch einer
-Ganzen darstellen. Die Funktion @code{#(ly:make-moment 1 20)} ergibt also
+Ganzen darstellen. Die Funktion @code{(ly:make-moment 1 20)} ergibt also
eine Referenzdauer von einer Zwanzigstel. Genauso gut können etwa die Dauern
-@code{#(ly:make-moment 1 16)}, @code{#(ly:make-moment 1 8)} oder
-@code{#(ly:make-moment 3 97)} eingesetzt werden.
+@code{(ly:make-moment 1 16)}, @code{(ly:make-moment 1 8)} oder
+@code{(ly:make-moment 3 97)} eingesetzt werden.
Die richtige Referenzdauer, mit der eine vernünftige Verteilung der Noten
proportional möglich ist, muss durch Ausprobieren herausgefunden werden.
Abschnitte mit verschiedenem Platzierungsverhalten definieren.
Hierzu ist der Befehl @code{\newSpacingSection} da. Siehe auch @ref{Eine neuer Bereich mit anderen Abständen}.
-Im Folgenden soll gezeigt werden, wie sich der @code{Separating_line_group_engraver}
+Im Folgenden soll gezeigt werden, wie sich der
+@code{Separating_line_group_engraver}
auswirkt und warum er normalerweise für proportionale Notation ausgeschaltet wird.
In diesem Beispiel wird verdeutlicht, dass vor jeder ersten Note eines Notensystems
immer etwas zusätzlicher Platz gesetzt wird:
}
@end lilypond
-Der gleiche horizontale Platz wird vor eine Noten gesetzt, wenn sie
+Der gleiche horizontale zusätzliche Platz wird vor eine Noten gesetzt, wenn sie
einer Taktart, einem Schlüssel oder einer Tonartbezeichnung folgt.
Dieser Platz wird durch @code{Separating_line_group_engraver}
eingefügt; wenn wir ihn aus der Partitur entfernen, entfällt
Die Ausgabe von @code{annotate-spacing} bietet sehr viele
Details zu den vertikalen Dimensionen einer Partitur. Zu Information,
wie Seitenränder und andere Layout-Variablen geändert werden
-können, siehe @ref{Seitenformatierung}.
+können, siehe @ref{Seitenlayout}.
Neben Rändern gibt es einige weitere Optionen, Platz zu sparen:
@}
@end example
+@item
+Die Anzahl der Seiten kann erzwungen werden. Beispielsweise erzwingt
+folgender Code ein Layout mit zwei Seiten:
+
+@example
+\paper @{
+ page-count = #2
+@}
+@end example
+
@item
Vermeidung (oder Verminderung) von Objekten, die den vertikalen Abstand von Systemen
vergrößern, hilft oft. Die Verwendung von Klammern bei Wiederholungen
@seealso
Notationsreferenz:
-@ref{Seitenformatierung},
+@ref{Seitenlayout},
@ref{Horizontale Abstände verändern}.
Schnipsel: