X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=Documentation%2Fde%2Fnotation%2Fspacing.itely;h=ec59eaa6eb61412a960cfed5e2d0a27b467890f0;hb=18d03fa6a724b0102ccc47d194209802cea02f2e;hp=4e28e516a77d9a48919031e1cb7f7c50fb2da1c2;hpb=ea4fdf1afa3e6bb9a7c586f5a533be93ff3312d3;p=lilypond.git diff --git a/Documentation/de/notation/spacing.itely b/Documentation/de/notation/spacing.itely index 4e28e516a7..ec59eaa6eb 100644 --- a/Documentation/de/notation/spacing.itely +++ b/Documentation/de/notation/spacing.itely @@ -1,14 +1,14 @@ @c -*- coding: utf-8; mode: texinfo; documentlanguage: de -*- @ignore - Translation of GIT committish: 8cbb38db1591ab95a178643e7bf41db018aa22c0 + 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.14.0" +@c \version "2.19.22" @c Translators: Till Paala @@ -59,18 +59,18 @@ Systemgruppen usw. Siehe @ref{Partiturlayout}. Dieser Abschnitt behandelt Seitenlayout-Optionen innerhalb der @code{\paper}-Umgebung. @menu -* Die \paper-Umgebung:: +* Die paper-Umgebung:: * Papierformat und automatische Skalierung:: -* Vertikale \paper-Variablen mit festen Abständen:: -* Vertikale \paper-Variablen mit flexiblen Abständen:: -* \paper-Variablen für horizontale Abstände:: -* Andere \paper-Variablen:: +* Vertikale paper-Variablen mit festen Abständen:: +* Vertikale paper-Variablen mit flexiblen Abständen:: +* paper-Variablen für horizontale Abstände:: +* Andere paper-Variablen:: @end menu -@node Die \paper-Umgebung -@subsection Die @code{\paper}-Umgebung -@translationof The \paper block +@node Die paper-Umgebung +@subsection Die @code{@bs{}paper}-Umgebung +@translationof The paper block @cindex Papiergröße @cindex Größe, Papier @@ -105,7 +105,7 @@ 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{Die \layout-Umgebung}. +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, @@ -145,7 +145,7 @@ der obigen Definition ist: Notationsreferenz @ref{Papierformat und automatische Skalierung}, @ref{Eigene Kopf und Fußzeilen sowie Titel}, -@ref{Die \layout-Umgebung}. +@ref{Die layout-Umgebung,,Die @code{@bs{}layout}-Umgebung}. Installierte Dateien: @file{ly/paper-defaults-init.ly}. @@ -168,62 +168,75 @@ Installierte Dateien: @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. @@ -231,15 +244,17 @@ Wenn das Symbol @code{'landscape} als Argument an die Funktion #(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 @@ -259,11 +274,11 @@ in @ref{Das Papierformat einstellen}. 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,,Vertikale @code{@bs{}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,,@code{@bs{}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 @@ -274,8 +289,8 @@ benutzt werden. Das sind die Werte für die Standardpapiergröße @seealso Notationsreferenz: -@ref{Vertikale \paper-Variablen mit festen Abständen}, -@ref{\paper-Variablen für horizontale Abstände}. +@ref{Vertikale paper-Variablen mit festen Abständen,,Vertikale @code{@bs{}paper}-Variablen mit festen Abständen}, +@ref{paper-Variablen für horizontale Abstände,,@code{@bs{}paper}-Variablen für horizontale Abstände}. Installierte Dateien: @file{ly/paper-defaults-init.ly}, @@ -283,9 +298,9 @@ Installierte Dateien: -@node Vertikale \paper-Variablen mit festen Abständen -@unnumberedsubsubsec Vertikale @code{\paper}-Variablen mit festen Abständen -@translationof Fixed vertical spacing \paper variables +@node Vertikale paper-Variablen mit festen Abständen +@subsection Vertikale @code{@bs{}paper}-Variablen mit festen Abständen +@translationof Fixed vertical spacing paper variables @warning{Einige @code{@bs{}paper}-Dimensionen werden automatisch nach Papierformat skaliert, was zu ungewolltem Verhalten führen kann. Siehe @@ -327,7 +342,7 @@ ein bis zwei Notensystemgruppen pro Seite haben, etwa Orchesterpartituren. 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 @@ -349,10 +364,13 @@ behandelt, sodass @code{ragged-bottom} und @code{ragged-last-bottom} auch 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 -@translationof Flexible vertical spacing \paper variables +@node Vertikale paper-Variablen mit flexiblen Abständen +@subsection Vertikale @code{@bs{}paper}-Variablen mit flexiblen Abständen +@translationof Flexible vertical spacing paper variables In den meisten Fällen bietet es sich an, dass die vertikalen Abstände zwischen bestimmten Objekten (wie Ränder, Titel, @@ -373,7 +391,7 @@ werden, und nicht innerhalb der @code{\paper}-Umgebung. Siehe auch @menu * Struktur der Alisten für flexible vertikale Abstände:: -* Liste der flexiblen vertikalen Abstandsvariblen in \paper:: +* Liste der flexiblen vertikalen Abstandsvariablen in paper:: @end menu @@ -448,6 +466,10 @@ zu vermeiden. @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 @@ -456,7 +478,7 @@ vollständig neu definiert: @example \paper @{ - system-system-spacing #'basic-distance = #8 + system-system-spacing.basic-distance = #8 score-system-spacing = #'((basic-distance . 12) (minimum-distance . 6) @@ -466,9 +488,9 @@ vollständig neu definiert: @end example -@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 +@node Liste der flexiblen vertikalen Abstandsvariablen in paper +@unnumberedsubsubsec Liste der flexiblen vertikalen Abstandsvariablen in @code{@bs{}paper} +@translationof List of flexible vertical spacing paper variables Die Bezeichnungen dieser Variablen entsprechen dem Format @code{@var{obere}-@var{untere}-platzierung}, wobei @code{@var{obere}} @@ -549,24 +571,24 @@ Schnipsel: -@node \paper-Variablen für horizontale Abstände -@unnumberedsubsubsec \paper-Variablen für horizontale Abstände -@translationof Horizontal spacing \paper variables +@node paper-Variablen für horizontale Abstände +@subsection @code{@bs{}paper}-Variablen für horizontale Abstände +@translationof Horizontal spacing paper variables @warning{Einige @code{@bs{}paper}-Dimensionen werden automatische entsprechend dem Papierformat skaliert und können deshalb ungewollte Resultate haben. Siehe @ref{Automatische Skalierung auf ein Papierformat}.} @menu -* \paper-Variablen für Breite und Ränder:: -* \paper-Variablen für zweiseitigen Satz:: -* \paper-Variablen für Verschiebungen und Einrückungen:: +* paper-Variablen für Breite und Ränder:: +* paper-Variablen für zweiseitigen Satz:: +* paper-Variablen für Verschiebungen und Einrückungen:: @end menu -@node \paper-Variablen für Breite und Ränder -@unnumberedsubsubsec \paper-Variablen für Breite und Ränder -@translationof \paper variables for widths and margins +@node paper-Variablen für Breite und Ränder +@unnumberedsubsubsec @code{@bs{}paper}-Variablen für Breite und Ränder +@translationof paper variables for widths and margins Standardwerte (vor der Skalierung), die hier nicht aufgelistet sind, finden sich in @file{ly/paper-defaults-init.ly}. @@ -665,10 +687,14 @@ Notationsreferenz: 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 -@translationof \paper variables for two-sided mode +@node paper-Variablen für zweiseitigen Satz +@unnumberedsubsubsec @code{@bs{}paper}-Variablen für zweiseitigen Satz +@translationof paper variables for two-sided mode Standardwerte (vor der Skalierung) sind definiert in @file{ly/paper-defaults-init.ly}. @@ -721,9 +747,9 @@ Installierte Dateien: @file{ly/paper-defaults-init.ly}. -@node \paper-Variablen für Verschiebungen und Einrückungen -@unnumberedsubsubsec @code{\paper}-Variablen für Verschiebungen und Einrückungen -@translationof \paper variables for shifts and indents +@node paper-Variablen für Verschiebungen und Einrückungen +@unnumberedsubsubsec @code{@bs{}paper}-Variablen für Verschiebungen und Einrückungen +@translationof paper variables for shifts and indents Standardwerte (vor der Skalierung), die hier nicht aufgeführt sind, @@ -767,21 +793,21 @@ Schnipsel: @rlsr{Spacing}. -@node Andere \paper-Variablen -@subsection Andere @code{\paper}-Variablen -@translationof Other \paper variables +@node Andere paper-Variablen +@subsection Andere @code{@bs{}paper}-Variablen +@translationof Other paper variables @menu -* \paper-Variablen für den Zeilenumbruch:: -* \paper-Variablen für den Seitenumbruch:: -* \paper-Variablen für Seitenzahlen:: -* Verschiedene \paper-Variablen:: +* paper-Variablen für den Zeilenumbruch:: +* paper-Variablen für den Seitenumbruch:: +* paper-Variablen für Seitenzahlen:: +* Verschiedene paper-Variablen:: @end menu -@node \paper-Variablen für den Zeilenumbruch -@unnumberedsubsubsec @code{\paper}-Variablen für den Zeilenumbruch -@translationof \paper variables for line breaking +@node paper-Variablen für den Zeilenumbruch +@unnumberedsubsubsec @code{@bs{}paper}-Variablen für den Zeilenumbruch +@translationof paper variables for line breaking @c TODO: Mention that ly:optimal-breaking is on by default? -mp @table @code @@ -822,31 +848,31 @@ Notationsreferenz: @ref{Zeilenumbrüche}. -@node \paper-Variablen für den Seitenumbruch -@unnumberedsubsubsec @code{\paper}-Variablen für den Seitenumbruch -@translationof \paper variables for page breaking +@node paper-Variablen für den Seitenumbruch +@unnumberedsubsubsec @code{@bs{}paper}-Variablen für den Seitenumbruch +@translationof paper variables for page breaking Standardwerte, die hier nicht aufgelistet sind, finden sich in @file{ly/paper-defaults-init.ly} @table @code -@item blank-after-score-page-force -@funindex blank-after-score-page-force +@item blank-after-score-page-penalty +@funindex blank-after-score-page-penalty Die Strafpunke, die erteilt werden, wenn eine leere Seite nach einer Partitur und vor der nächsten vorkommt. Der Standardwert hiervon ist -kleiner als @code{blank-page-force}, sodass leere Seiten nach einer Partitur +kleiner als @code{blank-page-penalty}, sodass leere Seiten nach einer Partitur leeren Seiten innerhalb einer Partitur vorgezogen werden. -@item blank-last-page-force -@funindex blank-last-page-force +@item blank-last-page-penalty +@funindex blank-last-page-penalty Die Strafpunkte, wenn eine Partitur auf einer ungeraden Seite beendet wird. Standard: @code{0}. -@item blank-page-force -@funindex blank-page-force +@item blank-page-penalty +@funindex blank-page-penalty Die Strafpunkte, wenn eine leere Seite mitten in einer Partitur auftritt. Das wird nicht benutzt von @code{ly:optimal-breaking}, @@ -885,15 +911,16 @@ Notationsreferenz: @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}. -@node \paper-Variablen für Seitenzahlen -@unnumberedsubsubsec @code{\paper}-Variablen für Seitenzahlen -@translationof \paper variables for page numbering +@node paper-Variablen für Seitenzahlen +@unnumberedsubsubsec @code{@bs{}paper}-Variablen für Seitenzahlen +@translationof paper variables for page numbering Standardwerte, die hier nicht aufgelistet sind, finden sich in @file{ly/paper-defaults-init.ly} @@ -942,9 +969,9 @@ 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 -@translationof Miscellaneous \paper variables +@node Verschiedene paper-Variablen +@unnumberedsubsubsec Verschiedene @code{@bs{}paper}-Variablen +@translationof Miscellaneous paper variables @table @code @item page-spacing-weight @@ -952,7 +979,7 @@ auf der rechten Seite mit Seite 1 beginnen. 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 @@ -960,7 +987,7 @@ die vertikalen Abstände mehr. Standard: @code{#10}. 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 @@ -982,7 +1009,7 @@ benutzt werden, etwa so: tagline = ##f } \score { - \relative c'' { c1 \break c1 \break c1 } + \relative { c''1 \break c1 \break c1 } } } @end lilypond @@ -1011,14 +1038,14 @@ Zeile. @translationof Score layout @menu -* Die \layout-Umgebung +* Die layout-Umgebung:: * Die Notensystemgröße einstellen:: @end menu -@node Die \layout-Umgebung -@subsection Die @code{ayout}-Umgebung -@translationof The \layout block +@node Die layout-Umgebung +@subsection Die @code{@bs{}layout}-Umgebung +@translationof The layout block @cindex Partitur, Layout @cindex Layout, Partitur @@ -1050,15 +1077,15 @@ die innerhalb der @code{\layout}-Umgebungen erlaubt sind, sind: @item @code{line-width}, @code{ragged-right} und @code{ragged-last} -(siehe @ref{\paper-Variablen für Breite und Ränder}) +(siehe @ref{paper-Variablen für Breite und Ränder,,@code{@bs{}paper}-Variablen für Breite und Ränder}) @item @code{indent} und @code{short-indent} -(siehe @ref{\paper-Variablen für Verschiebungen und Einrückungen}) +(siehe @ref{paper-Variablen für Verschiebungen und Einrückungen,,@code{@bs{}paper}-Variablen für Verschiebungen und Einrückungen}) @item @code{system-count} -(siehe @ref{\paper-Variablen für den Zeilenumbruch}) +(siehe @ref{paper-Variablen für den Zeilenumbruch,,@code{@bs{}paper}-Variablen für den Zeilenumbruch}) @end itemize @@ -1069,17 +1096,116 @@ Hier ist ein Beispiel für eine @code{\layout}-Umgebung: indent = 2\cm \context @{ \StaffGroup - \override StaffGrouper #'staff-staff-spacing #'basic-distance = #8 + \override StaffGrouper.staff-staff-spacing.basic-distance = #8 @} \context @{ \Voice - \override TextScript #'padding = #1 - \override Glissando #'thickness = #3 + \override TextScript.padding = #1 + \override Glissando.thickness = #3 @} @} @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: @@ -1132,7 +1258,7 @@ muss @noindent eingesetzt werden. -Die Feta-Schriftart stellt die Noten- und Musiksymbole +Die Feta-Glyphe stellt die Noten- und Musiksymbole für acht verschiedene Größen zur Verfügung. Jede Schriftgröße ist einer bestimmten Systemgröße angepasst: für kleinere Schriftgrößen werden die Zeichen etwas @@ -1223,6 +1349,7 @@ Notenlinien. * 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 @@ -1243,9 +1370,11 @@ weit gespreizt wirken und aufeinander folgende Seiten einen Einen manuellen Zeilenumbruch fügt man mit dem Befehl @code{\break} ein: -@lilypond[quote,ragged-right,relative=2,verbatim] -c4 c c c | \break -c4 c c c | +@lilypond[quote,ragged-right,verbatim] +\relative c'' { + c4 c c c | \break + c4 c c c | +} @end lilypond Normalerweise wird ein @code{\break} in der Mitte eines Takes ignoriert @@ -1254,11 +1383,13 @@ Taktes zu erzwingen, können Sie mit @code{\bar ""} eine unsichtbare Taktlinie hinzufügen, die dann den Zeilenumbruch erlaubt. -@lilypond[quote,ragged-right,relative=2,verbatim] -c4 c c -\bar "" \break -c | -c4 c c c | +@lilypond[quote,ragged-right,verbatim] +\relative c'' { + c4 c c + \bar "" \break + c | + c4 c c c | +} @end lilypond Ein @code{\break} an einem Taktstrich wird auch ignoriert, wenn der letzte @@ -1271,10 +1402,10 @@ müssen. @lilypond[quote,ragged-right,verbatim] \new Voice \with { - \remove Forbid_line_break_engraver -} \relative c'' { + \remove "Forbid_line_break_engraver" +} \relative { << - { c2. \times 2/3 { c4 c c } c2. | } + { c''2. \tuplet 3/2 { c4 c c } c2. | } { s1 | \break s1 | } >> } @@ -1282,12 +1413,14 @@ müssen. Genauso werden normalerweise Zeilenumbrüche auch verhindert, wenn Balken über die Taktenden hinausragen. Dieses Verhalten kann verändert werden, -indem man @code{\override Beam #'breakable = ##t} einstellt: +indem man @code{\override Beam.breakable = ##t} einstellt: -@lilypond[quote,ragged-right,relative=2,verbatim] -\override Beam #'breakable = ##t -c2. c8[ c | \break -c8 c] c2. | +@lilypond[quote,ragged-right,verbatim] +\relative c'' { + \override Beam.breakable = ##t + c2. c8[ c | \break + c8 c] c2. | +} @end lilypond Mit dem Befehl @code{\noBreak} wird ein Zeilenumbruch an dem @@ -1354,7 +1487,7 @@ kompliziert. Mehr Einzelheiten finden sich in @seealso Notationsreferenz: -@ref{\paper-Variablen für den Zeilenumbruch}. +@ref{paper-Variablen für den Zeilenumbruch,,@code{@bs{}paper}-Variablen für den Zeilenumbruch}. Schnipsel: @rlsr{Spacing}. @@ -1385,11 +1518,11 @@ zwischen Partituren und Textbeschriftungen. 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. -Zu Einzelheiten siehe @ref{Vertikale \paper-Variablen mit festen Abständen}. +Zu Einzelheiten siehe @ref{Vertikale paper-Variablen mit festen Abständen,,Vertikale @code{@bs{}paper}-Variablen mit festen Abständen}. Seitenumbrüche werden von der @code{page-breaking}-Funktion errechnet. LilyPond kennt drei Algorithmen um Seitenumbrüche zu errechnen: @@ -1449,7 +1582,7 @@ Buchteilen benutzt werden. @seealso Notationsreferenz: -@ref{\paper-Variablen für den Seitenumbruch}. +@ref{paper-Variablen für den Seitenumbruch,,@code{@bs{}paper}-Variablen für den Seitenumbruch}. Schnipsel: @rlsr{Spacing}. @@ -1512,7 +1645,7 @@ Doppelstrich), wird der Befehl nach diesem Taktstrich gesetzt. 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. @@ -1522,7 +1655,7 @@ einen sehr großen Wert angeben. a4 b c d | R1 | % Ein Seitenumbruch zum Umblättern erlaubt a4 b c d | - \set Staff.minimumPageTurnLength = #(ly:make-moment 5 2) + \set Staff.minimumPageTurnLength = #(ly:make-moment 5/2) R1 | % Seitenumbruch nicht erlaubt a4 b r2 | R1*2 | % Seitenumbruch erlaubt @@ -1585,12 +1718,30 @@ ist die Funktion geeignet. Sie wird folgendermaßen aktiviert: @} @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 @@ -1600,8 +1751,8 @@ Es kann vorkommen, dass LilyPond direkte @code{\break} oder Einstellungen kann dieses Verhalten ausgeschaltet werden: @example -\override NonMusicalPaperColumn #'line-break-permission = ##f -\override NonMusicalPaperColumn #'page-break-permission = ##f +\override NonMusicalPaperColumn.line-break-permission = ##f +\override NonMusicalPaperColumn.page-break-permission = ##f @end example Wenn @code{line-break-permission} die Einstellung falsch @@ -1618,7 +1769,7 @@ Wenn @code{line-break-permission} die Einstellung falsch ragged-bottom = ##t } -music = \relative c'' { c8 c c c } +music = \relative { c''8 c c c } \score { \new Staff { @@ -1634,8 +1785,8 @@ music = \relative c'' { c8 c c c } \layout { \context { \Score - \override NonMusicalPaperColumn #'line-break-permission = ##f - \override NonMusicalPaperColumn #'page-break-permission = ##f + \override NonMusicalPaperColumn.line-break-permission = ##f + \override NonMusicalPaperColumn.page-break-permission = ##f } } } @@ -1655,7 +1806,7 @@ Zeilen- und Seitenumbruchbefehle werden normalerweise direkt zusammen mit den Noten eingegeben. @example -music = \relative c'' @{ c4 c c c @} +music = \relative @{ c''4 c c c @} \score @{ \new Staff @{ @@ -1674,7 +1825,7 @@ Diese zusätzliche Stimme enthält nur unsichtbare Noten und die Umbruchbefehle: @lilypond[quote,verbatim] -music = \relative c'' { c4 c c c } +music = \relative { c''4 c c c } \score { \new Staff << @@ -1702,25 +1853,21 @@ anderer Eigenschaften von @ref{Vertikale Abstände}). @lilypond[quote,verbatim] -music = \relative c'' { c4 c c c } +music = \relative { c''4 c c c } \score { \new Staff << \new Voice { - \overrideProperty "Score.NonMusicalPaperColumn" - #'line-break-system-details #'((Y-offset . 0)) + \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details #'((Y-offset . 0)) s1 * 2 \break - \overrideProperty "Score.NonMusicalPaperColumn" - #'line-break-system-details #'((Y-offset . 35)) + \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details #'((Y-offset . 35)) s1 * 3 \break - \overrideProperty "Score.NonMusicalPaperColumn" - #'line-break-system-details #'((Y-offset . 70)) + \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details #'((Y-offset . 70)) s1 * 6 \break - \overrideProperty "Score.NonMusicalPaperColumn" - #'line-break-system-details #'((Y-offset . 105)) + \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details #'((Y-offset . 105)) s1 * 5 \break } \new Voice { @@ -1759,7 +1906,7 @@ innerhalb von Gruppen gesetzt wird. @menu * Flexible vertikale Abstände in Systemgruppen:: -* Explizite Positionierung von Systemen und Systemgruppen:: +* Explizite Positionierung von Systemen:: * Vermeidung von vertikalen Zusammenstößen:: @end menu @@ -1802,7 +1949,7 @@ Abschnitt behandelt wird, nur die vertikale Platzierung von Systemen und nicht-Systemzeilen in einzelnen Systemgruppen behandelt. Die vertikale Platzierung zwischen einzelnen Systemgruppen, Partituren, Beschriftungen usw. und den Rändern wird durch @code{\paper}-Variablen kontrolliert, die -@ref{Vertikale \paper-Variablen mit flexiblen Abständen}. +@ref{Vertikale paper-Variablen mit flexiblen Abständen,,Vertikale @code{@bs{}paper}-Variablen mit flexiblen Abständen}. @menu * Eigenschaften für Abstände innerhalb von Systemgruppen:: @@ -1845,7 +1992,7 @@ Abstände eingestellt werden sollen. Dabei ist allerdings zu beachten, dass @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 @@ -1872,20 +2019,20 @@ Referenzpunkte an: #(define zero-space '((padding . -inf.0) (basic-distance . 0))) alignToZero = \with { - \override VerticalAxisGroup #'nonstaff-relatedstaff-spacing = #zero-space - \override VerticalAxisGroup #'nonstaff-nonstaff-spacing = #zero-space + \override VerticalAxisGroup.nonstaff-relatedstaff-spacing = #zero-space + \override VerticalAxisGroup.nonstaff-nonstaff-spacing = #zero-space } lowerCaseChords = \with { chordNameLowercaseMinor = ##t } staffAffinityDown = \with { - \override VerticalAxisGroup #'staff-affinity = #DOWN + \override VerticalAxisGroup.staff-affinity = #DOWN } labelContext = #(define-music-function - (parser location context) + (context) (string?) - #{ s1*0^\markup { \typewriter $context } #}) + #{ s1*0^\markup { \typewriter #context } #}) \layout { \context { \Dynamics \alignToZero } @@ -1897,13 +2044,13 @@ labelContext = \lowerCaseChords } \context { \FretBoards \alignToZero \staffAffinityDown } \context { \Score - \override BarLine #'stencil = ##f - \override DynamicText #'self-alignment-X = #-1 - \override FretBoard #'X-offset = #1.75 - \override InstrumentName #'minimum-Y-extent = #'(-2 . 2) - \override InstrumentName #'extra-offset = #'(0 . -0.5) - \override TextScript #'minimum-Y-extent = #'(-2 . 3) - \override TimeSignature #'stencil = ##f + \omit BarLine + \override DynamicText.self-alignment-X = #-1 + \override FretBoard.X-offset = #1.75 + \override InstrumentName.minimum-Y-extent = #'(-2 . 2) + \override InstrumentName.extra-offset = #'(0 . -0.5) + \override TextScript.minimum-Y-extent = #'(-2 . 3) + \omit TimeSignature } } @@ -1954,7 +2101,7 @@ labelContext = Jeder der vertikalen Platzierungs-Grobeigenschaften (außer @code{staff-affinity}) benutzt die gleiche Alistenstruktur wie die @code{\paper}-Variablen, behandelt in -@ref{Vertikale \paper-Variablen mit flexiblen Abständen}. Besondere +@ref{Vertikale paper-Variablen mit flexiblen Abständen,,Vertikale @code{@bs{}paper}-Variablen mit flexiblen Abständen}. Besondere Methoden um Alisten zu verändern finden sich in @ref{Alisten verändern}. Grob-Eigenschaften sollten mit dem @code{\override}-Befehle innerhalb einer @code{\score}- @@ -1967,12 +2114,11 @@ der zweite die Eigenschaft komplett neu definiert: @example \new Staff \with @{ - \override VerticalAxisGroup #'default-staff-staff-spacing - #'basic-distance = #10 + \override VerticalAxisGroup.default-staff-staff-spacing.basic-distance = #10 @} @{ @dots{} @} \new Staff \with @{ - \override VerticalAxisGroup #'default-staff-staff-spacing = + \override VerticalAxisGroup.default-staff-staff-spacing = #'((basic-distance . 10) (minimum-distance . 9) (padding . 1) @@ -1987,8 +2133,7 @@ Um Platzierungseinstellungen global vorzunehmen, müssen sie in der \layout @{ \context @{ \Staff - \override VerticalAxisGroup #'default-staff-staff-spacing - #'basic-distance = #10 + \override VerticalAxisGroup.default-staff-staff-spacing.basic-distance = #10 @} @} @end example @@ -2053,7 +2198,6 @@ 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 @@ -2122,18 +2266,18 @@ für dieses Notensystem geändert werden. @seealso Notationsreferenz: -@ref{Vertikale \paper-Variablen mit flexiblen Abständen}, +@ref{Vertikale paper-Variablen mit flexiblen Abständen,,Vertikale @code{@bs{}paper}-Variablen mit flexiblen Abständen}, @ref{Alisten verändern}. +Installierte Dateien: +@file{ly/engraver-init.ly}, +@file{scm/define-grobs.scm}. + Referenz der Interna: @rinternals{Contexts}, @rinternals{VerticalAxisGroup}, @rinternals{StaffGrouper}. -Installierte Dateien: -@file{ly/engraver-init.ly}, -@file{scm/define-grobs.scm}. - @node Abstände von nicht gruppierten Notensystemen @unnumberedsubsubsec Abstände von nicht gruppierten Notensystemen @@ -2171,7 +2315,7 @@ in denen die Systeme gruppiert sind. \layout { \context { \Staff - \override VerticalAxisGroup #'default-staff-staff-spacing = + \override VerticalAxisGroup.default-staff-staff-spacing = #'((basic-distance . 8) (minimum-distance . 7) (padding . 1)) @@ -2193,7 +2337,7 @@ in denen die Systeme gruppiert sind. % 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 #'default-staff-staff-spacing = + \override VerticalAxisGroup.default-staff-staff-spacing = #'((basic-distance . 3.5) (padding . -10)) } { \clef bass g2 r | } @@ -2251,14 +2395,14 @@ beeinflussen kann: \layout { \context { \Score - \override StaffGrouper #'staff-staff-spacing #'padding = #0 - \override StaffGrouper #'staff-staff-spacing #'basic-distance = #1 + \override StaffGrouper.staff-staff-spacing.padding = #0 + \override StaffGrouper.staff-staff-spacing.basic-distance = #1 } } << \new PianoStaff \with { - \override StaffGrouper #'staffgroup-staff-spacing #'basic-distance = #20 + \override StaffGrouper.staffgroup-staff-spacing.basic-distance = #20 } << \new Staff { c'1 } \new Staff { c'1 } @@ -2318,24 +2462,23 @@ werden: \layout { \context { \Lyrics - \override VerticalAxisGroup - #'nonstaff-nonstaff-spacing #'stretchability = #1000 + \override VerticalAxisGroup.nonstaff-nonstaff-spacing.stretchability = #1000 } } \new StaffGroup << \new Staff \with { - \override VerticalAxisGroup #'staff-staff-spacing = #'((basic-distance . 30)) + \override VerticalAxisGroup.staff-staff-spacing = #'((basic-distance . 30)) } { c'1 } \new Lyrics \with { - \override VerticalAxisGroup #'staff-affinity = #UP + \override VerticalAxisGroup.staff-affinity = #UP } \lyricmode { up } \new Lyrics \with { - \override VerticalAxisGroup #'staff-affinity = #CENTER + \override VerticalAxisGroup.staff-affinity = #CENTER } \lyricmode { center } \new Lyrics \with { - \override VerticalAxisGroup #'staff-affinity = #DOWN + \override VerticalAxisGroup.staff-affinity = #DOWN } \lyricmode { down } \new Staff { c'1 } >> @@ -2359,12 +2502,6 @@ Referenz der Interna: - - - - - - @node Explizite Positionierung von Systemen @subsection Explizite Positionierung von Systemen @translationof Explicit staff and system positioning @@ -2411,21 +2548,16 @@ Veränderungen von @code{NonMusicalPaperColumn} mit dem @code{\overrideProperty}-Befehl sind hier aufgelistet: @example -\overrideProperty NonMusicalPaperColumn - #'line-break-system-details #'((X-offset . 20)) +\overrideProperty NonMusicalPaperColumn.line-break-system-details #'((X-offset . 20)) -\overrideProperty NonMusicalPaperColumn - #'line-break-system-details #'((Y-offset . 40)) +\overrideProperty NonMusicalPaperColumn.line-break-system-details #'((Y-offset . 40)) -\overrideProperty NonMusicalPaperColumn - #'line-break-system-details #'((X-offset . 20) +\overrideProperty NonMusicalPaperColumn.line-break-system-details #'((X-offset . 20) (Y-offset . 40)) -\overrideProperty NonMusicalPaperColumn - #'line-break-system-details #'((alignment-distances . (15))) +\overrideProperty NonMusicalPaperColumn.line-break-system-details #'((alignment-distances . (15))) -\overrideProperty NonMusicalPaperColumn - #'line-break-system-details #'((X-offset . 20) +\overrideProperty NonMusicalPaperColumn.line-break-system-details #'((X-offset . 20) (Y-offset . 40) (alignment-distances . (15))) @end example @@ -2481,14 +2613,11 @@ ersichtlich benutzt werden: << \new Staff << \new Voice { - \overrideProperty #"Score.NonMusicalPaperColumn" - #'line-break-system-details #'((Y-offset . 0)) + \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details #'((Y-offset . 0)) s1*5 \break - \overrideProperty #"Score.NonMusicalPaperColumn" - #'line-break-system-details #'((Y-offset . 40)) + \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details #'((Y-offset . 40)) s1*5 \break - \overrideProperty #"Score.NonMusicalPaperColumn" - #'line-break-system-details #'((Y-offset . 80)) + \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details #'((Y-offset . 80)) s1*5 \break } \new Voice { \repeat unfold 15 { c'4 c' c' c' } } @@ -2520,16 +2649,13 @@ von @code{line-break-system-details}. << \new Staff << \new Voice { - \overrideProperty #"Score.NonMusicalPaperColumn" - #'line-break-system-details #'((Y-offset . 20) + \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details #'((Y-offset . 20) (alignment-distances . (15))) s1*5 \break - \overrideProperty #"Score.NonMusicalPaperColumn" - #'line-break-system-details #'((Y-offset . 60) + \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details #'((Y-offset . 60) (alignment-distances . (15))) s1*5 \break - \overrideProperty #"Score.NonMusicalPaperColumn" - #'line-break-system-details #'((Y-offset . 100) + \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details #'((Y-offset . 100) (alignment-distances . (15))) s1*5 \break } @@ -2562,16 +2688,13 @@ die vertikale Position von einzelnen Notensystemen. << \new Staff << \new Voice { - \overrideProperty #"Score.NonMusicalPaperColumn" - #'line-break-system-details #'((Y-offset . 0) + \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details #'((Y-offset . 0) (alignment-distances . (30 10))) s1*5 \break - \overrideProperty #"Score.NonMusicalPaperColumn" - #'line-break-system-details #'((Y-offset . 60) + \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details #'((Y-offset . 60) (alignment-distances . (10 10))) s1*5 \break - \overrideProperty #"Score.NonMusicalPaperColumn" - #'line-break-system-details #'((Y-offset . 100) + \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details #'((Y-offset . 100) (alignment-distances . (10 30))) s1*5 \break } @@ -2650,17 +2773,19 @@ des Systems um den gleichen Platz streiten, wird das mit dem geringeren Wert von @code{outside-staff-priority} näher an das entsprechende Notensystem gesetzt. -@lilypond[quote,ragged-right,relative=2,verbatim] -c4_"Text"\pp -r2. -\once \override TextScript #'outside-staff-priority = #1 -c4_"Text"\pp % this time the text will be closer to the staff -r2. -% by setting outside-staff-priority to a non-number, -% we disable the automatic collision avoidance -\once \override TextScript #'outside-staff-priority = ##f -\once \override DynamicLineSpanner #'outside-staff-priority = ##f -c4_"Text"\pp % now they will collide +@lilypond[quote,ragged-right,verbatim] +\relative c'' { + c4_"Text"\pp + r2. + \once \override TextScript.outside-staff-priority = #1 + c4_"Text"\pp % this time the text will be closer to the staff + r2. + % by setting outside-staff-priority to a non-number, + % we disable the automatic collision avoidance + \once \override TextScript.outside-staff-priority = ##f + \once \override DynamicLineSpanner.outside-staff-priority = ##f + c4_"Text"\pp % now they will collide +} @end lilypond Der Platz, der zwischen einem Objekt außerhalb des Systems und @@ -2668,10 +2793,10 @@ dem vorhergehenden Objekt eingefügt werden kann (auch als padding bezeichnet), kann durch @code{outside-staff-padding} kontrolliert werden. -@lilypond[quote,ragged-right,relative=2,verbatim] -\once \override TextScript #'outside-staff-padding = #0 +@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 +\once \override TextScript.outside-staff-padding = #3 c^"This text is padded away from the previous text" c^"This text is placed close to the previous text" @end lilypond @@ -2694,7 +2819,7 @@ c4 c''2 % setting outside-staff-horizontal-padding fixes this R1 -\once \override TextScript #'outside-staff-horizontal-padding = #1 +\once \override TextScript.outside-staff-horizontal-padding = #1 c,,4^"Text" c4 c''2 @@ -2767,7 +2892,7 @@ Weise bestimmt: in jedem Takt wird die kürzeste Note bestimmt. Die 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 @@ -2804,19 +2929,22 @@ mit den Standardwerten und dann mit größeren Werten, damit man sie besser sieht: @lilypond[quote,ragged-right] -{ - c'4 e''4 e'4 b'4 | - b'4 e''4 b'4 e''4 | - \override Staff.NoteSpacing #'stem-spacing-correction = #1.5 - \override Staff.StaffSpacing #'stem-spacing-correction = #1.5 - c'4 e''4 e'4 b'4 | - b'4 e''4 b'4 e''4 | +\fixed c' { + c4 e'4 e4 b4 | + b4 e'4 b4 e'4 | + \override Staff.NoteSpacing.stem-spacing-correction = #1.5 + \override Staff.StaffSpacing.stem-spacing-correction = #1.5 + c4 e'4 e4 b4 | + b4 e'4 b4 e'4 | } @end lilypond Proportionale Notation ist unterstützt, siehe @ref{Proportionale Notation}. @seealso +Aufsatz über den automatischen Notensatz: +@ressay{Optischer Ausgleich}. + Schnipsel: @rlsr{Spacing}. @@ -2826,9 +2954,6 @@ Referenz der Interna: @rinternals{StaffSpacing}, @rinternals{NonMusicalPaperColumn}. -Aufsatz über den automatischen Notensatz: -@ressay{Optischer Ausgleich}. - @knownissues Es gibt keine sinnvolle Möglichkeit, die horizontale Verteilung der @@ -2837,7 +2962,7 @@ dehnbare Abstände (padding) eingesetzt werden, kann benutzt 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. @@ -2845,7 +2970,7 @@ Es gibt derzeit keine Möglichkeit, den Platz zu verringern. @node Eine neuer Bereich mit anderen Abständen @subsection Eine neuer Bereich mit anderen Abständen -@translationof New spacing area +@translationof New spacing section @cindex horizontale Notenabstände, Abschnitte definierten @cindex Notenabstände, Abschnitte definieren @@ -2904,8 +3029,8 @@ eine größere Dauer ist als @code{1 16}. @lilypond[verbatim,line-width=12\cm] \score { - \relative c'' { - g4 e e2 | f4 d d2 | c4 d e f | g4 g g2 | + \relative { + g'4 e e2 | f4 d d2 | c4 d e f | g4 g g2 | g4 e e2 | f4 d d2 | c4 e g g | c,1 | d4 d d d | d4 e f2 | e4 e e e | e4 f g2 | g4 e e2 | f4 d d2 | c4 e g g | c,1 | @@ -2915,8 +3040,8 @@ eine größere Dauer ist als @code{1 16}. @lilypond[verbatim,line-width=12\cm] \score { - \relative c'' { - g4 e e2 | f4 d d2 | c4 d e f | g4 g g2 | + \relative { + g'4 e e2 | f4 d d2 | c4 d e f | g4 g g2 | g4 e e2 | f4 d d2 | c4 e g g | c,1 | d4 d d d | d4 e f2 | e4 e e e | e4 f g2 | g4 e e2 | f4 d d2 | c4 e g g | c,1 | @@ -2924,8 +3049,7 @@ eine größere Dauer ist als @code{1 16}. \layout { \context { \Score - \override SpacingSpanner - #'base-shortest-duration = #(ly:make-moment 1 16) + \override SpacingSpanner.base-shortest-duration = #(ly:make-moment 1/16) } } } @@ -2948,14 +3072,14 @@ werden: \score { << \new Staff { - \times 4/5 { + \tuplet 5/4 { c8 c8 c8 c8 c8 } c8 c8 c8 c8 } \new Staff { c8 c8 c8 c8 - \times 4/5 { + \tuplet 5/4 { c8 c8 c8 c8 c8 } } @@ -2963,7 +3087,7 @@ werden: \layout { \context { \Score - \override SpacingSpanner #'uniform-stretching = ##t + \override SpacingSpanner.uniform-stretching = ##t } } } @@ -2974,8 +3098,8 @@ gesetzt, ohne dass Schlüssel, Taktlinie oder Verzierungsnoten zusätzlichen Platz erhalten. @lilypond[quote,ragged-right,relative=2,fragment,verbatim] -\override Score.SpacingSpanner #'strict-note-spacing = ##t -\new Staff { c8[ c \clef alto c \grace { c16[ c] } c8 c c] c32[ c32] } +\override Score.SpacingSpanner.strict-note-spacing = ##t +\new Staff { c8[ c \clef alto c \grace { c16 c } c8 c c] c32[ c32] } @end lilypond @@ -3063,8 +3187,8 @@ benutzt werden können: @item @code{proportionalNotationDuration} (proportionale Notendauer) @item @code{uniform-stretching} (gleichmäßige Dehnung) @item @code{strict-note-spacing} (strenge Notenverteilung) -@item @code{\remove Separating_line_group_engraver} (entferne Liniengruppentrennungsengraver) -@item @code{\override PaperColumn #'used = ##t} (PapierSpalte benutzt = wahr) +@item @code{\remove "Separating_line_group_engraver"} (entferne Liniengruppentrennungsengraver) +@item @code{\override PaperColumn.used = ##t} (PapierSpalte benutzt = wahr) @end itemize In den Beispielen unten werden diese fünf unterschiedlichen Einstellungen @@ -3080,7 +3204,7 @@ die klassischen Abstände und Flattersatz (ragged-right) eingesetzt werden: \new RhythmicStaff { c'2 c'16 c'16 c'16 c'16 - \times 4/5 { + \tuplet 5/4 { c'16 c'16 c'16 c'16 c'16 } } @@ -3111,7 +3235,7 @@ eingeschaltet: \new RhythmicStaff { c'2 c'16 c'16 c'16 c'16 - \times 4/5 { + \tuplet 5/4 { c'16 c'16 c'16 c'16 c'16 } } @@ -3119,7 +3243,7 @@ eingeschaltet: \layout { \context { \Score - proportionalNotationDuration = #(ly:make-moment 1 20) + proportionalNotationDuration = #(ly:make-moment 1/20) } } } @@ -3140,10 +3264,10 @@ Die Eigenschaft @code{proportionalNotationDuration} braucht ein Argument, 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. @@ -3157,7 +3281,7 @@ erscheinen, größere Referenzdauern zwingen sie dichter zusammen. \new RhythmicStaff { c'2 c'16 c'16 c'16 c'16 - \times 4/5 { + \tuplet 5/4 { c'16 c'16 c'16 c'16 c'16 } } @@ -3165,7 +3289,7 @@ erscheinen, größere Referenzdauern zwingen sie dichter zusammen. \layout { \context { \Score - proportionalNotationDuration = #(ly:make-moment 1 8) + proportionalNotationDuration = #(ly:make-moment 1/8) } } } @@ -3175,7 +3299,7 @@ erscheinen, größere Referenzdauern zwingen sie dichter zusammen. \new RhythmicStaff { c'2 c'16 c'16 c'16 c'16 - \times 4/5 { + \tuplet 5/4 { c'16 c'16 c'16 c'16 c'16 } } @@ -3183,7 +3307,7 @@ erscheinen, größere Referenzdauern zwingen sie dichter zusammen. \layout { \context { \Score - proportionalNotationDuration = #(ly:make-moment 1 16) + proportionalNotationDuration = #(ly:make-moment 1/16) } } } @@ -3193,7 +3317,7 @@ erscheinen, größere Referenzdauern zwingen sie dichter zusammen. \new RhythmicStaff { c'2 c'16 c'16 c'16 c'16 - \times 4/5 { + \tuplet 5/4 { c'16 c'16 c'16 c'16 c'16 } } @@ -3201,7 +3325,7 @@ erscheinen, größere Referenzdauern zwingen sie dichter zusammen. \layout { \context { \Score - proportionalNotationDuration = #(ly:make-moment 1 32) + proportionalNotationDuration = #(ly:make-moment 1/32) } } } @@ -3226,12 +3350,12 @@ System mit anderen rhythmischen Werten hinzugefügt wird: \new RhythmicStaff { c'2 c'16 c'16 c'16 c'16 - \times 4/5 { + \tuplet 5/4 { c'16 c'16 c'16 c'16 c'16 } } \new RhythmicStaff { - \times 8/9 { + \tuplet 9/8 { c'8 c'8 c'8 c'8 c'8 c'8 c'8 c'8 c'8 } } @@ -3252,12 +3376,12 @@ dieser Situation deutlich: \new RhythmicStaff { c'2 c'16 c'16 c'16 c'16 - \times 4/5 { + \tuplet 5/4 { c'16 c'16 c'16 c'16 c'16 } } \new RhythmicStaff { - \times 8/9 { + \tuplet 9/8 { c'8 c'8 c'8 c'8 c'8 c'8 c'8 c'8 c'8 } } @@ -3265,7 +3389,7 @@ dieser Situation deutlich: \layout { \context { \Score - proportionalNotationDuration = #(ly:make-moment 1 20) + proportionalNotationDuration = #(ly:make-moment 1/20) } } } @@ -3282,12 +3406,12 @@ sollte auch noch die gleichmäßige Dehnung (@code{uniform-stretching}) angescha \new RhythmicStaff { c'2 c'16 c'16 c'16 c'16 - \times 4/5 { + \tuplet 5/4 { c'16 c'16 c'16 c'16 c'16 } } \new RhythmicStaff { - \times 8/9 { + \tuplet 9/8 { c'8 c'8 c'8 c'8 c'8 c'8 c'8 c'8 c'8 } } @@ -3295,8 +3419,8 @@ sollte auch noch die gleichmäßige Dehnung (@code{uniform-stretching}) angescha \layout { \context { \Score - proportionalNotationDuration = #(ly:make-moment 1 20) - \override SpacingSpanner #'uniform-stretching = ##t + proportionalNotationDuration = #(ly:make-moment 1/20) + \override SpacingSpanner.uniform-stretching = ##t } } } @@ -3356,7 +3480,7 @@ auch dieser zusätzliche Platz: } \new Staff \with { - \remove Separating_line_group_engraver + \remove "Separating_line_group_engraver" } { c'1 \break @@ -3385,7 +3509,7 @@ die beiden Partituren unten: @lilypond[quote,verbatim,ragged-right] \new Staff { - \set Score.proportionalNotationDuration = #(ly:make-moment 1 16) + \set Score.proportionalNotationDuration = #(ly:make-moment 1/16) c''8 c''8 c''8 @@ -3395,8 +3519,8 @@ die beiden Partituren unten: } \new Staff { - \set Score.proportionalNotationDuration = #(ly:make-moment 1 16) - \override Score.SpacingSpanner #'strict-note-spacing = ##t + \set Score.proportionalNotationDuration = #(ly:make-moment 1/16) + \override Score.SpacingSpanner.strict-note-spacing = ##t c''8 c''8 c''8 @@ -3419,12 +3543,12 @@ noch eine Reihe von Möglichkeiten, die oft in proportionaler Notation benutzt werden. Dazu gehören: @itemize -@item @code{\override SpacingSpanner #'strict-grace-spacing = ##t} +@item @code{\override SpacingSpanner.strict-grace-spacing = ##t} @item @code{tupletFullLength = ##t} -@item @code{\override Beam #'breakable = ##t} -@item @code{\override Glissando #'breakable = ##t} -@item @code{\override TextSpanner #'breakable = ##t} -@item @code{\remove Forbid_line_break_engraver in the Voice context} +@item @code{\override Beam.breakable = ##t} +@item @code{\override Glissando.breakable = ##t} +@item @code{\override TextSpanner.breakable = ##t} +@item @code{\remove "Forbid_line_break_engraver" in the Voice context} @end itemize Diese Einstellungen bewirken, dass auch Verzierungsnoten proportional @@ -3563,6 +3687,16 @@ nur 10 Systemen erzwingen. @} @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 @@ -3576,7 +3710,7 @@ weit @qq{hervorstehen}, zu verschieben. @lilypond[verbatim,quote,relative=1] e4 c g\f c -e4 c g-\tweak #'X-offset #-2.7 -\tweak #'Y-offset #2.5 \f c +e4 c g-\tweak X-offset #-2.7 -\tweak Y-offset #2.5 \f c @end lilypond @item @@ -3587,8 +3721,8 @@ Beispiel zeigt die normalen Abstände: @lilypond[verbatim,quote] \score { - \relative c'' { - g4 e e2 | + \relative { + g'4 e e2 | f4 d d2 | c4 d e f | g4 g g2 | @@ -3606,8 +3740,8 @@ angegeben wird: @lilypond[verbatim,quote] \score { - \relative c'' { - g4 e e2 | + \relative { + g'4 e e2 | f4 d d2 | c4 d e f | g4 g g2 | @@ -3616,8 +3750,7 @@ angegeben wird: \layout { \context { \Score - \override SpacingSpanner - #'common-shortest-duration = #(ly:make-moment 1 2) + \override SpacingSpanner.common-shortest-duration = #(ly:make-moment 1/2) } } } @@ -3633,7 +3766,7 @@ auf eine ganze @code{\score}-Umgebung aus. @seealso Notationsreferenz: -@ref{Seitenformatierung}, +@ref{Seitenlayout}, @ref{Horizontale Abstände verändern}. Schnipsel: