]> git.donarmstrong.com Git - lilypond.git/blob - Documentation/de/notation/spacing.itely
Fix typos in the German manual.
[lilypond.git] / Documentation / de / notation / spacing.itely
1 @c -*- coding: utf-8; mode: texinfo; documentlanguage: de -*-
2
3 @ignore
4     Translation of GIT committish: 0a868be38a775ecb1ef935b079000cebbc64de40
5
6     When revising a translation, copy the HEAD committish of the
7     version that you are working on.  For details, see the Contributors'
8     Guide, node Updating translation committishes..
9 @end ignore
10
11 @c \version "2.12.0"
12
13 @c Translators: Till Paala
14
15
16 @node Abstände
17 @chapter Abstände
18 @translationof Spacing issues
19
20 Das finale Layout der Seite wird von drei Faktoren bestimmt: dem Layout
21 der Seite, den Zeilenumbrüchen und der Platzverteilung.  Jeder Faktor
22 beeinflusst auch die anderen mit.  Die Wahl der Platzverteilung
23 entscheidet, wie eng die Notensysteme gesetzt werden.  Das wiederum
24 hat Einfluss auf die gewählten Zeilenumbrüche und letztendlich also
25 auch darauf, wieviele Seiten ein Stück beansprucht.
26
27 Die Verteilung der Musik auf der Seite geschieht grob gesagt in
28 vier Schritten.  Zuerst werden flexible Entfernungen (@qq{springs})
29 gewählt, die auf den Notendauern basieren.  Alle möglichen
30 Zeilenumbrüche werden getestet und ein @qq{Schlechtigkeitsscore}
31 für die Umbrüche erstellt.  Danach wird die mögliche Höhe eines Systems
32 ermittelt und schließlich wird eine bestimmte Kombination aus
33 Seiten- und Zeilenumbruch ausgewählt, sodass weder die horizontale
34 noch die vertikale Platzverteilung zu eng oder zu weit gesetzt wird.
35
36 Einstellungen, die das Layout beeinflussen, können in zwei Umgebungen
37 gesetzt werden: Die @code{\paper @{...@}}-Umgebung wird außerhalb einer
38 @code{\score @{...@}}-Umgebung geschrieben und enthält Einstellungen,
39 die für das gesamte Dokument gelten.  Die @code{\layout @{...@}}-Umgebung
40 wird innerhalb von einer @code{\score @{...@}}-Umgebung notiert und
41 enthält die Einstellungen für eine bestimmte Partitur.  Wenn Sie
42 nur eine @code{\score @{...@}}-Umgebung in der Datei haben, haben
43 beide Umgebungen den gleichen Effekt.  Die Befehle, die in diesem Abschnitt
44 erklärt werden, können in beiden Umgebungen nach Bedarf gesetzt werden.
45
46 @menu
47 * Papier und Seiten::
48 * Notenlayout::
49 * Umbrüche::
50 * Vertikale Abstände::
51 * Horizontale Abstände::
52 * Die Musik auf weniger Seiten zwingen::
53 @end menu
54
55
56 @node Papier und Seiten
57 @section Papier und Seiten
58 @translationof Paper and pages
59
60 Dieser Abschnitt behandelt die Grenzen, die Notationsgebiete
61 definieren.
62
63 @menu
64 * Papierformat::
65 * Seitenformatierung::
66 @end menu
67
68
69 @node Papierformat
70 @subsection Papierformat
71 @translationof Paper size
72
73 @cindex Papiergröße
74 @cindex Größe, Papier
75 @cindex Seitegröße
76 @cindex Größe, Seite
77
78 Zwei Funktionen ermöglichen es, die Papiergröße zu ändern:
79 @code{set-default-paper-size} und @code{set-paper-size}.
80 @code{set-default-paper-size} muss auf der obersten Ebene in
81 der Quelldatei gesetzt werden, @code{set-paper-size} hingegen
82 muss sich in einer @code{\paper}-Umgebung befinden:
83
84 @example
85 #(set-default-paper-size "a4")
86 @end example
87
88 @example
89 \paper @{
90   #(set-paper-size "a4")
91 @}
92 @end example
93
94 @noindent
95 @code{set-default-paper-size} bestimmt die Größe aller Seiten, während
96 @code{set-paper-size} nur die Seitengröße für die Seiten definiert,
97 auf die sich die aktuelle @code{\paper}-Umgebung bezieht.  Wenn die
98 @code{\paper}-Umgebung auf der höchsten Ebene steht, bezieht sich die
99 Papiergröße auf alle Seiten, wenn sie aber innerhalb einer
100 @code{\book}-Umgebung definiert wird, nur auf die Seiten innerhalb
101 dieses Buches.
102
103 Die normalen Papierformate sind definiert, u.A. @code{a4},
104 @code{letter}, @code{legal} und @code{11x17} (auch als
105 Tabloit bekannt).  Sehr viel mehr Formate sind unterstützt.
106 Einzelheiten finden sich in der Datei
107 @file{scm/@/paper@/.scm} in der Definition von
108 @code{paper-alist}.
109
110 @warning{Das Standardformat ist @code{a4}.}
111
112 Weitere Papierformate können hinzugefügt werden, indem die
113 Definition von @code{paper-alist} in der Datei
114 @file{scm/@/paper@/.scm} verändert wird.  Derartige
115 Änderungen werden jedoch bei einer Aktualisierung des
116 Programmes überschrieben.
117
118 @cindex Ausrichtung, Papier
119 @cindex Papier, Ausrichtung
120 @cindex hochkant, Papier
121 @cindex quer, Papier
122
123 @funindex landscape
124
125 Wenn das Symbol @code{'landscape} als Argument an die Funktion
126 @code{set-default-paper-size} gehängt wird, werden die Seiten um
127 90° gedreht und die Notensysteme entsprechend breiter gesetzt.
128
129 @example
130 #(set-default-paper-size "a6" 'landscape)
131 @end example
132
133 Wenn man die Seitengröße setzt, werden einige Variablen der
134 @code{\paper}-Umgebung verändert, wie etwa Seitenränder.  Um
135 eine bestimmte Papiergröße mit veränderten @code{\paper}-Variablen
136 zu benutzen, muss die Papiergröße definiert werden, bevor diese
137 Variablen neu gesetzt werden.
138
139
140 @seealso
141 Installierte Dateien:
142 @file{scm/@/paper@/.scm}.
143
144 Schnipsel:
145 @rlsr{Spacing}.
146
147
148 @node Seitenformatierung
149 @subsection Seitenformatierung
150 @translationof Page formatting
151
152 Ränder, Kopf- und Fußzeilen und andere Layoutvariablen werden
153 entsprechend dem Papierformat automatisch gesetzt.
154
155 Dieser Abschnitt zeigt einige der Papiervariablen, die geändert
156 werden können.
157
158 @menu
159 * Vertikale Dimensionen::
160 * Horizontale Dimensionen::
161 * Weitere Layout-Variablen::
162 @end menu
163
164
165 @node Vertikale Dimensionen
166 @unnumberedsubsubsec Vertikale Dimensionen
167 @translationof Vertical dimensions
168
169 Diese Variablen werden benutzt um andere vertikale Verhältnisse
170 auf einer Seite zu produzieren:
171
172 @funindex \paper
173 @funindex after-title-space
174 @funindex before-title-space
175 @funindex between-system-padding
176 @funindex between-system-space
177 @funindex between-title-space
178 @funindex bottom-margin
179 @funindex foot-separation
180 @funindex head-separation
181 @funindex page-top-space
182 @funindex paper-height
183 @funindex top-margin
184
185 @table @code
186
187 @item after-title-space
188
189 Die Größe des Abstands zwischen der Überschrift und dem ersten
190 Notensystem.  Standard: @code{5\mm}.
191
192 @item before-title-space
193
194 Die Größe des Abstands zwischen dem letzten Notensystem einer
195 Partitur und dem Titel der nächsten Partitur. Standard: @code{10\mm}.
196
197 @item between-system-padding
198
199 Der Mindestabstand zwischen dem untersten Symbol in einem Notensystem
200 und dem obersten Symbol im sich darunter befindlichen System.
201 Standard: @code{4\mm}.
202
203 Wenn dieser Wert erhöht wird, werden Systeme, deren @qq{bounding box}
204 sich beinahe berühren, weiter auseinander gezogen.
205
206 @item between-system-space
207
208 Der Abstand zwischen Systemen.  Das ist der ideale Abstand zwischen
209 der Mitte des eines Systems (bzw. des untersten Systems einer Systemgruppe)
210 und der Mitte des nächsten Systems (bzw. des obersten System der
211 nächsten Systemgruppe).  Standard: @code{20\mm}.
212
213 Wenn dieser Wert erhöht wird, erscheinen die Noten auf der Seite gleichmäßiger,
214 wobei sie aber auch mehr Platz einnehmen.
215
216 @item between-title-space
217
218 Der Abstand zwischen aufeinanderfolgenden Überschriften (etwa die
219 Überschrift für ein @code{book} und die Überschrift einer Partitur.
220 Standard: @code{2\mm}.
221
222 @item bottom-margin
223
224 Der Rand zwischen der Fußzeile und dem unteren Rand der Seite.
225 Standard: @code{6\mm}.
226
227 @item foot-separation
228
229 Der Abstand zwischen dem untersten Notensystem und der Fußzeile.
230 Standard: @code{4\mm}.
231
232 @item head-separation
233
234 Der Abstand zwischen dem obersten System und der Kopfzeile. Standard:
235 @code{4\mm}.
236
237 @item page-top-space
238
239 Der Abstand von der Oberkante des druckbaren Bereichs bis zur
240 Mitte des ersten Notensystems.  Das funktioniert nur für Systeme,
241 die nicht vertikal ausgedehnt sind.  Hohe Systeme bzw. Systemgruppen
242 werden mit ihrer @qq{bounding box} an der Oberkante des
243 druckbaren Bereichs ausgerichtet.  Standard: @code{12\mm}.
244
245 @item paper-height
246
247 Die Höhe der Seite.  Standard:  Die Höhe des aktuellen Papierformats.
248 Zu Einzelheiten siehe @ref{Papierformat}.
249
250 @item top-margin
251
252 Der Rand zwischen der Kopfzeile und dem oberen Rand der Seite. Standard:
253 @code{5\mm}.
254
255 @end table
256
257
258 @snippets
259
260 Kopf- und Fußzeile werden von den Funktionen @code{make-footer} und
261 @code{make-header} erstellt, welche in der @code{\paper}-Umgebung definiert
262 werden.  Die Standardeinstellungen sind in den Dateien
263 @file{ly/paper-defaults.ly} und @code{ly/titling-init.ly} dargestellt.
264
265 Das Seitenlayout wird durch zwei Funktionen der @code{\paper}-Umgebung
266 bestimmt: @code{page-music-height} und @code{page-make-stencil}.  Die erste
267 teilt dem Zeilenumbruchsalgorithmus mit, wieviel Platz auf einer Seite
268 belegt werden kann, die zweite hingegen erstellt die konkrete Seite,
269 nachdem sie die Systeme entgegengenommen hat, die auf der Seite platziert
270 werden sollen.
271
272 Beispiel:
273
274 @example
275 \paper@{
276   paper-width = 2\cm
277   top-margin = 3\cm
278   bottom-margin = 3\cm
279   ragged-last-bottom = ##t
280 @}
281 @end example
282
283 Das nächste Beispiel zentriert Seitenzahlen unten auf jeder Seite:
284
285 @example
286 \paper @{
287   print-page-number = ##t
288   print-first-page-number = ##t
289   oddHeaderMarkup = \markup \fill-line @{ " " @}
290   evenHeaderMarkup = \markup \fill-line @{ " " @}
291   oddFooterMarkup = \markup @{ \fill-line @{
292      \bold \fontsize #3 \on-the-fly #print-page-number-check-first
293      \fromproperty #'page:page-number-string @} @}
294   evenFooterMarkup = \markup @{ \fill-line @{
295      \bold \fontsize #3 \on-the-fly #print-page-number-check-first
296      \fromproperty #'page:page-number-string @} @}
297 @}
298 @end example
299
300 Werte der @code{\paper}-Umgebung können in Scheme definiert werden.  In diesem
301 Fall sind @code{mm}, @code{in}, @code{pt} und @code{cm} Variablen,
302 die in der Datei @file{paper-defaults.ly} mit Millimeter-Werten definiert
303 sind.  Darum muss der Wert 2 cm in dem Beispiel unten multipliziert werden
304 muss:
305
306 @example
307 \paper @{
308  #(define bottom-margin (* 2 cm))
309 @}
310 @end example
311
312 @seealso
313 Notationsreferenz:
314 @ref{Vertikale Abstände zwischen Systemen}.
315
316 Schnipsel:
317 @rlsr{Spacing}.
318
319
320 @node Horizontale Dimensionen
321 @unnumberedsubsubsec Horizontale Dimensionen
322 @translationof Horizontal dimensions
323
324 @funindex horizontal-shift
325 @funindex indent
326 @funindex left-margin
327 @funindex line-width
328 @funindex paper-width
329 @funindex short-indent
330
331 @warning{Wenn @code{paper-width} manuell gesetzt wird, müssen
332 möglicherweise auch die Werte von @code{line-width},
333 @code{left-margin}, @code{indent} und @code{short-indent} angepasst
334 werden.}
335
336 Es gibt einige Variablen, die die horizontalen Dimensionen der Seite
337 beeinflussen:
338
339 @table @code
340
341 @item horizontal-shift
342
343 Der Wert, um den alle Systeme (und auch Überschriften und Systemtrenner)
344 nach rechts verschoben werden.  Standard: @code{0.0}.
345
346 @item indent
347
348 Der Einzug für das erste System einer Partitur.  Standard:
349 @code{paper-width} geteilt durch @code{14}, definiert in
350 @code{set-default-paper-size} bzw. @code{set-paper-size}.
351
352 @item left-margin
353
354 Der Rand zwischen dem linken Rand der Seite und dem Anfang der Notensysteme.
355 Standard: @code{10\mm}, definiert in
356 @code{set-default-paper-size} oder @code{set-paper-size}.
357
358 @item line-width
359
360 Die Breite der Notensystems. Standard: @code{paper-width} minus
361 @code{20\mm}, definiert in @code{set-default-paper-size} bzw.
362 @code{set-paper-size}.
363
364 @item paper-width
365
366 Die Breite der Seite.  Standard: Die Breite des aktuellen
367 Papierformats.  Zu Einzelheiten siehe @ref{Papierformat}.
368
369 @item short-indent
370
371 Der Einzug für alle Systeme einer Partitur ausschließlich das
372 erste System.  Standard: @code{0}, definiert in
373 @code{set-default-paper-size} bzw. @code{set-paper-size}.
374
375 @end table
376
377
378 @seealso
379 Schnipsel:
380 @rlsr{Spacing}.
381
382
383 @knownissues
384
385 Die Option @code{right-margin} ist definiert, bestimmt aber nicht den
386 rechten Rand der Seite.  Der Wert für den rechten Rand ergibt sich
387 aus den Werten des linken Randes (@code{left-margin}) und der Zeilenbreite
388 (@code{line-width}).
389
390
391 @node Weitere Layout-Variablen
392 @unnumberedsubsubsec Weitere Layout-Variablen
393 @translationof Other layout variables
394
395 Diese Variablen können verwendet werden, um das allgemeine Layout der Seite
396 anzupassen.
397
398 @funindex auto-first-page-number
399 @funindex blank-last-page-force
400 @funindex blank-page-force
401 @funindex first-page-number
402 @funindex page-breaking-between-system-padding
403 @funindex page-count
404 @funindex page-limit-inter-system-space
405 @funindex page-limit-inter-system-space-factor
406 @funindex page-spacing-weight
407 @funindex print-all-headers
408 @funindex print-first-page-number
409 @funindex print-page-number
410 @funindex ragged-bottom
411 @funindex ragged-last
412 @funindex ragged-last-bottom
413 @funindex ragged-right
414 @funindex system-separator-markup
415 @funindex system-count
416
417 @table @code
418
419 @item auto-first-page-number
420
421 Der Seitenumbruchsalgorithmus wird davon beeinflusst, ob die erste
422 Seitenzahl gerade oder ungerade ist.  Wenn die Variable auf wahr
423 gesetzt wird, entscheidet der Seitenumbruchsalgorithmus selber,
424 ob die Noten auf einer geraden oder ungeraden Seite beginnen sollen.
425 Das hat dann zur Folge, dass die erste Seite entweder bleibt wie
426 sie ist oder um eins erhöht wird.  Standard: @code{##f}.
427
428 @ignore
429
430 FIXME: this variable is used, but I don't know what it does. -pm
431 @item blank-after-score-page-force
432 @funindex blank-after-score-page-force
433
434 Default: @code{2}.
435
436 @end ignore
437
438 @item blank-last-page-force
439
440 Die Strafpunkte, wenn eine Partitur auf einer ungeraden Seite
441 beendet wird. Standard: @code{0}.
442
443 @item blank-page-force
444
445 Die Strafpunkte, wenn eine leere Seite mitten in einer Partitur
446 auftritt.  Das wird nicht benutzt von @code{ly:optimal-breaking},
447 weil hiermit niemals leere Seiten mitten in einer Partitur zugelassen
448 werden.  Standard: @code{5}.
449
450 @item first-page-number
451
452 Der Wert der Seitenzahl auf der ersten Seite.  Standard: @code{#1}.
453
454 @item max-systems-per-page
455
456 Die maximale Anzahl an Notensystemen, die auf einer Seite gesetzt werden.  Das
457 wird zur Zeit nur von dem @code{ly:optimal-breaking}-Algorithmus
458 unterstützt.  Standard: nicht gesetzt.
459
460 @item min-systems-per-page
461
462 Die minimale Anzahl an Notensystemen, die auf einer Seite gesetzt werden. Das
463 kann dazu führen, dass Seiten zu dicht gefüllt werden, wenn der Wert
464 zu groß gewählt wird.  Die Option ist zur Zeit nur von dem
465 @code{ly:optimal-breaking}-Algorithmus unterstützt.  Standard: nicht gesetzt.
466
467 @item page-breaking-between-system-padding
468
469 Überlistet die Seitenumbruchfunktion, indem ihr ein anderer Wert
470 für @code{between-system-padding} mitgeteilt wird, als in Wirklichkeit
471 eingestellt ist.  Wenn diese Variable beispielsweise auf einen
472 deutlich größeren Wert als @code{between-system-padding} gesetzt
473 wird, setzt die Seitenumbruchsfunktion weniger Systeme auf eine
474 Seite.  Standard: nicht gesetzt.
475
476 @item page-count
477
478 Die Zahl der Seiten, die für eine Partitur benutzt werden sollen.
479 Standard: nicht gesetzt.
480
481 @item page-limit-inter-system-space
482
483 Wenn wahr, wird Platz zwischen Systemen eingeschränkt, wenn viel
484 Platz auf der Seite ist.  Standard: @code{##f}.  Einzelheiten siehe
485 @ref{Vertikale Abstände zwischen Systemen}.
486
487 @item page-limit-inter-system-space-factor
488
489 Der Faktor, der von @code{page-limit-inter-system-space} verwendet
490 wird.  Standard: @code{1.4}.  Einzelheiten siehe
491 @ref{Vertikale Abstände zwischen Systemen}.
492
493 @item page-spacing-weight
494
495 Die relative Gewichtung von (vertikalem) Abstand auf der Seite und
496 (horizontalem) Abstand innerhalb der Zeilen.  Hohe Werte gewichten
497 die vertikalen Abstände mehr.  Standard: @code{#10}.
498
499 @item print-all-headers
500
501 Wenn wahr, werden alle Einträge des Titelfeldes (@code{\header}-Umgebung)
502 für jede Partitur ausgegeben.  Normalerweise wird nur die
503 Satzbezeichnung und die Opuszahl (@code{piece} und @code{opus})
504 ausgegeben.  Standard: @code{##f}.
505
506 @item print-first-page-number
507
508 Wenn wahr, wird auch auf der ersten Seite die Seitenzahl ausgegeben.
509 Standard: @code{##f}.
510
511 @item print-page-number
512
513 Wenn falsch, werden Seitenzahlen nicht ausgegeben.  Standard:
514 @code{##t}.
515
516 @item ragged-bottom
517
518 Wenn wahr, werden die Systeme nicht gleichmäßig über die Seite
519 verteilt sondern am oberen Seitenrand beginnend eng angeordnet.
520 Das wirkt sich nicht auf die letzte Seite aus.  Standard: @code{##f}.
521
522 Die Variable sollte auf wahr gesetzt werden für Stücke, die nur
523 zwei oder drei Systeme pro Seite haben, wie etwa Orchesterpartituren.
524
525 @item ragged-last
526
527 Wenn wahr, wird die letzte Notenzeile einer Partitur nicht bis
528 zum Zeilenende durchgezogen, sondern entsprechend mit Noten
529 gefüllt und dann abgebrochen.  Standard: @code{##f}.
530
531 @item ragged-last-bottom
532
533 Wenn falsch, werden Systeme gleichmäßig über die letzte Seite
534 verteilt.  Standard: @code{##t}.
535
536 Stücke, die zwei oder mehr Seiten gut füllen, sollten die Option auf wahr
537 gesetzt haben.
538
539 Sie wirkt sich auch auf die letzte Seite von Buchteilen aus, d.h.
540 Teilen eines Buches, die mit der @code{\bookpart}-Umgebung erstellt werden.
541
542 @item ragged-right
543
544 Wenn wahr, werden Systeme nicht im Blocksatz gesetzt, sondern erhalten
545 nur ihre normale Breite.  Standard: @code{##f}.
546
547 Wenn eine Partitur nur ein System hat, ist der Standardwert @code{##t}.
548
549 @item system-separator-markup
550
551 Ein Beschriftungsobjekt, das zwischen zwei Systeme gesetzt wird.  Das
552 wird oft in Orchesterpartituren eingesetzt.  Standard: nicht gesetzt.
553
554 Der Beschriftungsbefehl @code{\slashSeparator} kann für einen Trenner
555 benutzt werden, etwa so:
556
557 @lilypond[quote,ragged-right]
558 #(set-default-paper-size "a6" 'landscape)
559 \book {
560   \score {
561     \relative { c1 \break c1 }
562   }
563   \paper {
564     system-separator-markup = \slashSeparator
565   }
566 }
567 @end lilypond
568
569 @item system-count
570
571 Die Anzahl der Systeme, auf denen eine Partitur gesetzt werden soll.
572 Standard: nicht gesetzt.
573
574 @item systems-per-page
575 @funindex systems-per-page
576
577 Die Anzahl an Systemen, die auf jede Seite gesetzt werden sollen.
578 Diese Option wird zur Zeit nur von dem @code{ly:optimal-breaking}-Algorithmus
579 unterstützt.  Standard: nicht gesetzt.
580
581 @end table
582
583
584 @seealso
585 Schnipsel:
586 @rlsr{Spacing}.
587
588
589 @knownissues
590
591 Die Standard-Kopfzeilendefinition setzt die Seitenzahl und das
592 @code{instrument}-Feld aus der @code{\header}-Umgebung in eine
593 Zeile.
594
595 Die Überschriften (aus der @code{\header}-Umgebung) werden als
596 ein System interpretiert, sodass @code{ragged-bottom} und
597 @code{ragged-last-bottom} Platz zwischen die Überschrift und
598 das erste System der Partitur setzen.
599
600
601 @node Notenlayout
602 @section Notenlayout
603 @translationof Music layout
604
605 @menu
606 * Die Notensystemgröße einstellen::
607 * Partiturlayout::
608 @end menu
609
610
611 @node Die Notensystemgröße einstellen
612 @subsection Die Notensystemgröße einstellen
613 @translationof Setting the staff size
614
615 @cindex Schriftgröße, Einstellung
616 @cindex Systemgröße, Einstellung
617 @cindex Verändern der Schriftgröße
618 @cindex Verändern der Systemgröße
619 @funindex layout file
620
621 Die Standardgröße der Notensysteme beträgt 20 Punkte (pt).
622 Das kann auf zwei Arten geändert werden:
623
624 Um die Systemgröße global für alle Partituren einer
625 Datei (bzw. einer @code{\book}-Umgebung) zu verändern,
626 geht man wie folgt vor:
627
628 @example
629 #(set-global-staff-size 14)
630 @end example
631
632 @noindent
633 Hiermit wird die Standardhöhe der Notensysteme auf 14 pt
634 gesetzt.  Die Schriftarten werden entsprechend verkleinert.
635
636 Um die Systemhöhe für jede Partitur einzeln zu verändern,
637 muss
638
639 @example
640 \score@{
641   ...
642   \layout@{
643   #(layout-set-staff-size 15)
644   @}
645 @}
646 @end example
647
648 @noindent
649 eingesetzt werden.
650
651 Die Feta-Schriftart stellt die Noten- und Musiksymbole
652 für acht verschiedene Größen zur Verfügung.  Jede
653 Schriftgröße ist einer bestimmten Systemgröße angepasst:
654 für kleinere Schriftgrößen werden die Zeichen etwas
655 schwerer, um mit den ebenfalls dickeren Notenlinien
656 zu harmonieren.  Die empfohlenen Notensystemgrößen
657 sind in der Tabelle aufgeführt:
658
659 @quotation
660 @multitable @columnfractions .15 .2 .22 .2
661
662 @item @b{Schriftbezeichnung}
663 @tab @b{Höhe des Systems (pt)}
664 @tab @b{Höhe des Systems (mm)}
665 @tab @b{Benutzung}
666
667 @item feta11
668 @tab 11.22
669 @tab 3.9
670 @tab Taschenparituren
671
672 @item feta13
673 @tab 12.60
674 @tab 4.4
675 @tab
676
677 @item feta14
678 @tab 14.14
679 @tab 5.0
680 @tab
681
682 @item feta16
683 @tab 15.87
684 @tab 5.6
685 @tab
686
687 @item feta18
688 @tab 17.82
689 @tab 6.3
690 @tab Liederbücher
691
692 @item feta20
693 @tab 20
694 @tab 7.0
695 @tab Orchesterstimmen
696
697 @item feta23
698 @tab 22.45
699 @tab 7.9
700 @tab
701
702 @item feta26
703 @tab 25.2
704 @tab 8.9
705 @tab
706 @c modern rental material?
707
708 @end multitable
709 @end quotation
710
711 Diese Schriftarten sind in allen Größen erhältlich.  Die Kontext-Eigenschaft
712 @code{fontSize} und die Layout-Eigenschaft @code{staff-space} (in
713 @code{StaffSymbol}) können benutzt werden, um die Schriftgröße für
714 einzelne Systeme zu verändern.  Die Größe von einzelnen Systemen
715 ist relativ zur globalen Systemgröße.
716
717
718 @seealso
719 Notationsreferenz:
720 @ref{Auswahl der Notations-Schriftgröße}.
721
722 Schnipsel:
723 @rlsr{Spacing}.
724
725
726 @knownissues
727
728 @code{layout-set-staff-size} verändert nicht den Abstand zwischen den
729 Notenlinien.
730
731
732 @node Partiturlayout
733 @subsection Partiturlayout
734 @translationof Score layout
735
736 @cindex Partitur, Layout
737 @cindex Layout, Partitur
738
739 @funindex \layout
740
741 Während die @code{\paper}-Umgebung Einstellungen für die Formatierung
742 der Seiten eines gesamten Dokuments enthalten, enthält die
743 @code{\layout}-Umgebung Einstellungen für einzelne Partituren.
744
745 @example
746 \layout @{
747   indent = 2.0\cm
748   \context @{ \Staff
749     \override VerticalAxisGroup #'minimum-Y-extent = #'(-6 . 6)
750   @}
751   \context @{ \Voice
752     \override TextScript #'padding = #1.0
753     \override Glissando #'thickness = #3
754   @}
755 @}
756 @end example
757
758 @seealso
759 Notationsreferenz:
760 @ref{Die Standardeinstellungen von Kontexten ändern}.
761
762 Schnipsel:
763 @rlsr{Spacing}.
764
765
766 @node Umbrüche
767 @section Umbrüche
768 @translationof Breaks
769
770 @menu
771 * Zeilenumbrüche::
772 * Seitenumbrüche::
773 * Optimale Seitenumbrüche::
774 * Optimale Umbrüche zum Blättern::
775 * Minimale Seitenumbrüche::
776 * Ausdrückliche Umbrüche::
777 * Eine zusätzliche Stimme für Umbrüche benutzen::
778 @end menu
779
780
781 @node Zeilenumbrüche
782 @subsection Zeilenumbrüche
783 @translationof Line breaking
784
785 @cindex Zeilenumbrüche
786 @cindex Umbrüche von Zeilen
787
788 Zeilenumbrüche werden normalerweise automatisch erstellt.  Sie
789 werden so ausgewählt, dass die Zeilen weder gedrängt noch zu
790 weit gespreizt wirken und aufeinander folgende Seiten einen
791 ähnlichen Grauwert haben.  In seltenen Fällen kann es jedoch
792 nötig sein, manuell Zeilenumbrüche einzufügen.  Das geschieht
793 mit dem Befehl @code{\break}.  Hiermit wird direkt nach dem Befehl
794 ein Zeilenumbruch erzwungen.  Zeilenumbrüche können jedoch nur
795 am Ende von @qq{vollständigen} Takten stattfinden.  Damit sind
796 Takte gemeint, in welchen alle Noten mit der letzten Taktzeit
797 komplett abgeschlossen sind und nicht über das Taktende hinausragen.
798 Wenn Sie einen Zeilenumbruch an einer Stelle benötigen, an der
799 keine Taktlinie vorliegt, können Sie mit @code{\bar ""} eine
800 unsichtbare Taktlinie hinzufügen, die dann den Zeilenumbruch
801 erlaubt.  Wiederum gilt, dass keine Noten überstehen dürfen,
802 sonst wird diese unsichtbare Taktlinie ignoriert.
803
804 Mit dem Befehl @code{\noBreak} wird ein Zeilenumbruch an dem
805 entsprechenden Taktstrich verboten.
806
807 Die grundlegenden Einstellungen, die Einfluss auf die Zeilenlänge
808 haben, sind @code{indent} (Einzug) und @code{line-width}
809 (Zeilenbreite).  Sie werden in der @code{\layout}-Umgebung
810 eingestellt.  Der erste Befehl bestimmt den Einzug der ersten
811 Zeile, der zweite die Zeilenlänge der weiteren Notenzeilen.
812
813 Wenn @code{ragged-right} eingestellt ist (als in der
814 @code{\layout}-Umgebung auf den Wert @code{#t} gesetzt wurde),
815 werden die Systeme linksbündig gesetzt und nicht bis zum
816 rechten Rand hin durchgezogen, sondern den Noten entsprechend
817 gesetzt.  Das ist oftmals nützlich für kleine Notenfragmente
818 und um zu überprüfen, wie eng die Noten natürlicherweise
819 gesetzt werden würden.
820
821 Die Option @code{ragged-last} verhält sich ähnlich zu @code{ragged-right},
822 aber wirkt sich nur auf die letzte Zeile eines Stückes aus.
823
824 @example
825 \layout @{
826 indent = #0
827 line-width = #150
828 ragged-last = ##t
829 @}
830 @end example
831
832 @cindex regelmäßige Zeilenumbrüche
833 @cindex Zeilenumbrüche in Intervallen
834
835 Um Zeilenumbrüche zu erzwingen, die in festgelegten Intervallen
836 stattfinden, kann der Befehl @code{\break} in Kombination
837 mit unsichtbaren Noten und einer Wiederholung eingesetzt
838 werden.  Das folgende Beispiel etwa setzt die nächsten
839 28 Takte (im 4/4-Takt) in Zeilen zu jeweils 4 Takten:
840
841 @example
842 << \repeat unfold 7 @{
843          s1 \noBreak s1 \noBreak
844          s1 \noBreak s1 \break @}
845    @notation{Hier die Noten}
846 >>
847 @end example
848
849 Eine Zeilenumbruchkonfiguration kann auch als eine @code{.ly}-Datei
850 automatisch gespeichert werden.  Damit kann die vertikale Ausrichtung
851 während eines zweiten Programmdurchlaufs angepasst werden um die
852 Seiten besser zu füllen.  Diese Eigenschaft ist recht neu und
853 kompliziert.  Mehr Einzelheiten finden sich in
854 @rlsr{Spacing}.
855
856 @funindex \break
857 @funindex \noBreak
858
859 @predefined
860 @code{\break},
861 @code{\noBreak}.
862 @endpredefined
863
864 @seealso
865 Referenz der Interna:
866 @rinternals{LineBreakEvent}.
867
868 Schnipsel:
869 @rlsr{Spacing}.
870
871 @knownissues
872
873 Zeilenumbrüche können nur gesetzt werden, wenn eine
874 @qq{richtige} Taktlinie vorliegt.  Wenn eine Note
875 über die Taktlinie übersteht, wie etwa in folgendem
876 Beispiel:
877
878 @lilypond[quote,ragged-right,relative=2,fragment,verbatim]
879 c4 c2 << c2 {s4 \break } >>  % this does nothing
880 c2 c4 |           % a break here would work
881 c4 c2 c4 ~ \break % as does this break
882 c4 c2 c4
883 @end lilypond
884
885 @noindent
886 kann ein Umbruchbefehl nicht ausgeführt werden.  Dieses
887 Verhalten kann jedoch vermieden werden, indem der
888 @code{Forbid_line_break_engraver} aus dem Stimmen-Kontext
889 entfernt wird.
890
891 @lilypond[quote,ragged-right,verbatim]
892 \new Voice \with {
893   \remove Forbid_line_break_engraver
894 } {
895   c4 c2 << c2 {s4 \break } >>  % now the break is allowed
896   c2 c4
897 }
898 @end lilypond
899
900 @noindent
901 Entsprechend werden Umbrüche auch verhindert, wenn Balken über
902 Taktlinien reichen.  Das kann mit folgendem Befehl verhindert
903 werden: @code{\override Beam #'breakable = ##t}.
904
905
906 @node Seitenumbrüche
907 @subsection Seitenumbrüche
908 @translationof Page breaking
909
910 @cindex Seitenumbrüche
911 @cindex Umbrüche, Seite
912
913 Die Standardseitenumbrüche können verändert werden, indem
914 man die Befehle @code{\pageBreak} bzw. @code{\noPageBreak}
915 benutzt.  Sie verhalten sich analog zu den Befehlen
916 @code{\break} und @code{\noBreak}.  Sie sollten an einem
917 Taktstrich notiert werden.  Diese Befehle erzwingen bzw.
918 verbieten einen Seitenumbruch.  Mit dem @code{\pageBreak}-Befehl
919 wird natürlich gleichzeitig auch ein Zeilenumbruch erzwungen.
920
921 Die @code{\pageBreak} und @code{\noPageBreak}-Befehle können
922 auch auf der höchsten Ebene einer Datei benutzt werden, etwa
923 zwischen Partituren und Textbeschriftungen.
924
925 Es gibt auch vertikale Gegenstücke zu den Variablen
926 @code{ragged-right} und @code{ragged-last}:
927 @code{ragged-bottom} und @code{ragged-last-bottom}.  Wenn diese
928 Variablen auf @code{##t} gesetzt werden, werden im ersten
929 Fall die Notensysteme auf allen Seiten eng nach oben orientiert
930 gesetzt werden.  Im zweiten Fall bezieht sich dies nur auf die
931 letzte Seite.
932
933 Zu Einzelheiten siehe @ref{Vertikale Abstände}.
934
935 Seitenumbrüche werden von der @code{page-breaking}-Funktion errechnet.
936 LilyPond kennt drei Algorithmen um Seitenumbrüche zu errechnen:
937 @code{ly:optimal-breaking}, @code{ly:page-turn-breaking} und
938 @code{ly:minimal-breaking}.  Der Standard ist @code{ly:optimal-breaking},
939 aber der Wert kann in der @code{\paper}-Umgebung geändert werden:
940
941 @example
942 \paper@{
943   #(define page-breaking ly:page-turn-breaking)
944 @}
945 @end example
946
947 @funindex \bookpart
948
949 When a book has many scores and pages, the page breaking problem may be
950 difficult to solve, requiring large processing time and memory.  To ease
951 the page breaking process, @code{\bookpart} blocks are used to divide
952 the book into several parts: the page breaking occurs separately on each
953 part.  Different page breaking functions may also be used in different
954 book parts.
955
956 @example
957 \bookpart @{
958   \header @{
959     subtitle = "Vorwort"
960   @}
961   \paper @{
962      %% In einem Abschnitt, der vor allem Text hat,
963      %% funktioniert womöglich ly:minimal-breaking besser
964      #(define page-breaking ly:minimal-breaking)
965   @}
966   \markup @{ @dots{} @}
967   @dots{}
968 @}
969 \bookpart @{
970   %% In diesem Abschnitt mit Noten wird
971   %% die Standard-Seitenumbruchsfunktion benutzt.
972   \header @{
973     subtitle = "Erster Satz"
974   @}
975   \score @{ @dots{} @}
976   @dots{}
977 @}
978 @end example
979
980 @funindex \pageBreak
981 @funindex \noPageBreak
982
983 @predefined
984 @code{\pageBreak},
985 @code{\noPageBreak}.
986 @endpredefined
987
988 @seealso
989 Schnipsel:
990 @rlsr{Spacing}.
991
992
993 @node Optimale Seitenumbrüche
994 @subsection Optimale Seitenumbrüche
995 @translationof Optimal page breaking
996
997 @funindex ly:optimal-breaking
998
999 Die @code{ly:optimal-breaking}-Funktion ist die Standardmethode für
1000 LilyPond, um Seitenumbrüche zu errechnen.  Hiermit wird versucht,
1001 Seitenumbrüche zu finden, die das Stauchen oder Strecken von Zeilen
1002 minimieren, sowohl horizontal als auch vertikal.  Anders als die
1003 @code{ly:page-turn-breaking}-Funktion hat diese Methode keine
1004 Möglichkeit, Überlegungen zum Umblättern mit einzubeziehen.
1005
1006 @seealso
1007 Schnipsel:
1008 @rlsr{Spacing}.
1009
1010
1011 @node Optimale Umbrüche zum Blättern
1012 @subsection Optimale Umbrüche zum Blättern
1013 @translationof Optimal page turning
1014
1015 @funindex ly:page-turn-breaking
1016
1017 Es ist oft nötig, die Seiten so umzubrechen, dass sich eine Pause am
1018 Ende jeder zweiten Seite befindet, damit der Musiker es leichter hat,
1019 die Seite umzublättern ohne das Spielen zu Unterbrechen.  Die
1020 @code{ly:page-turn-breaking}-Funktion versucht, Seitenumbrüche zu
1021 finden, die das Stauchen oder Strecken von Zeilen minimieren und
1022 gleichzeitig auch noch Seitenumbrüchen an angegebenen Stellen 
1023 den Vorrang zu geben.
1024
1025 Die Funktion wird in zwei Schritten eingesetzt.  Zunächst muss sie
1026 in der @code{\paper}-Umgebung aktiviert werden, wie gezeigt in
1027 @ref{Seitenumbrüche}.  Dann muss noch angegeben werden, welche Stellen
1028 bevorzugt für Seitenumbrüche benutzt werden sollen.
1029
1030 Für diesen zweiten Schritt gibt es zwei Methoden.  Am Einfachsten ist
1031 es, die möglichen Seitenumbrüche mit dem Befehl @code{\allowPageTurn}
1032 an jeder Stelle manuell anzugeben.
1033
1034 Wenn Ihnen das zu aufwändig ist, können Sie den @code{Page_turn_engraver}
1035 zu einem @code{Staff}- oder @code{Voice}-Kontext hinzufügen.  Dieser
1036 Engraver durchsucht den entsprechenden Kontext nach Stellen ohne Noten.
1037 (Es wird also nicht nach Pausen gesucht, sondern nach Stellen ohne
1038 Noten.  Dieses Verhalten verhindert, dass an polyphonen Stellen umgebrochen
1039 wird, wo nur in einer Stimme Pausen vorhanden sind.)  Wenn eine
1040 derartige Stelle ohne Noten gefunden wird, fügt der Engraver den
1041 Befehl @code{\allowPageTurn} am letzten Taktstrich des Abschnitts ein.  Wenn
1042 in dem Abschnitt ein besonderer Taktstrich vorkommt (wie etwa ein
1043 Doppelstrich), wird der Befehl nach diesem Taktstrich gesetzt.
1044
1045 @funindex minimumPageTurnLength
1046
1047 Der @code{Page_turn_engraver} liest die Kontexteigenschaft
1048 @code{minimumPageTurnLength} um zu erkennen, wie lang eine Stelle
1049 frei von Noten sein muss, damit ein Seitenumbruch in Frage kommt.  Der
1050 Standardwert hierfür ist @code{#(ly:make-moment 1 1)}.  Wenn Sie
1051 Seitenumbrüche zum Umblättern ausschalten wollen, können Sie
1052 einen sehr großen Wert angeben.
1053
1054 @example
1055 \new Staff \with @{ \consists "Page_turn_engraver" @}
1056 @{
1057   a4 b c d |
1058   R1 | % Ein Seitenumbruch zum Umblättern erlaubt
1059   a4 b c d |
1060   \set Staff.minimumPageTurnLength = #(ly:make-moment 5 2)
1061   R1 | % Seitenumbruch nicht erlaubt
1062   a4 b r2 |
1063   R1*2 | % Seitenumbruch erlaubt
1064   a1
1065 @}
1066 @end example
1067
1068 @funindex minimumRepeatLengthForPageTurn
1069
1070 Der @code{Page_turn_engraver} erkennt Wiederholungen vom Typ @code{volta}.
1071 Ein Seitenumbruch zum Umblättern wird nur zugelassen, wenn vor und nach
1072 der Wiederholung genug Zeit ist, um die Seite wieder zurückzublättern.
1073 Wenn die Wiederholung sehr kurz ist, kann auch Umblättern verboten
1074 werden.  Wenn Sie die Kontexteigenschaft
1075 @code{minimumRepeatLengthForPageTurn} definieren, erlaubt der
1076 @code{Page_turn_engraver} nur Umblättern in Wiederholungen, deren
1077 Dauer länger als dieser Wert ist.
1078
1079 Die Seitenumblätter-Befehle @code{\pageTurn}, @code{\noPageTurn} und
1080 @code{\allowPageTurn} können auch auf oberster Dateiebene benutzt
1081 werden, etwa zwischen Partituren und Textabschnitten.
1082
1083 @funindex \pageTurn
1084 @funindex \noPageTurn
1085 @funindex \allowPageTurn
1086
1087 @predefined
1088 @code{\pageTurn},
1089 @code{\noPageTurn},
1090 @code{\allowPageTurn}.
1091 @endpredefined
1092
1093 @seealso
1094 Schnipsel:
1095 @rlsr{Spacing}.
1096
1097 @knownissues
1098
1099 In einer Partitur sollte nur ein @code{Page_turn_engraver} vorkommen.  Wenn
1100 mehr als einer definiert werden, stören sie sich gegenseitig.
1101
1102
1103 @node Minimale Seitenumbrüche
1104 @subsection Minimale Seitenumbrüche
1105 @translationof Minimal page breaking
1106
1107 @funindex ly:minimal-breaking
1108
1109 Die @code{ly:minimal-breaking}-Funktion benötigt nur minimale Berechnungen,
1110 um die Seitenumbrüche zu bestimmen.  Die Seite wird mit möglichst
1111 vielen Systemen gefüllt und dann zur nächsten Seite gewechselt.  Die
1112 Funktion kann benutzt werden um Partituren mit vielen Seiten zu
1113 setzen, wenn die anderen Seitenumbruchsfunktionen zu langsam wären
1114 oder zu viel Speicher beanspruchen.  Auch für Seiten mit viel Text
1115 ist die Funktion geeignet.  Sie wird folgendermaßen aktiviert:
1116
1117 @example
1118 \paper @{
1119   #(define page-breaking ly:minimal-breaking)
1120 @}
1121 @end example
1122
1123
1124 @seealso
1125 Schnipsel:
1126 @rlsr{Spacing}.
1127
1128
1129 @node Ausdrückliche Umbrüche
1130 @subsection Ausdrückliche Umbrüche
1131 @translationof Explicit breaks
1132
1133 Es kann vorkommen, dass LilyPond direkte @code{\break} oder
1134 @code{\pageBreak}-Befehl nicht beachtet.  Mit folgenden
1135 Einstellungen kann dieses Verhalten ausgeschaltet werden:
1136
1137 @example
1138 \override NonMusicalPaperColumn #'line-break-permission = ##f
1139 \override NonMusicalPaperColumn #'page-break-permission = ##f
1140 @end example
1141
1142 Wenn @code{line-break-permission} die Einstellung falsch
1143 (@code{##f}) hat, werden Zeilenumbrüche nur an den Befehlen
1144 @code{\break} eingefügt und nirgendwo anders.  Wenn
1145 @code{page-break-permission} die Einstellung falsch
1146 (@code{##f}) hat, werden Seitenumbrüche nur an den Befehlen
1147 @code{\pageBreak} eingefügt und nirgendwo anders.
1148
1149 @lilypond[quote,verbatim]
1150 \paper {
1151   indent = #0
1152   ragged-right = ##t
1153   ragged-bottom = ##t
1154 }
1155
1156 \score {
1157   \new Score \with {
1158     \override NonMusicalPaperColumn #'line-break-permission = ##f
1159     \override NonMusicalPaperColumn #'page-break-permission = ##f
1160   } {
1161     \new Staff {
1162       \repeat unfold 2 { c'8 c'8 c'8 c'8 } \break
1163       \repeat unfold 4 { c'8 c'8 c'8 c'8 } \break
1164       \repeat unfold 6 { c'8 c'8 c'8 c'8 } \break
1165       \repeat unfold 8 { c'8 c'8 c'8 c'8 } \pageBreak
1166       \repeat unfold 8 { c'8 c'8 c'8 c'8 } \break
1167       \repeat unfold 6 { c'8 c'8 c'8 c'8 } \break
1168       \repeat unfold 4 { c'8 c'8 c'8 c'8 } \break
1169       \repeat unfold 2 { c'8 c'8 c'8 c'8 }
1170     }
1171   }
1172 }
1173 @end lilypond
1174
1175 @seealso
1176 Schnipsel:
1177 @rlsr{Spacing}.
1178
1179
1180 @node Eine zusätzliche Stimme für Umbrüche benutzen
1181 @subsection Eine zusätzliche Stimme für Umbrüche benutzen
1182 @translationof Using an extra voice for breaks
1183
1184 Zeilen- und Seitenumbruchbefehle werden normalerweise direkt
1185 zusammen mit den Noten eingegeben.
1186
1187 @example
1188 \new Score @{
1189   \new Staff @{
1190     \repeat unfold 2 @{ c'4 c'4 c'4 c'4 @}
1191     \break
1192     \repeat unfold 3 @{ c'4 c'4 c'4 c'4 @}
1193   @}
1194 @}
1195 @end example
1196
1197 Hierdurch sind zwar die Befehle @code{\break} und @code{\pageBreak}
1198 einfach zu notieren, es werden aber Informationen zur Notation
1199 mit Informationen zur Anordnung auf der Seite vermischt.  Man kann
1200 diese Informationen auch voneinander trennen, indem man eine zusätzliche
1201 Stimme einfügt, in der Zeilen- und Seitenumbrüche vorgenommen werden.
1202 Diese zusätzliche Stimme enthält nur unsichtbare Noten und die
1203 Umbruchbefehle:
1204
1205 @lilypond[quote,verbatim]
1206 \new Score {
1207   \new Staff <<
1208      \new Voice {
1209         s1 * 2 \break
1210         s1 * 3 \break
1211         s1 * 6 \break
1212         s1 * 5 \break
1213      }
1214      \new Voice {
1215         \repeat unfold 2 { c'4 c'4 c'4 c'4 }
1216         \repeat unfold 3 { c'4 c'4 c'4 c'4 }
1217         \repeat unfold 6 { c'4 c'4 c'4 c'4 }
1218         \repeat unfold 5 { c'4 c'4 c'4 c'4 }
1219      }
1220   >>
1221 }
1222 @end lilypond
1223
1224 Mit dieser Herangehensweise kann der Code insbesondere
1225 dann klarer notiert werden, wenn man Einstellungen der
1226 @code{line-break-system-details}-Eigenschaft oder
1227 anderer Eigenschaften von
1228 @code{NonMusicalPaperColumnGrob} vornimmt (hierzu auch 
1229 @ref{Vertikale Abstände}).
1230
1231 @lilypond[quote,verbatim]
1232 \new Score {
1233   \new Staff <<
1234      \new Voice {
1235
1236         \overrideProperty "Score.NonMusicalPaperColumn"
1237         #'line-break-system-details #'((Y-offset . 0))
1238         s1 * 2 \break
1239
1240         \overrideProperty "Score.NonMusicalPaperColumn"
1241         #'line-break-system-details #'((Y-offset . 35))
1242         s1 * 3 \break
1243
1244         \overrideProperty "Score.NonMusicalPaperColumn"
1245         #'line-break-system-details #'((Y-offset . 70))
1246         s1 * 6 \break
1247
1248         \overrideProperty "Score.NonMusicalPaperColumn"
1249         #'line-break-system-details #'((Y-offset . 105))
1250         s1 * 5 \break
1251      }
1252      \new Voice {
1253         \repeat unfold 2 { c'4 c'4 c'4 c'4 }
1254         \repeat unfold 3 { c'4 c'4 c'4 c'4 }
1255         \repeat unfold 6 { c'4 c'4 c'4 c'4 }
1256         \repeat unfold 5 { c'4 c'4 c'4 c'4 }
1257      }
1258   >>
1259 }
1260 @end lilypond
1261
1262
1263 @seealso
1264 Notationsreferenz:
1265 @ref{Vertikale Abstände}.
1266
1267 Schnipsel:
1268 @rlsr{Spacing}.
1269
1270
1271 @node Vertikale Abstände
1272 @section Vertikale Abstände
1273 @translationof Vertical spacing
1274
1275 @cindex vertikale Positionierung
1276 @cindex Positionierung, vertikal
1277 @cindex Abstände, vertikal
1278
1279 Vertikale Abstände werden durch drei Eigenschaften
1280 bestimmt:  wieviel Platz frei ist (etwa Papiergröße
1281 und Ränder), wieviel Platz zwischen Systemgruppen
1282 (engl. system) gesetzt werden soll und wieviel 
1283 Platz zwischen Notensystemen (engl. staff, Pl. staves)
1284 innerhalb von Gruppen gesetzt wird.
1285
1286 @menu
1287 * Vertikale Abstände innerhalb eines Systems::
1288 * Vertikale Abstände zwischen Systemen::
1289 * Explizite Positionierung von Systemen::
1290 * Vertikale Abstände mit zwei Durchgängen::
1291 * Vermeidung von vertikalen Zusammenstößen::
1292 @end menu
1293
1294
1295 @node Vertikale Abstände innerhalb eines Systems
1296 @subsection Vertikale Abstände innerhalb eines Systems
1297 @translationof Vertical spacing inside a system
1298
1299 @cindex Abstand zwischen Notensystemen
1300 @cindex Notensystemabstand
1301 @cindex Platz zwischen Notensystemen
1302 @cindex Platz innerhalb von Systemgruppen
1303 @cindex Systemgruppen, Abstände innerhalb
1304
1305 Die Höhe jeder Notensystemgruppe (engl. system) wird automatisch errechnet.
1306 Um einzelne Notensysteme daran zu hindern, sich zu überschneiden,
1307 werden Minimalabstände festgelegt.  Indem man diese ändert,
1308 können die Systeme enger zusammen gerückt werden.  Dadurch
1309 brauchen die Gruppen weniger Platz und es passen mehr Gruppen
1310 auf eine Seite.
1311
1312 Normalerweise werden die Notensysteme vertikal gestapelt.  Damit
1313 die Systeme einen bestimmten Abstand einhalten, haben sie
1314 Füllabstände, die in der Eigenschaft @code{minimum-Y-extent}
1315 definiert sind.  Wenn diese Eigenschaft für ein
1316 @code{VerticalAxisGroup}-Objekt gesetzt wird, kann eingestellt
1317 werden, wieviel Platz nach unten oder oben die vertikale Linie
1318 (also das Notensystem oder eine Textzeile) einnimmt.  Die
1319 Eigenschaft braucht ein Zahlenpaar; der Standardwert ist
1320 @code{#'(-4 . 4)}.  Um also ein Notensystem schmaler zu machen,
1321 kann man schreiben:
1322
1323 @example
1324 \override Staff.VerticalAxisGroup #'minimum-Y-extent = #'(-3 . 3)
1325 @end example
1326
1327 @noindent
1328 Damit wird die vertikale Größe des Systems auf jeweils drei
1329 Notenlinienzwischenräume nach oben und unten von der Systemmitte
1330 aus eingestellt.  Der Wert @code{(-3 . 3)} wird als ein
1331 Intervall ausgewertet, dessen Zentrum bei 0 liegt; deshalb
1332 ist die erste Zahl immer negativ.  Die Zahlen müssen nicht
1333 gleich sein: man kann etwa die Ausdehnung nach unten vergrößern,
1334 indem man @code{(-6 . 4)} setzt.
1335
1336 @ignore
1337 FIXME: update this section
1338
1339 Nachdem die Seitenumbrüche bestimmt wurden, wird die vertikale
1340 Platzverteilung innerhalb jeder Systemgruppe neu ausgewertet
1341 um die Seite so gleichmäßig wie möglich zu füllen.  Wenn auf
1342 einer Seite viel Platz übrigbleibt, werden die Gruppen etwas
1343 gedehnt um die Seite besser auszufüllen.  Die Größe dieser
1344 Dehnung kann mit der @code{max-stretch}-Eigenschaft
1345 des @code{VerticalAlignment}-Grobs eingestellt werden.
1346 Standardmäßig hat @code{max-stretch} den Wert 0, sodass
1347 die Dehnung ausgeschaltet ist.  Um sie einzuschalten, kann
1348 als guter Wert für @code{max-stretch} der Wert von
1349 @code{ly:align-interface::calc-max-stretch} eingesetzt werden.
1350
1351 In manchen Situationen sollen zwar die meisten Systeme gedehnt
1352 werden, einige Gruppen sollen aber einen festen Abstand einhalten.
1353 Das kann etwa der Fall sein, wenn ein Klaviersystem in der
1354 Mitte einer Orchesterpartitur vorkommt.  Mit der
1355 @code{keep-fixed-while-stretching}-Eigenschaft des
1356 @code{VerticalAxisGroup}-Objektes kann das erreicht werden.
1357 Wenn sie auf @code{##t} gesetzt wird, wird das entsprechende
1358 System (oder die Textzeile) nicht von der Zeile entfernt, die
1359 sich direkt darüber befindet.  Man müsste diese Einstellung
1360 als beispielsweise für das zweite Notensystem eines Klaviersystems
1361 vornehmen:
1362
1363 @lilypond[verbatim]
1364 #(set-default-paper-size "a6")
1365 #(set-global-staff-size 14.0)
1366
1367 \book {
1368 \paper {
1369   ragged-last-bottom = ##f
1370 }
1371
1372 \new Score \with
1373 {
1374   \override VerticalAlignment #'max-stretch = #ly:align-interface::calc-max-stretch
1375 }
1376 {
1377 \new GrandStaff
1378 <<
1379   \new StaffGroup
1380   <<
1381     \new Staff {c' d' e' f'}
1382     \new Staff {c' d' e' f'}
1383     \new Staff {c' d' e' f'}
1384   >>
1385
1386   \new PianoStaff
1387   <<
1388     \new Staff {c' d' e' f'}
1389     \new Staff \with {
1390       \override VerticalAxisGroup #'keep-fixed-while-stretching = ##t
1391     }
1392     {c' d' e' f'}
1393   >>
1394
1395   \new StaffGroup
1396   <<
1397     \new Staff {c' d' e' f'}
1398     \new Staff {c' d' e' f'}
1399   >>
1400 >>
1401 }
1402 }
1403 @end lilypond
1404 @end ignore
1405
1406 Die vertikale Ausrichtung von Notensystemen wird
1407 von dem @code{VerticalAlignment}-Objekt vorgenommen.
1408 Die Kontextparameter für die vertikale Ausdehnung
1409 werden für den @code{Axis_group_engraver} angegeben.
1410
1411 @seealso
1412 Schnipsel:
1413 @rlsr{Spacing}.
1414
1415 @c @lsr{spacing,page-spacing.ly},
1416 @c @lsr{spacing,alignment-vertical-spacing.ly}.
1417
1418 Referenz der Interna:
1419 @rinternals{VerticalAlignment},
1420 @rinternals{Axis_group_engraver}.
1421
1422
1423 @node Vertikale Abstände zwischen Systemen
1424 @subsection Vertikale Abstände zwischen Systemen
1425 @translationof Vertical spacing between systems
1426
1427 Der Platz zwischen Notensystemgruppen wird von vier
1428 Variablen in der @code{\paper}-Umgebung kontrolliert:
1429
1430 @example
1431 \paper @{
1432   between-system-space = 1.5\cm
1433   between-system-padding = #1
1434   ragged-bottom=##f
1435   ragged-last-bottom=##f
1436 @}
1437 @end example
1438
1439 Wenn nur ein paar schmale Systeme auf eine Seite gesetzt werden,
1440 kann die vertikale Platzverteilung recht negativ ausfallen, so
1441 dass etwa ein System ganz oben auf der Seite und das nächste
1442 unten auf der Seite erscheint, mit einer großen Lücke dazwischen.
1443 Um derartige Situationen zu umgehen, kann der Platz, der zwischen
1444 Gruppen eingefügt wird, begrenzt werden.  Dieses Verhalten wird
1445 aktiviert, indem die @code{page-limit-inter-system-space}-Variable
1446 in der @code{\paper}-Umgebung auf @code{##t} gesetzt wird.  Die
1447 Variable @code{page-limit-inter-system-space-factor} bestimmt,
1448 um wieviel der Platz zwischen Gruppen gedehnt werden darf:  Bei
1449 einem Wert von @code{1.3} etwa darf der Platz 30% größer sein
1450 als er es wäre, wenn die Seite mit der Option @code{ragged-bottom}
1451 gesetzt worden wäre.
1452
1453 Im folgenden Beispiel würde das zweite System der ersten Seite
1454 unten auf der Seite gesetzt werden, wenn der Platz zwischen
1455 den Systemen nicht begrenzt wäre.  Weil aber die Begrenzung
1456 eingesetzt wurde, wird das zweite System näher am ersten
1457 platziert.  Wenn @code{page-limit-inter-system-space-factor}
1458 auf @code{1} gesetzt wird, wäre die Platzverteilung die gleiche
1459 auf einer Seite mit @code{ragged-bottom}, wie etwa die letzte
1460 Seite einer Partitur.
1461
1462 @lilypond[verbatim]
1463 #(set-default-paper-size "a6")
1464 \book {
1465   \paper {
1466     page-limit-inter-system-space = ##t
1467     page-limit-inter-system-space-factor = 1.3
1468
1469     oddFooterMarkup = \markup "page bottom"
1470     evenFooterMarkup = \markup "page bottom"
1471     oddHeaderMarkup = \markup \fill-line {
1472       "page top" \fromproperty #'page:page-number-string }
1473     evenHeaderMarkup = \markup \fill-line {
1474       "page top" \fromproperty #'page:page-number-string }
1475   }
1476   \new Staff << \repeat unfold 4 { g'4 g' g' g' \break }
1477                 { s1*2 \pageBreak } >>
1478 }
1479 @end lilypond
1480
1481
1482 @seealso
1483 Schnipsel:
1484 @rlsr{Spacing}.
1485
1486
1487 @node Explizite Positionierung von Systemen
1488 @subsection Explizite Positionierung von Systemen
1489 @translationof Explicit staff and system positioning
1490
1491 Man kann die Einstellungen des @code{VerticalAxisGroup}-Objekts
1492 und der @code{\paper}-Umgebung, wie sie im vorigen Abschnitt
1493 erklärt wurden, als eine Sammlung verschiedenerer Einstellmöglichkeiten
1494 verstehen, die vor allem die Größe des vertikalen Platzes zwischen
1495 Notensystemen und Gruppen auf der Seite kontrollieren.
1496
1497 Die vertikale Platzverteilung kann aber auch auf andere Weise
1498 eingestellt werden: mit den Optionen von
1499 @code{NonMusicalPaperColumn #'line-break-system-details}.  Während
1500 Einstellungen in @code{VerticalAxisGroup} und @code{\paper} Füllplatz
1501 definieren, werden mit
1502 @code{NonMusicalPaperColumn #'line-break-system-details} absolute vertikale
1503 Positionen auf der Seite festgelegt.
1504
1505 @code{NonMusicalPaperColumn #'line-break-system-details} akzeptiert eine
1506 Liste aus fünf unterschiedlichen Einstellungen:
1507
1508 @itemize
1509 @item @code{X-offset}
1510 @item @code{Y-offset}
1511 @item @code{alignment-offsets}
1512 @item @code{alignment-extra-space}
1513 @item @code{fixed-alignment-extra-space}
1514 @end itemize
1515
1516 Veränderungen von Grobs (wozu auch @code{NonMusicalPaperColumn} gehört),
1517 können an drei unterschiedlichen Stellen in der Quelldatei vorgenommen
1518 werde:
1519
1520 @itemize
1521 @item mitten im Notentext
1522 @item in einer @code{\context}-Umgebung
1523 @item in einer @code{\with}-Umgebung
1524 @end itemize
1525
1526 Wenn der Grob @code{NonMusicalPaperColumn} verändert werden soll,
1527 wird der @code{\override}-Befehl in der @code{\context} oder
1528 @code{\with}-Umgebung eingesetzt.  Wenn die Veränderungen aber
1529 mitten im Notentext stattfinden sollen, müssen Sie den Befehl
1530 @code{\overrideProperty} einsetzen.  Einige Beispiele für eine
1531 Veränderungen von @code{NonMusicalPaperColumn} mit dem
1532 @code{\overrideProperty}-Befehl sind hier aufgelistet:
1533
1534 @example
1535 \overrideProperty NonMusicalPaperColumn
1536   #'line-break-system-details #'((X-offset . 20))
1537
1538 \overrideProperty NonMusicalPaperColumn
1539   #'line-break-system-details #'((Y-offset . 40))
1540
1541 \overrideProperty NonMusicalPaperColumn
1542   #'line-break-system-details #'((X-offset . 20) (Y-offset . 40))
1543
1544 \overrideProperty NonMusicalPaperColumn
1545   #'line-break-system-details #'((alignment-offsets . (0 -15)))
1546
1547 \overrideProperty NonMusicalPaperColumn
1548   #'line-break-system-details #'((X-offset . 20) (Y-offset . 40)
1549                                  (alignment-offsets . (0 -15)))
1550 @end example
1551
1552 Um zu verstehen, wie jede dieser unterschiedlichen Einstellungen
1553 funktioniert, wollen wir uns ein Beispiel vornehmen, dass überhaupt
1554 keine Einstellungen (d.h. @code{override}-Befehle) enthält:
1555
1556 @c \book { } is required in these examples to ensure the spacing
1557 @c overrides can be seen between systems. -np
1558
1559 @lilypond[quote]
1560 \header { tagline = ##f }
1561 \paper { left-margin = 0\mm }
1562 \book {
1563   \score {
1564     <<
1565       \new Staff <<
1566         \new Voice {
1567           s1*5 \break
1568           s1*5 \break
1569           s1*5 \break
1570         }
1571         \new Voice { \repeat unfold 15 { c'4 c' c' c' } }
1572       >>
1573       \new Staff {
1574         \repeat unfold 15 { d'4 d' d' d' }
1575       }
1576     >>
1577   }
1578 }
1579 @end lilypond
1580
1581 Diese Partitur nimmt Zeilen- und Seitenumbruchinformationen in einer
1582 eigenen Stimme vor.  Mit dieser Methode kann die Layout-Information
1583 einfach von den Noten getrennt werden, was sehr hilfreich ist, wenn
1584 das Beispiel komplizierter wird.  Siehe auch
1585 @ref{Eine zusätzliche Stimme für Umbrüche benutzen}.
1586
1587 Ausdrückliche @code{\break}-Befehle teilen die Noten in sechs Takte
1588 lange Zeilen.  Die vertikale Platzverteilung wird von LilyPond
1589 errechnet.  Um den vertikalen Beginn einer jeden Systemgruppe
1590 genau anzugeben, kann @code{Y-offset} in der
1591 @code{line-break-system-details}-Eigenschaft des
1592 @code{NonMusicalPaperColumn}-Grobs wie in dem Beispiel
1593 ersichtlich benutzt werden:
1594
1595 @lilypond[quote]
1596 \header { tagline = ##f }
1597 \paper { left-margin = 0\mm }
1598 \book {
1599   \score {
1600     <<
1601       \new Staff <<
1602         \new Voice {
1603           \overrideProperty #"Score.NonMusicalPaperColumn"
1604             #'line-break-system-details #'((Y-offset . 0))
1605           s1*5 \break
1606           \overrideProperty #"Score.NonMusicalPaperColumn"
1607             #'line-break-system-details #'((Y-offset . 40))
1608           s1*5 \break
1609           \overrideProperty #"Score.NonMusicalPaperColumn"
1610             #'line-break-system-details #'((Y-offset . 80))
1611           s1*5 \break
1612         }
1613         \new Voice { \repeat unfold 15 { c'4 c' c' c' } }
1614       >>
1615       \new Staff {
1616         \repeat unfold 15 { d'4 d' d' d' }
1617       }
1618     >>
1619   }
1620 }
1621 @end lilypond
1622
1623 In der @code{line-break-system-details}-Eigenschaft kann eine Liste
1624 mit vielen Einstellungen eingegeben werden, aber hier wird nur eine
1625 Einstellung angegeben.  Die @code{Y-offset}-Eigenschaft bestimmt
1626 hier die exakte vertikale Position auf der Seite, an welcher jede
1627 neue Systemgruppe begonnen wird.
1628
1629 Da jetzt der exakte Beginn eines jeden Systems explizit festgelegt wurde,
1630 können wir auch den exakten Beginn eines jeden Notensystems in der
1631 Gruppe festlegen.  Dies geschieht mit der @code{alignment-offsets}-Eigenschaft
1632 von @code{line-break-system-details}.
1633
1634 @lilypond[quote]
1635 \header { tagline = ##f }
1636 \paper { left-margin = 0\mm }
1637 \book {
1638   \score {
1639     <<
1640       \new Staff <<
1641         \new Voice {
1642           \overrideProperty #"Score.NonMusicalPaperColumn"
1643             #'line-break-system-details #'((Y-offset . 20)
1644                                            (alignment-offsets . (0 -15)))
1645           s1*5 \break
1646           \overrideProperty #"Score.NonMusicalPaperColumn"
1647             #'line-break-system-details #'((Y-offset . 60)
1648                                            (alignment-offsets . (0 -15)))
1649           s1*5 \break
1650           \overrideProperty #"Score.NonMusicalPaperColumn"
1651             #'line-break-system-details #'((Y-offset . 100)
1652                                            (alignment-offsets . (0 -15)))
1653           s1*5 \break
1654         }
1655         \new Voice { \repeat unfold 15 { c'4 c' c' c' } }
1656       >>
1657       \new Staff {
1658         \repeat unfold 15 { d'4 d' d' d' }
1659       }
1660     >>
1661   }
1662 }
1663 @end lilypond
1664
1665 Dem @code{line-break-system-details}-Attribut des
1666 @code{NonMusicalPaperColumn}-Grobs werden zwei Eigenschaften
1667 zugewiesen.  Auch wenn die Liste (alist) von
1668 @code{line-break-system-details} sehr viel mehr Platzierungsparameter
1669 akzeptiert, müssen hier nu die Parameter @code{Y-offset} und
1670 @code{alignment-offsets} gesetzt werden, um den vertikalen Beginn
1671 jedes Systems und jeder Systemgruppe zu kontrollieren.  @code{Y-offset}
1672 bestimmt also die vertikale Position von Systemgruppen und @code{alignment-offsets}
1673 die vertikale Position von einzelnen Notensystemen.
1674
1675 @lilypond[quote]
1676 \header { tagline = ##f }
1677 \paper { left-margin = 0\mm }
1678 \book {
1679   \score {
1680     <<
1681       \new Staff <<
1682         \new Voice {
1683           \overrideProperty #"Score.NonMusicalPaperColumn"
1684             #'line-break-system-details #'((Y-offset . 0)
1685                                            (alignment-offsets . (0 -30 -40)))
1686           s1*5 \break
1687           \overrideProperty #"Score.NonMusicalPaperColumn"
1688             #'line-break-system-details #'((Y-offset . 60)
1689                                            (alignment-offsets . (0 -10 -20)))
1690           s1*5 \break
1691           \overrideProperty #"Score.NonMusicalPaperColumn"
1692             #'line-break-system-details #'((Y-offset . 100)
1693                                            (alignment-offsets . (0 -10 -40)))
1694           s1*5 \break
1695         }
1696         \new Voice { \repeat unfold 15 { c'4 c' c' c' } }
1697       >>
1698       \new StaffGroup <<
1699         \new Staff { \repeat unfold 15 { d'4 d' d' d' } }
1700         \new Staff { \repeat unfold 15 { e'4 e' e' e' } }
1701       >>
1702     >>
1703   }
1704 }
1705 @end lilypond
1706
1707 Einige Dinge sollten beachtet werden:
1708
1709 @itemize
1710 @item Wenn @code{alignment-offsets} benutzt wird, werden Gesangtextzeilen
1711 als ein System gezählt.
1712
1713 @item Die Einheiten der Zahlen, die für @code{X-offset},
1714 @code{Y-offset} und @code{alignment-offsets} benutzt werden, werden als
1715 Vielfaches des Abstandes zwischen zwei Notenlinien gewertet.  Positive
1716 Werte verschieben Systeme und Gesangstext nach oben, negative Werte nach
1717 unten.
1718
1719 @item Weil die Einstellungen von @code{NonMusicalPaperColumn #'line-break-system-details}
1720 es möglich machen, Notensysteme und Gruppen an beliebigen Stellen auf der
1721 Seite zu platzieren, kann man damit auch Ränder überschreiben oder sogar
1722 Notensysteme übereinander platzieren.  Sinnvolle Werte für diese
1723 Parameter werden derartiges Verhalten vermeiden.
1724 @end itemize
1725
1726
1727 @seealso
1728 Schnipsel:
1729 @rlsr{Spacing}.
1730
1731
1732 @node Vertikale Abstände mit zwei Durchgängen
1733 @subsection Vertikale Abstände mit zwei Durchgängen
1734 @translationof Two-pass vertical spacing
1735
1736 @warning{Vertikale Positionierung in zwei Durchgängen ist veraltet
1737 (deprecated) und wird in zukünftigen Versionen von LilyPond entfernt
1738 werden.  Systeme werden jetzt automatisch in einem einzigen
1739 Durchlauf gedehnt.  Siehe auch @ref{Vertikale Abstände innerhalb eines Systems}.}
1740
1741 Um Systeme zu dehnen, sodass sie den restlichen Platz auf der Seite
1742 auffüllen, kann ein Verfahren benutzt werden, dass die Positionierung
1743 in zwei Durchläufen ermittelt:
1744
1745 @enumerate
1746 @item Im ersten Durchlauf wird der Platz berechnet, um den jede
1747 Systemgruppe gedehnt werden sollte und in eine Datei geschrieben.
1748 @item Im zweiten Durchlauf werden die Systemgruppen anhand der
1749 Daten aus dieser Datei entsprechend gedehnt.
1750 @end enumerate
1751
1752 Die @code{ragged-bottom}-Eigenschaft fügt den Platz zwischen
1753 Systemgruppen ein, während mit der Technik in zwei Durchläufen
1754 die Systemgruppen selber gedehnt werden.
1755
1756 Um dieses Verhalten zu erzeugen, muss die @code{tweak-key}-Eigenschaft
1757 in der @code{\layout}-Umgebung jeder Partitur definiert werden und diese
1758 Anpassungen dann in jeder Partitur mit dem Befehl @code{\scoreTweak}
1759 angewandt werden.
1760
1761 @quotation
1762 @verbatim
1763 %% die erstellte Layout-Datei einfügen
1764 \includePageLayoutFile
1765
1766 \score {
1767   \new StaffGroup <<
1768     \new Staff <<
1769       %% Anpassungen für diese Partitur einfügen
1770       \scoreTweak "scoreA"
1771       { \clef french c''1 \break c''1 }
1772     >>
1773     \new Staff { \clef soprano g'1 g'1 }
1774     \new Staff { \clef mezzosoprano e'1 e'1 }
1775     \new Staff { \clef alto g1 g1 }
1776     \new Staff { \clef bass c1 c1 }
1777   >>
1778   \header {
1779     piece = "Score with tweaks"
1780   }
1781   %% Definieren, wie die Anpassungen für diese Datei genannt werden:
1782   \layout { #(define tweak-key "scoreA") }
1783 }
1784 @end verbatim
1785 @end quotation
1786
1787 Für den ersten Durchgang sollte die @code{dump-tweaks}-Option gesetzt
1788 werden, damit die Layout-Datei erstellt wird.
1789
1790 @example
1791 lilypond -dbackend=null -d dump-tweaks <file>.ly
1792 lilypond <file>.ly
1793 @end example
1794
1795
1796 @seealso
1797 Schnipsel:
1798 @rlsr{Spacing}.
1799
1800
1801 @node Vermeidung von vertikalen Zusammenstößen
1802 @subsection Vermeidung von vertikalen Zusammenstößen
1803 @translationof Vertical collision avoidance
1804
1805 @cindex Vermeidung von vertikalen Zusammenstößen
1806 @cindex Zusammenstöße, vertikal, vermeiden
1807 @cindex vertikale Zusammenstöße, vermeiden
1808 @cindex Kollisionen, vertikal, vermeiden
1809
1810 @funindex outside-staff-priority
1811 @funindex outside-staff-padding
1812 @funindex outside-staff-horizontal-padding
1813
1814 Intuitiv gibt es in der Notation einige Objekte, die zu dem Notensystem
1815 gehören, und einige andere, die immer außerhalb des Notensystems
1816 positioniert werden sollten.  Zu diesen letzteren gehören etwa
1817 Übungszeichen, Textbeschriftung und Dynamikbezeichnung (die als
1818 Objekte außerhalb des Systems bezeichnet werden können).  LilyPonds
1819 Regeln um diese Objekte zu positionieren lautet: so nah am Notensystem
1820 wie möglich, aber gerade so weit weg, dass sie nicht mit anderen
1821 Objekten zusammenstoßen.
1822
1823 Dabei setzt LilyPond die @code{outside-staff-priority}-Eigenschaft
1824 ein um herauszufinden, ob ein Grob ein Objekt außerhalb des Systems
1825 ist: wenn @code{outside-staff-priority} eine Zahl ist, dann handelt
1826 es sich um ein Objekt außerhalb des Systems.  Zusätzlich teilt
1827 @code{outside-staff-priority} noch mit, in welcher Reihenfolge
1828 die Objekte außerhalb des Systems gesetzt werden sollen.
1829
1830 Zuerst werden alle Objekte gesetzt, die nicht außerhalb des Systems
1831 gehören.  Dann werden die Objekte außerhalb des Systems nach dem Wert
1832 ihrer @code{outside-staff-priority}  (in aufsteigender Anordnung)
1833 sortiert.  Eins nach dem anderen werden diese Objekte schließlich
1834 genommen und so platziert, dass sie nicht mit den Objekten zusammenstoßen,
1835 die bereits platziert worden sind.  Wenn also zwei Objekte außerhalb
1836 des Systems um den gleichen Platz streiten, wird das mit dem
1837 geringeren Wert von @code{outside-staff-priority} näher an das
1838 entsprechende Notensystem gesetzt.
1839
1840 @lilypond[quote,ragged-right,relative=2,fragment,verbatim]
1841 c4_"Text"\pp
1842 r2.
1843 \once \override TextScript #'outside-staff-priority = #1
1844 c4_"Text"\pp % this time the text will be closer to the staff
1845 r2.
1846 % by setting outside-staff-priority to a non-number,
1847 % we disable the automatic collision avoidance
1848 \once \override TextScript #'outside-staff-priority = ##f
1849 \once \override DynamicLineSpanner #'outside-staff-priority = ##f
1850 c4_"Text"\pp % now they will collide
1851 @end lilypond
1852
1853 Der Platz, der zwischen einem Objekt außerhalb des Systems und
1854 dem vorhergehenden Objekt eingefügt werden kann (auch als
1855 padding bezeichnet), kann durch @code{outside-staff-padding}
1856 kontrolliert werden.
1857
1858 @lilypond[quote,ragged-right,relative=2,fragment,verbatim]
1859 \once \override TextScript #'outside-staff-padding = #0
1860 a'^"This text is placed very close to the note"
1861 \once \override TextScript #'outside-staff-padding = #3
1862 c^"This text is padded away from the previous text"
1863 c^"This text is placed close to the previous text"
1864 @end lilypond
1865
1866 Standardmäßig werden Objekte außerhalb des Systems so gesetzt,
1867 dass sie eine horizontale Überschneidung mit einem der
1868 vorher gesetzten Grobs vermeiden.  Das kann zu Situationen
1869 führen, in denen Objekte sehr dicht nebeneinander gesetzt
1870 werden.  Der vertikale Platz zwischen Notensystemen kann
1871 auch gesetzt werden, sodass Objekte außerhalb des Systems
1872 ineinander greifen. Mit der Eigenschaft
1873 @code{outside-staff-horizontal-padding} können Objekte vertikal
1874 verschoben werden und derartige Situationen kommen nicht
1875 vor.
1876
1877 @lilypond[quote,ragged-right,relative=2,fragment,verbatim]
1878 % the markup is too close to the following note
1879 c4^"Text"
1880 c4
1881 c''2
1882 % setting outside-staff-horizontal-padding fixes this
1883 R1
1884 \once \override TextScript #'outside-staff-horizontal-padding = #1
1885 c,,4^"Text"
1886 c4
1887 c''2
1888 @end lilypond
1889
1890 @seealso
1891 Schnipsel:
1892 @rlsr{Spacing}.
1893
1894
1895 @node Horizontale Abstände
1896 @section Horizontale Abstände
1897 @translationof Horizontal spacing
1898
1899 @cindex horizontale Platzierung
1900 @cindex horizontale Anordnung
1901 @cindex Anordnung, horizontal
1902
1903 @menu
1904 * Überblick über horizontale Abstände::
1905 * Eine neuer Bereich mit anderen Abständen::
1906 * Horizontale Abstände verändern::
1907 * Zeilenlänge::
1908 * Proportionale Notation::
1909 @end menu
1910
1911
1912 @node Überblick über horizontale Abstände
1913 @subsection Überblick über horizontale Abstände
1914 @translationof Horizontal spacing overview
1915
1916 Die Setzmaschine interpretiert unterschiedliche Notendauern als
1917 dehnbare Abstände (engl. spring) unterschiedlicher Länge.  Längere
1918 Dauern erhalten mehr Platz, kürzere weniger.  Die kürzeste Dauer
1919 erhält eine feste Breite (die mit @code{shortest-duration-space}
1920 im @code{SpacingSpanner}-Objekt kontrolliert werden kann).  Je
1921 länger die Dauer, umso mehr Platz erhält die Note: wenn ihre
1922 Dauer verdoppelt wird, wird ein bestimmter Platz hinzugefügt
1923 (dessen Breite durch @code{spacing-increment} bestimmt werden
1924 kann).
1925
1926 Das folgende Stück beispielsweise enthält Halbe, Viertel und Achtel.
1927 Die Achtelnote wird gefolgt von einem Notenkopfabstand (NKA).  Die
1928 Viertel wird von 2 NKA gefolgt, die Halbe von 3 NKA usw.
1929
1930 @lilypond[quote,fragment,verbatim,relative=1]
1931 c2 c4. c8 c4. c8 c4. c8 c8
1932 c8 c4 c4 c4
1933 @end lilypond
1934
1935 Normalerweise ist @code{spacing-increment} definiert als 1.2 mal
1936 der Abstand zwischen zwei Notenlinien, was in etwa die Breite eines
1937 Notenkopfes ist.  @code{shortest-duration-space} ist definiert als
1938 2.0, was bedeutet, dass die kürzeste Note 2.4 Notenlinienabstände
1939 2.0 mal der Wert von @code{spacing-increment}) horizontalen
1940 Abstand erhält.  Der Abstand wird von der linken Kante des Symbols
1941 errechnet, so dass die kürzeste Note üblicherweise von 1 NKA
1942 Abstand gefolgt wird.
1943
1944 Wenn diese Herangehensweise konsequent angewandt würde, würde eine
1945 einzige Zweiunddreißigstel eine Partitur, in der vor allem Achtel und
1946 Sechzehntel vorkommen, sehr weit auseinanderdehnen.  Die kürzeste
1947 Note wäre nun keine Sechzehntel mehr, sondern eine Zweiunddreißigstel,
1948 wodurch an jede Note der Wert von 1 NKA hinzugefügt würde.  Um das
1949 zu vermeiden, ist die kürzeste Dauer für die Platzverteilung nicht die
1950 kürzeste Note einer Partitur, sondern die, die am häufigsten vorkommt.
1951
1952 Die Notendauer, die am häufigsten vorkommt, wird auf folgende
1953 Weise bestimmt: in jedem Takt wird die kürzeste Note bestimmt.  Die
1954 häufigste kürzeste Note wird dann als Grundlage für die Platzverteilung
1955 der Noten herangezogen, mit der Bedingung, dass diese kürzeste
1956 Note immer ein Achtel oder kürzer sein soll.  Die kürzeste Dauer
1957 wird ausgegeben, wenn @code{lilypond} mit der Option @code{--verbose}
1958 aufgerufen wird.
1959
1960 Diese Dauern können aber auch angepasst werden.  Wenn Sie die Eigenschaft
1961 @code{common-shortest-duration} in dem @code{SpacingSpanner} setzen,
1962 dann wird hiermit die Grunddauer für die Platzverteilung eingestellt.
1963 Die maximale Dauer für diesen Grundwert (normalerweise eine Achtel)
1964 wird definiert mit @code{base-shortest-duration}.
1965
1966 @funindex common-shortest-duration
1967 @funindex base-shortest-duration
1968 @funindex stem-spacing-correction
1969 @funindex spacing
1970
1971 Noten, die noch kürzer sind als die häufigste kürzeste Note, werden
1972 durch einen Platz voneinander getrennt, der proportional zu ihrer
1973 Dauer in Beziehung zur häufigsten kürzesten Note ist.  Wenn also
1974 nur ein paar Sechzehntel zu dem obigen Beispiel hinzugefügt werden,
1975 würden sie von 1/2 NKA gefolgt werden:
1976
1977 @lilypond[quote,fragment,verbatim,relative=2]
1978 c2 c4. c8 c4. c16[ c] c4. c8 c8 c8 c4 c4 c4
1979 @end lilypond
1980
1981 In der Einleitung (siehe @rlearning{Notensatz}) wurde erklärt, dass die
1982 Richtung der Notenhälse die Platzverteilung beeinflusst.  Das wird
1983 kontrolliert durch die @code{stem-spacing-correction}-Eigenschaft
1984 in dem @code{NoteSpacing}-Objekt.  Dieses Objekt wird für jeden
1985 @code{Voice}-Kontext erstellt.  Das @code{StaffSpacing}-Objekt (in
1986 einem @code{Staff}-Kontext erstellt) enthält die gleiche Eigenschaft,
1987 um die Verteilung von Hälsen neben Taktlinien zu kontrollieren.  In
1988 dem folgenden Beispiel werden diese Einstellungen gezeigt, einmal
1989 mit den Standardwerten und dann mit größeren Werten, damit man sie
1990 besser sieht:
1991
1992 @lilypond[quote,ragged-right]
1993 {
1994   c'4 e''4 e'4 b'4 |
1995   b'4 e''4 b'4 e''4|
1996   \override Staff.NoteSpacing #'stem-spacing-correction = #1.5
1997   \override Staff.StaffSpacing #'stem-spacing-correction = #1.5
1998   c'4 e''4 e'4 b'4 |
1999   b'4 e''4 b'4 e''4|
2000 }
2001 @end lilypond
2002
2003 Proportionale Notation ist unterstützt, siehe @ref{Proportionale Notation}.
2004
2005 @seealso
2006 Schnipsel:
2007 @rlsr{Spacing}.
2008
2009 Referenz der Interna:
2010 @rinternals{SpacingSpanner},
2011 @rinternals{NoteSpacing},
2012 @rinternals{StaffSpacing},
2013 @rinternals{NonMusicalPaperColumn}.
2014
2015 @knownissues
2016
2017 Es gibt keine sinnvolle Möglichkeit, die horizontale Verteilung der
2018 Noten zu unterdrücken.  Die folgende Problemumgehung, mit der
2019 dehnbare Abstände (padding) eingesetzt werden, kann benutzt
2020 werden, um zusätzlichen Platz in eine Partitur einzufügen.
2021
2022 @example
2023  \once \override Score.SeparationItem #'padding = #10
2024 @end example
2025
2026 Es gibt derzeit keine Möglichkeit, den Platz zu verringern.
2027
2028
2029 @node Eine neuer Bereich mit anderen Abständen
2030 @subsection Eine neuer Bereich mit anderen Abständen
2031 @translationof New spacing area
2032
2033 @cindex horizontale Notenabstände, Abschnitte definierten
2034 @cindex Notenabstände, Abschnitte definieren
2035 @cindex Abschnitte definieren, Notenabstände
2036
2037 Neue Abschnitte mit unterschiedlichen Notenabstandsparametern
2038 können mit dem Befehl @code{newSpacingSection} begonnen werden.
2039 Das ist hilfreich, wenn in verschiedenen Abschnitten die
2040 Verhältnisse von kurzen und langen Noten sehr unterschiedlich
2041 ausfallen.
2042
2043 Im folgenden Beispiel wird durch die neue Taktart ein neuer
2044 Abschnitt begonnen, in dem die Sechzehntel weiter außeinander
2045 gesetzt werden sollen.
2046
2047 @lilypond[relative,fragment,verbatim,quote]
2048 \time 2/4
2049 c4 c8 c
2050 c8 c c4 c16[ c c8] c4
2051 \newSpacingSection
2052 \time 4/16
2053 c16[ c c8]
2054 @end lilypond
2055
2056 Der @code{\newSpacingSection}-Befehl erstellt ein neues
2057 @code{SpacingSpanner}-Objekt, weshalb auch neue Anpassungen
2058 mit dem @code{\override}-Befehl an dieser Stelle eingesetzt
2059 werden können.
2060
2061 @seealso
2062 Schnipsel:
2063 @rlsr{Spacing}.
2064
2065 Referenz der Interna:
2066 @rinternals{SpacingSpanner}.
2067
2068
2069 @node Horizontale Abstände verändern
2070 @subsection Horizontale Abstände verändern
2071 @translationof Changing horizontal spacing
2072
2073 @cindex Notenabstände, horizontal
2074 @cindex horizontale Abstände
2075 @cindex horizontale Notenabstände
2076
2077 Die horizontalen Abstände können mit der
2078 @code{base-shortest-duration}-Eigenschaft
2079 verändert werden.  In den folgenden Beispielen
2080 werden die gleichen Noten eingesetzt, zuerst
2081 ohne die Eigenschaft zu verändern, im zweiten
2082 Beispiel dann mit einem anderen Wert.  Größere
2083 Werte für @code{ly:make-moment} ergeben dichtere
2084 Noten.  @code{ly:make-moment} erstellt eine Dauer,
2085 die als Bruch notiert wird, sodass @code{1 4}
2086 eine größere Dauer ist als @code{1 16}.
2087
2088 @lilypond[verbatim,line-width=12\cm]
2089 \score {
2090   \relative c'' {
2091     g4 e e2 | f4 d d2 | c4 d e f | g4 g g2 |
2092     g4 e e2 | f4 d d2 | c4 e g g | c,1 |
2093     d4 d d d | d4 e f2 | e4 e e e | e4 f g2 |
2094     g4 e e2 | f4 d d2 | c4 e g g | c,1 |
2095   }
2096 }
2097 @end lilypond
2098
2099 @lilypond[verbatim,line-width=12\cm]
2100 \score {
2101   \relative c'' {
2102     g4 e e2 | f4 d d2 | c4 d e f | g4 g g2 |
2103     g4 e e2 | f4 d d2 | c4 e g g | c,1 |
2104     d4 d d d | d4 e f2 | e4 e e e | e4 f g2 |
2105     g4 e e2 | f4 d d2 | c4 e g g | c,1 |
2106   }
2107   \layout {
2108     \context {
2109       \Score
2110       \override SpacingSpanner
2111                 #'base-shortest-duration = #(ly:make-moment 1 16)
2112     }
2113   }
2114 }
2115 @end lilypond
2116
2117
2118 @snippets
2119
2120 Standardmäßig wird die Platzverteilung in Triolen und andern
2121 rhythmischen Aufteilungen nach verschiedenen nicht von der
2122 Dauer abgeleiteten Faktoren (wie Versetzungszeichen,
2123 Schlüsselwechseln usw.) berechnet.  Um diese Symbole zu
2124 ignorieren und eine gleichmäßige Verteilung der Noten
2125 zu erzwingen, kann die gleichmäßige Dehnung (engl.
2126 uniform stretching) zu Beginn einer Partitur eingeschaltet
2127 werden:
2128
2129 @lilypond[quote,ragged-right,relative=2,fragment,verbatim]
2130 \new Score \with {
2131   \override SpacingSpanner #'uniform-stretching = ##t
2132 } <<
2133   \new Staff{
2134     \times 4/5 {
2135       c8 c8 c8 c8 c8
2136     }
2137     c8 c8 c8 c8
2138   }
2139   \new Staff{
2140     c8 c8 c8 c8
2141     \times 4/5 {
2142       c8 c8 c8 c8 c8
2143     }
2144   }
2145 >>
2146 @end lilypond
2147
2148 Wenn @code{strict-note-spacing} eingestellt ist, werden Noten
2149 gesetzt, ohne dass Schlüssel, Taktlinie oder Verzierungsnoten
2150 zusätzlichen Platz erhalten.
2151
2152 @lilypond[quote,ragged-right,relative=2,fragment,verbatim]
2153 \override Score.SpacingSpanner #'strict-note-spacing = ##t
2154 \new Staff { c8[ c \clef alto c \grace { c16[ c] } c8 c c]  c32[ c32] }
2155 @end lilypond
2156
2157
2158 @seealso
2159 Schnipsel:
2160 @rlsr{Spacing}.
2161
2162
2163 @node Zeilenlänge
2164 @subsection Zeilenlänge
2165 @translationof Line length
2166
2167 @cindex Seitenumbrüche
2168 @cindex Umbrechen von Seiten
2169 @cindex Zeilenlänge
2170 @cindex Länge von Zeilen
2171
2172 @funindex indent
2173 @funindex line-width
2174 @funindex ragged-right
2175 @funindex ragged-last
2176
2177 @c Although line-width can be set in \layout, it should be set in paper
2178 @c block, to get page layout right.
2179 @c Setting indent in \paper block makes not much sense, but it works.
2180
2181 @c Bit verbose and vague, use examples?
2182 Die grundlegenden Einstellungen, die Einfluss auf die Zeilenlänge
2183 haben, sind @code{indent} (Einzug) und @code{line-width}
2184 (Zeilenbreite).  Sie werden in der @code{\layout}-Umgebung
2185 eingestellt.  Der erste Befehl bestimmt den Einzug der ersten
2186 Zeile, der zweite die Zeilenlänge der weiteren Notenzeilen.
2187
2188 Wenn @code{ragged-right} eingestellt ist (als in der
2189 @code{\layout}-Umgebung auf den Wert @code{#t} gesetzt wurde),
2190 werden die Systeme linksbündig gesetzt und nicht bis zum
2191 rechten Rand hin durchgezogen, sondern den Noten entsprechend
2192 gesetzt.  Das ist oftmals nützlich für kleine Notenfragmente
2193 und um zu überprüfen, wie eng die Noten natürlicherweise
2194 gesetzt werden würden.
2195
2196 Die Option @code{ragged-last} verhält sich ähnlich zu @code{ragged-right},
2197 aber wirkt sich nur auf die letzte Zeile eines Stückes aus.
2198 Für diese letzte Zeile gibt es keine Einschränkungen.  Das
2199 Resultat erinnert an Textabsätze im Blocksatz, wo die letzte
2200 Zeile des Absatzes mit ihrer natürlichen Länge gesetzt wird.
2201
2202 @example
2203 \layout @{
2204 indent = #0
2205 line-width = #150
2206 ragged-last = ##t
2207 @}
2208 @end example
2209
2210 @seealso
2211 Schnipsel:
2212 @rlsr{Spacing}.
2213
2214
2215 @node Proportionale Notation
2216 @subsection Proportionale Notation
2217 @translationof Proportional notation
2218
2219 LilyPond hat Unterstützung für proportionale Notation.  Dabei handelt
2220 es sich um eine horizontale Platzverteilung, die jeder Note einen
2221 exakt ihrer Dauer entsprechenden Platz zuordnet.  Man kann es vergleichen
2222 mit der Notenplatzierung auf einem Raster.  In einigen Partituren
2223 des späten 20. und frühen 21. Jahrhunderts wird dies proportionale
2224 Notation benutzt, um sehr komplizierte rhythmische Verhältnisse
2225 klarer darzustellen, oder um einen Zeitstrahl oder ähnliche Graphiken
2226 direkt in die Partitur zu integrieren.
2227
2228 LilyPond hat Unterstützung für fünf verschiedene Einstellungen der
2229 proportionalen Notation, die alle zusammen oder jede für sich
2230 benutzt werden können:
2231
2232 @itemize
2233 @item @code{proportionalNotationDuration} (proportionale Notendauer)
2234 @item @code{uniform-stretching} (gleichmäßige Dehnung)
2235 @item @code{strict-note-spacing} (strenge Notenverteilung)
2236 @item @code{\remove Separating_line_group_engraver} (entferne Liniengruppentrennungsengraver)
2237 @item @code{\override PaperColumn #'used = ##t} (PapierSpalte benutzt = wahr)
2238 @end itemize
2239
2240 In den Beispielen unten werden diese fünf unterschiedlichen Einstellungen
2241 für die proportionale Notation vorgestellt und ihre Wirkungen
2242 untereinander illustriert.
2243
2244 Es soll mit diesem 1 Takt langen Beispiel begonnen werden, in welchem
2245 die klassischen Abstände und Flattersatz (ragged-right) eingesetzt werden:
2246
2247 @lilypond[quote,verbatim,ragged-right]
2248 \new Score <<
2249   \new RhythmicStaff {
2250     c'2
2251     c'16 c'16 c'16 c'16
2252     \times 4/5 {
2253       c'16 c'16 c'16 c'16 c'16
2254     }
2255   }
2256 >>
2257 @end lilypond
2258
2259 Die Halbe, mit der der Takt beginnt, braucht weitaus weniger
2260 Platz als die Hälfte des Taktes.  Gleichermaßen haben die
2261 Sechzehntel und die Sechzehntel-Quintolen (oder Zwanzigstel),
2262 mit denen der Takt endet, insgesamt weitaus mehr als die Hälfte
2263 der Taktbreite.
2264
2265 Im klassischen Notensatz kann dieses Verhalten genau das gewünschte
2266 Ergebnis bringen, weil dadurch horizontaler Platz von der Halben
2267 weggenommen werden kann und so insgesamt Platz in dem Takt eingespart
2268 wird.
2269
2270 Wenn allerdings ein Zeitstrahl oder andere zeitliche ablaufende
2271 Graphiken über oder unter dem Takt eingefügt werden soll, braucht man
2272 eine Notenplatzierung, die exakt der von ihnen eingenommenen Dauer
2273 entspricht.  Auf folgende Art wird die proportionale Notation
2274 eingeschaltet:
2275
2276 @lilypond[quote,verbatim,ragged-right]
2277 \new Score \with {
2278   proportionalNotationDuration = #(ly:make-moment 1 20)
2279 } <<
2280   \new RhythmicStaff {
2281     c'2
2282     c'16 c'16 c'16 c'16
2283     \times 4/5 {
2284       c'16 c'16 c'16 c'16 c'16
2285     }
2286   }
2287 >>
2288 @end lilypond
2289
2290 Die Halbe zu Beginn des Taktes und die schnelleren Noten in der zweiten
2291 Takthälfte nehmen jetzt genau den gleichen horizontalen Platz ein.  Jetzt
2292 könnte man einen Zeitstrahl mit dem Takt synchronisieren.
2293
2294 Die Einstellung von @code{proportionalNotationDuration} gehört zum
2295 @code{Score}-Kontext.  Kontexteinstellungen können an drei verschiedenen
2296 Stellen in der Quelldatei geschrieben werden: in einer @code{\with}-Umgebung,
2297 in einer @code{\context}-Umgebung oder direkt in den Noten mit dem
2298 @code{\set}-Befehl.  Alle drei Positionen sind gleichwertig und es hängt
2299 vom Benutzer ab, welche bevorzugt wird.
2300
2301 Die Eigenschaft @code{proportionalNotationDuration} braucht ein Argument,
2302 welches die Referenzdauer ist, anhand welcher alle Noten platziert werden.
2303 Hier wird die LilyPond Scheme-Funktion @code{make-moment} eingesetzt.  Sie
2304 braucht zwei Argumente: einen Zähler und einen Nenner, die einen Bruch einer
2305 Ganzen darstellen.  Die Funktion @code{#(ly:make-moment 1 20)} ergibt also
2306 eine Referenzdauer von einer Zwanzigstel.  Genauso gut können etwa die Dauern
2307 @code{#(ly:make-moment 1 16)}, @code{#(ly:make-moment 1 8)} oder
2308 @code{#(ly:make-moment 3 97)} eingesetzt werden.
2309
2310 Die richtige Referenzdauer, mit der eine vernünftige Verteilung der Noten
2311 proportional möglich ist, muss durch Ausprobieren herausgefunden werden.
2312 Dabei sollte man mit einer Dauer beginnen, die der kleinsten Note des
2313 Stückes nahekommt.  Kleine Referenzdauern lassen die Noten sehr gedehnt
2314 erscheinen, größere Referenzdauern zwingen sie dichter zusammen.
2315
2316 @lilypond[quote,verbatim,ragged-right]
2317 \new Score \with {
2318   proportionalNotationDuration = #(ly:make-moment 1 8)
2319 } <<
2320   \new RhythmicStaff {
2321     c'2
2322     c'16 c'16 c'16 c'16
2323     \times 4/5 {
2324       c'16 c'16 c'16 c'16 c'16
2325     }
2326   }
2327 >>
2328
2329 \new Score \with {
2330   proportionalNotationDuration = #(ly:make-moment 1 16)
2331 } <<
2332   \new RhythmicStaff {
2333     c'2
2334     c'16 c'16 c'16 c'16
2335     \times 4/5 {
2336       c'16 c'16 c'16 c'16 c'16
2337     }
2338   }
2339 >>
2340
2341 \new Score \with {
2342   proportionalNotationDuration = #(ly:make-moment 1 32)
2343 } <<
2344   \new RhythmicStaff {
2345     c'2
2346     c'16 c'16 c'16 c'16
2347     \times 4/5 {
2348       c'16 c'16 c'16 c'16 c'16
2349     }
2350   }
2351 >>
2352 @end lilypond
2353
2354 Man muss beachten, dass die Referenzdauer nicht zu groß ist
2355 (wie die Achtel in dem Beispiel oben), denn dadurch werden
2356 die Noten so dicht gesetzt, dass sich eventuell sogar Notenköpfe
2357 von sehr kleinen Notenwerten überschneiden können.  Die proportionale
2358 Notation nimmt üblicherweise mehr Platz ein als die klassische
2359 Platzverteilung.  Der rhythmischen Klarheit muss ein eng gesetztes
2360 Notenbild geopfert werden.
2361
2362 In Folgenden soll betrachtet werden, wie sich überlappende
2363 rhythmische Aufteilungen am besten positioniert werden.  Als Referenz
2364 wird das erste Beispiel herangezogen, zu welchem ein zweites
2365 System mit anderen rhythmischen Werten hinzugefügt wird:
2366
2367 @lilypond[quote,verbatim,ragged-right]
2368 \new Score <<
2369   \new RhythmicStaff {
2370     c'2
2371     c'16 c'16 c'16 c'16
2372     \times 4/5 {
2373       c'16 c'16 c'16 c'16 c'16
2374     }
2375   }
2376   \new RhythmicStaff {
2377     \times 8/9 {
2378       c'8 c'8 c'8 c'8 c'8 c'8 c'8 c'8 c'8
2379     }
2380   }
2381 >>
2382 @end lilypond
2383
2384 Die Platzaufteilung ist schlecht, weil die gleichlangen Noten des
2385 untersten Systems nicht gleichmäßig verteilt sind.  Im klassischen
2386 Notensatz kommen komplexe rhythmische Verhältnisse wie dieses sehr
2387 selten vor, sodass der Notensatz nicht in Hinsicht auf sie optimiert
2388 ist.  @code{proportionalNotationDuration} hilft in
2389 dieser Situation deutlich:
2390
2391 @lilypond[quote,verbatim,ragged-right]
2392 \new Score \with {
2393   proportionalNotationDuration = #(ly:make-moment 1 20)
2394 } <<
2395   \new RhythmicStaff {
2396     c'2
2397     c'16 c'16 c'16 c'16
2398     \times 4/5 {
2399       c'16 c'16 c'16 c'16 c'16
2400     }
2401   }
2402   \new RhythmicStaff {
2403     \times 8/9 {
2404       c'8 c'8 c'8 c'8 c'8 c'8 c'8 c'8 c'8
2405     }
2406   }
2407 >>
2408 @end lilypond
2409
2410 Aber bei sehr genauer Betrachtung sind die Noten der zweiten Hälfte
2411 der Nonole doch immer noch eine Spur weiter gesetzt als die Noten
2412 der ersten Hälfte.  Um wirklich gleichmäßige Abstände zu erzwingen,
2413 sollte auch noch die gleichmäßige Dehnung angeschaltet werden:
2414
2415 @lilypond[quote,verbatim,ragged-right]
2416 \new Score \with {
2417   proportionalNotationDuration = #(ly:make-moment 1 20)
2418   \override SpacingSpanner #'uniform-stretching = ##t
2419 } <<
2420   \new RhythmicStaff {
2421     c'2
2422     c'16 c'16 c'16 c'16
2423     \times 4/5 {
2424       c'16 c'16 c'16 c'16 c'16
2425     }
2426   }
2427   \new RhythmicStaff {
2428     \times 8/9 {
2429       c'8 c'8 c'8 c'8 c'8 c'8 c'8 c'8 c'8
2430     }
2431   }
2432 >>
2433 @end lilypond
2434
2435 Das Beispiel mit den zwei Systemen ist nun exakt nach den
2436 rhythmischen Werten der Noten gesetzt, sodass ein Zeitstrahl
2437 oder ähnliches eingefügt werden könnte.
2438
2439 Alle Einstellungen zur proportionalen Notation erwarten,
2440 dass die @code{uniform-stretching}-Eigenschaft des
2441 @code{SpacingSpanner}-Objekts auf wahr gesetzt wird.  Andernfalls
2442 kann es vorkommen, dass bestimmte Abstände (etwa von
2443 unsichtbaren Noten) nicht richtig gesetzt werden.
2444
2445 Das @code{SpacingSpanner}-Objekt ist ein abstraktes Grob, dass sich im
2446 @code{Score}-Kontext befindet.  Genauso wie die Einstellungen
2447 von @code{proportionalNotationDuration} können auch diese
2448 Veränderungen an den drei Stellen in der Quelldatei vorkommen:
2449 in der @code{\with}-Umgebung innerhalb von @code{Score}, in
2450 einer @code{\context}-Umgebung oder direkt im Notentext.
2451
2452 Standardmäßig gibt es nur ein @code{SpacingSpanner} pro @code{Score}.
2453 Das heißt, dass @code{uniform-stretching} für die gesamte Partitur
2454 (d.h. für die Reichweite von @code{Score}) entweder an- oder
2455 ausgeschaltet ist.  Man kann allerdings in einer Partitur unterschiedliche
2456 Abschnitte mit verschiedenem Platzierungsverhalten definieren.
2457 Hierzu ist der Befehl @code{\newSpacingSection} da.  Siehe auch @ref{Eine neuer Bereich mit anderen Abständen}.
2458
2459 Im Folgenden soll gezeigt werden, wie sich der @code{Separating_line_group_engraver}
2460 auswirkt und warum er normalerweise für proportionale Notation ausgeschaltet wird.
2461 In diesem Beispiel wird verdeutlicht, dass vor jeder ersten Note eines Notensystems
2462 immer etwas zusätzlicher Platz gesetzt wird:
2463
2464 @lilypond[quote,verbatim,ragged-right]
2465 \paper {
2466   indent = #0
2467 }
2468
2469 \new Staff {
2470   c'1
2471   \break
2472   c'1
2473 }
2474 @end lilypond
2475
2476 Der gleiche horizontale Platz wird vor eine Noten gesetzt, wenn sie
2477 einer Taktart, einem Schlüssel oder einer Tonartbezeichnung folgt.
2478 Dieser Platz wird durch @code{Separating_line_group_engraver}
2479 eingefügt; wenn wir ihn aus der Partitur entfernen, entfällt
2480 auch dieser zusätzliche Platz:
2481
2482 @lilypond[quote,verbatim,ragged-right]
2483 \paper {
2484   indent = #0
2485 }
2486
2487 \new Staff \with {
2488   \remove Separating_line_group_engraver
2489 } {
2490   c'1
2491   \break
2492   c'1
2493 }
2494 @end lilypond
2495
2496 Nichtmusikalische Elemente wie Takt- und Tonartangaben, Schlüssel und
2497 Versetzungszeichen sind problematisch in proportionaler
2498 Notation.  Keine dieser Elemente hat eine rhythmische Dauer, aber
2499 alle brauchen horizontalen Platz.  Das Problem wird auf unterschiedliche
2500 Weise gelöst.
2501
2502 Es ist manchmal möglich, Probleme mit Tonarten zu lösen, indem keine
2503 benutzt werden.  Das ist durchaus eine ernstzunehmende Option, weil
2504 die meisten Partituren mit proportionaler Notation für heutige
2505 Musik geschrieben werden.  Ähnliches gilt für Taktarten, insbesondere,
2506 wenn ein Zeitstrahl in die Partitur eingearbeitet werden soll.
2507 In den meisten Partituren kommt jedoch irgendeine Taktart vor.
2508 Schlüssel und Versetzungszeichen sind noch wichtiger; auf
2509 sie kann selten verzichtet werden.
2510
2511 Eine Lösungsmöglichkeit ist es, die @code{strict-note-spacing}-Eigenschaft
2512 des @code{SpacingSpanner}-Objekts zu benutzen.  Zum Vergleich
2513 die beiden Partituren unten:
2514
2515 @lilypond[quote,verbatim,ragged-right]
2516 \new Staff {
2517   \set Score.proportionalNotationDuration = #(ly:make-moment 1 16)
2518   c''8
2519   c''8
2520   c''8
2521   \clef alto
2522   d'8
2523   d'2
2524 }
2525
2526 \new Staff {
2527   \set Score.proportionalNotationDuration = #(ly:make-moment 1 16)
2528   \override Score.SpacingSpanner #'strict-note-spacing = ##t
2529   c''8
2530   c''8
2531   c''8
2532   \clef alto
2533   d'8
2534   d'2
2535 }
2536 @end lilypond
2537
2538 Bei beiden handelt es sich um proportionale Notation, aber
2539 die Platzverteilung im oberen Beispiel ist zu weit wegen
2540 des Schlüsselwechsels.  Die Platzverteilung des zweiten
2541 Beispiels dagegen bleibt rhythmisch korrekt.
2542 @code{strict-note-spacing} bewirkt, dass Takt- und
2543 Tonartbezeichnungen, Schlüssel und Versetzungszeichen
2544 keine Rolle bei der Berechnung der Abstände spielen.
2545
2546 Zusätzlich zu den hier vorgestellten Einstellungen gibt es
2547 noch eine Reihe von Möglichkeiten, die oft in proportionaler
2548 Notation benutzt werden.  Dazu gehören:
2549
2550 @itemize
2551 @item @code{\override SpacingSpanner #'strict-grace-spacing = ##t}
2552 @item @code{tupletFullLength = ##t}
2553 @item @code{\override Beam #'breakable = ##t}
2554 @item @code{\override Glissando #'breakable = ##t}
2555 @item @code{\override TextSpanner #'breakable = ##t}
2556 @item @code{\remove Forbid_line_break_engraver in the Voice context}
2557 @end itemize
2558
2559 Diese Einstellungen bewirken, dass auch Verzierungsnoten proportional
2560 gesetzt werden, dass Klammern von rhythmischen Gruppen bis zu den
2561 Anfangs- und Endpunkten ausgedehnt werden und lassen dehnbare
2562 Objekte wie Balken und Glissandi auch über Taktstriche hinweg zu.
2563
2564 @seealso
2565 Notationsreferenz:
2566 @ref{Eine neuer Bereich mit anderen Abständen}.
2567
2568 Schnipsel:
2569 @rlsr{Spacing}.
2570
2571
2572 @node Die Musik auf weniger Seiten zwingen
2573 @section Die Musik auf weniger Seiten zwingen
2574 @translationof Fitting music onto fewer pages
2575
2576 Manchmal kommt es vor, dass nur ein oder zwei Systeme auf die
2577 nächste Seite geraten, obwohl es so aussieht, als ob auf der
2578 vorigen Seite genügend Platz ist, um diese Systeme auch noch
2579 unterzubringen.
2580
2581 Wenn man derartige Platzierungsprobleme untersucht, ist die
2582 Funktion @code{annotate-spacing} von sehr großer Hilfe.  Hiermit
2583 wird in den Musiksatz zusätzlich Information darüber ausgegeben,
2584 wieviel Platz bestimmten Parametern zugewiesen wird.  Genaueres
2585 hierzu in
2586 @ref{Abstände anzeigen lassen}.
2587
2588 @menu
2589 * Abstände anzeigen lassen::
2590 * Abstände verändern::
2591 @end menu
2592
2593
2594 @node Abstände anzeigen lassen
2595 @subsection Abstände anzeigen lassen
2596 @translationof Displaying spacing
2597
2598 @cindex Platzierung, Layouteinstellungen
2599
2600 @funindex annotate-spacing
2601
2602 Die Dimensionen von vertikalen und horizontalen Platzierungsvariablen,
2603 die veränderbar sind, lassen sich mit ihren aktuellen Werten im
2604 Notentext anzeigen, wenn man die Funktion
2605 @code{annotate-spacing} in der @code{\paper}-Umgebung einschaltet:
2606
2607 @c need to have \book{} otherwise we get the separate systems. -hwn
2608 @lilypond[verbatim,quote]
2609 #(set-default-paper-size "a6" 'landscape)
2610 \book {
2611   \score { { c4 } }
2612   \paper { annotate-spacing = ##t }
2613 }
2614 @end lilypond
2615
2616 @noindent
2617 Alle Layoutdimensionen werden in Notenlinienzwischenräumen
2618 aufgelistet, unabhängig von den Einheiten, mit denen sie in der
2619 @code{\paper}- oder @code{\layout}-Umgebung definiert worden
2620 sind.  In dem letzten Beispiel hat @code{paper-height} einen Wert von
2621 59.75 Notenlinienzwischenräumen und @code{staff-size}
2622 Systemhöhe) ist 20 Punkte.  Dabei gilt:
2623
2624 @multitable {1 Notenlinienzwischenraum} {Systemgröße)/4 * (25.4/72.27) mm}
2625
2626 @item 1 Punkt
2627 @tab = (25.4/72.27) mm
2628
2629 @item 1 Notenlinienzwischenraum
2630 @tab = (@code{staff-size})/4 pts
2631 @item
2632 @tab = (@code{staff-size})/4 * (25.4/72.27) mm
2633
2634 @end multitable
2635
2636 In diesem Fall ist ein @code{staff-space} (Notenlinienzwischenraum)
2637 etwa gleich 1.757 mm.  Deshalb entspricht der Wert von 95.75
2638 @code{staff-space} für @code{paper-height} (Papierhöhe) 105 mm,
2639 die Höhe eines quer gelegten A6-Papiers.  Die Paare (@var{a},@var{b}) sind
2640 Intervalle, wobei @var{a} der untere Rand und @var{b} der
2641 obere Rand des Intervalls.
2642
2643 @seealso
2644
2645 Notationsreferenz:
2646 @ref{Die Notensystemgröße einstellen}
2647
2648 Schnipsel:
2649 @rlsr{Spacing}.
2650
2651
2652 @node Abstände verändern
2653 @subsection Abstände verändern
2654 @translationof Changing spacing
2655
2656 Die Ausgabe von @code{annotate-spacing} bietet sehr viele
2657 Details zu den vertikalen Dimensionen einer Partitur.  Zu Information,
2658 wie Seitenränder und andere Layout-Variablen geändert werden
2659 können, siehe @ref{Seitenformatierung}.
2660
2661 Neben Rändern gibt es einige weitere Optionen, Platz zu sparen:
2662
2663 @itemize
2664 @item
2665 LilyPond kann die Systeme so dicht wie möglich platzieren (damit 
2666 so viele Systeme wie möglich auf eine Seite passen), aber sie 
2667 dann so anordnen, dass kein weißer Rand unten auf der Seite entsteht.
2668
2669 @example
2670 \paper @{
2671   between-system-padding = #0.1
2672   between-system-space = #0.1
2673   ragged-last-bottom = ##f
2674   ragged-bottom = ##f
2675 @}
2676 @end example
2677
2678 @item
2679 Die Anzahl der Systeme kann reduziert werden.  Das kann auf
2680 zwei Arten helfen: wenn einfach nur ein Wert gesetzt wird, auch
2681 wenn es die gleiche Anzahl ist, die auch schon vorher von LilyPond
2682 erstellt wurde, kann manchmal dazu führen, dass mehr Systeme
2683 auf eine Seite gesetzt werden.  Das liegt daran, dass ein
2684 Schritt im Notensatz ausgelassen wird, der die Seitenverteilung
2685 nur grob einschätzt, sodass eine bessere Seitenverteilung
2686 entsteht.  Auch wenn man eine Verringerung der Anzahl an Systemen
2687 erzwingt, kann oft eine Seite eingespart werden.  Wenn LilyPond 
2688 die Musik etwa auf 11 Systeme verteilt, kann man die Benutzung von 
2689 nur 10 Systemen erzwingen.
2690
2691 @example
2692 \paper @{
2693   system-count = #10
2694 @}
2695 @end example
2696
2697 @item
2698 Vermeidung von Objekten, die den vertikalen Abstand von Systemen 
2699 vergrößern, hilft oft. Die Verwendung von Klammern bei Wiederholungen 
2700 etwa braucht mehr Platz. Wenn die Noten innerhalb der Klammern  auf 
2701 zwei Systeme verteilt sind, brauchen sie mehr Platz, als wenn sie 
2702 nur auf einer Zeile gedruckt werden.
2703
2704 Ein anderes Beispiel ist es, Dynamik-Zeichen, die besonders 
2705 weit @qq{hervorstehen}, zu verschieben.
2706
2707 @lilypond[verbatim,quote]
2708 \relative c' {
2709   e4 c g\f c
2710   \override DynamicText #'extra-offset = #'( -2.2 . 2.0)
2711   e4 c g\f c
2712 }
2713 @end lilypond
2714
2715 @item
2716 Die horizontalen Abstände können mit der 
2717 @code{SpacingSpanner}-Eigenschaft verändert werden.  Siehe
2718 @ref{Horizontale Abstände verändern} für Einzelheiten.  Dieses
2719 Beispiel zeigt die normalen Abstände:
2720
2721 @lilypond[verbatim,quote]
2722 \score {
2723   \relative c'' {
2724     g4 e e2 |
2725     f4 d d2 |
2726     c4 d e f |
2727     g4 g g2 |
2728     g4 e e2 |
2729   }
2730 }
2731 @end lilypond
2732
2733 @noindent
2734 Das nächste Beispiel verändert @code{common-shortest-duration} (die
2735 häufigste kürzeste Note) von @code{1/4} zu @code{1/2}.  Die Viertelnote
2736 ist dennoch die häufigste Note in diesem Abschnitt, sodass der
2737 Notentext zusammengedrängt, wird, wenn eine Halbe als Standard
2738 angegeben wird:
2739
2740 @lilypond[verbatim,quote]
2741 \score {
2742   \relative c'' {
2743     g4 e e2 |
2744     f4 d d2 |
2745     c4 d e f |
2746     g4 g g2 |
2747     g4 e e2 |
2748   }
2749   \layout {
2750     \context {
2751       \Score
2752       \override SpacingSpanner
2753         #'common-shortest-duration = #(ly:make-moment 1 2)
2754     }
2755   }
2756 }
2757 @end lilypond
2758
2759 @noindent
2760 Die @code{common-shortest-duration}-Eigenschaft kann nicht
2761 dynamisch verändert werden, darum muss sie immer in der
2762 @code{\context}-Umgebung definiert werden und wirkt sich somit
2763 auf eine ganze @code{\score}-Umgebung aus.
2764
2765 @end itemize
2766
2767 @seealso
2768 Notationsreferenz:
2769 @ref{Seitenformatierung},
2770 @ref{Horizontale Abstände verändern}.
2771
2772 Schnipsel:
2773 @rlsr{Spacing}.