[Tustep-Liste] [Tustep] Zweispaltiges Setzen

Dr. Claudia Reichel reichel at bbaw.de
Mo Apr 5 09:48:23 CEST 2004


Diskussionsforum tustep-liste, 17.9.2002
Weitere Informationen: www.itug.de
------------------------------------------------------------------------
Beitrag von: "Paul Sappler" <paul.sappler at uni-tuebingen.de>
========================================================================
Liebe Leser der Tustep-Liste,

Herr Reeg wird (außer Frau Ott) die meisten Erfahrungen mit dem
Problem der Zuordnungen im mehrspaltigen Satz haben, das Herr
Meyer angesprochen hatte. Es sei erlaubt, noch einige Anmerkungen
beizusteuern, die den kritischen Punkt des Seitenumbruchs genauer
ins Auge fassen und die Sache weiter verallgemeinern. Das Folgende
ist kein Rezept, sondern eher eine strategische Überlegung. Sie
nimmt auf, was Herr Meyer als "das einzige, was mir noch einfällt"
bezeichnet und worauf Herrn Reegs Lösung hinausläuft.

----- Ziele:
- Außer mehreren Textspalten können auch Apparate vorkommen.
- Der automatische Seitenumbruch muß durch eine - möglichst
sparsame - Überarbeitung von Hand perfekter gemacht werden können.
Z.B. will man vor kritischen Stellen die Seiten entweder eher
ziehen oder eher stoßen (in Dachdecker-Terminologie).
- Handeingriffe in den Ablauf sollen minimiert und für die
Wiederholung mit leicht veränderten Ausgangsdaten aufbewahrt
werden.

Einschränkung: Es werden keine Textpartien von verschiedener
Zeilenhöhe parallelisiert (wenigstens müssen die Verhältnisse
ganzzahlig sein).

----- Übersicht über die Schritte:
1. Textspalten und anschließend die Apparate getrennt setzen (Satz
   I und II)
2. Alles zusammenmischen
3. Seitenfall berechnen
4. Seitenfall überarbeiten/korrigieren
5. Seitenbild zusammensetzen für den Satz (Satz III)

----- Schritte einzeln:

1a. Textspalten mit jeweiligen Apparaten so herrichten, daß jede
Texteinheit, die möglicherweise mit einer anderen korreliert
werden soll, eine Zuordnungsmarke hat (bei einander entsprechenden
Partien die gleichen Marken; aufsteigend, eventuell mit größerer
Schrittweite).

Beispiel: Drei Texte A B C, ein Apparat a unter A, zwei Apparate c
d unter C. Das Bild einer Seite oder Doppelseite sieht etwa so aus:
   A  B  C
   a     c
         d

Die einzelnen Dateien sind so organisiert:
   {A0017.0}ein Vers<a_a>Apparat dazu</a_a>
   {A0018.0}ein langer Abschnitt,<a_a>Apparat
   x</a_a> der
   Folgezeilen hat<a_a>hier ein etwas längerer
   Apparateintrag y</a_a> usw. ...
   {A0021.0}Weiterer Text (die Einheiten 19 und 20 sind
   in A nicht vertreten)

Ebenso Text B und C, letzterer mit Apparaten <a_c> und <a_d>.

Anm.: Genau genommen braucht man für jede Einheit mehr
Information; es könnte nützlich sein, sie explizit zu geben
(vieles kann man per Programm einsetzen), nämlich (a)
Satzsteuerzeichen für den Zeilenanfang (neue Zeile, Leerzeilen,
Anfang Einschaltung bzw. Überschrift), (b) Typus des Eintrags
(normaler Text, Einschaltung, Überschrift, Redeeinleitung,
ausleitende Regiebemerkung usw., was eben alles für den
Seitenumbruch relevant ist), (c) die Zuordnungsmarken und (d) am
Ende der Einheit eine Angabe "nicht austreiben", wenn eine solche
nicht schon vorhanden ist (z.B. als Einschaltungsende).

1b. Jede Textspalte setzen, wobei Zuordnungsmarken und Apparate
als Kommentar durchlaufen. (Eventuelle Schwächen des Zeilenfalls
am besten gleich in den Ausgangsdaten verbessern und den Schritt
wiederholen.) Anschließend bekommen die Zeilen Zuordnungsmarken,
die noch keine haben (das sind die Folgezeilen; im Beispiel bleibt
die Zahl vor dem Punkt gleich, die dahinter wird hinaufgezählt).

Beispiel:
   {A0017.0}ein Vers<a_a>Apparat dazu</a_a>
   {A0018.0}ein langer Ab-
   {A0018.1}schnitt,<a_a>Apparat x</a_a> der Folge-
   {A0018.2}zeilen hat<a_a>hier ein etwas längerer Apparateintrag
               [noch in der Zeile:] y</a_a> usw.
   {A0018.3}...
   {A0021.0}Weiterer Text (die Ein-
   {A0021.1}heiten 19 und 20 sind in
   {A0021.2}A nicht vertreten)

1c. Wo Apparate vorhanden sind, diese mit der Zuordnungsmarke des
Textes herausziehen, setzen wie bei 1b und die Folgezeilen
ebenfalls mit einer Zuordnungsmarke versehen, allerdings mit der
gleichen wie die Zeile davor.

Beispiel:
   {a0017.0}00_Apparat dazu
   {a0018.1}00_Apparat x
   {a0018.2}00_hier ein etwas längerer Apparat-
   {a0018.2}eintrag y

Anm.: Jede Textspalte und jeder Apparat kann spezifische
Satzbreite haben (wichtig z.B. für weitere Spaltenunterteilung
eines Apparats). - Wenn die Zuordnung der Apparateinträge zum Text
vorgegeben ist (z.B. bei Verstext), kann man den Apparat auch
einzeln wie Text aufnehmen. Die Referenz ist gleich die endgültige.

2a. Alle Dateien nach den Zuordnungsmarken zusammenmischen und die
entsprechenden Einheiten zu einem Satz zusammenfassen.

Technisch: Mischen entweder über die aus der Zuordnungsmarke
errechnete Satznummer (KOPIERE mit LIV RR s11= s12=, dann MISCHE
und KOPIERE mit ANR) oder über die Zuordnungsmarke selbst (MISCHE
und KOPIERE mit VGL: Aufsammeln der Sätze mit gleicher Marke im
Merktext).

Anm.: Zwecks Platzersparnis kann man die noch in den Textspalten
als Kommentar stehenden Apparatangaben weglassen.

Beispiel für einen Satz (hinter den Marken steht jeweils Text):
   {A0018.2} {a0018.2} {a0018.2} {C0018.2} {c0018.2} {d0018.2}
      [noch in der Zeile:] {d0018.2}

2b. Der Übersicht dient es, für Textspalten, die in einem so
entstandenen Satz nicht vertreten sind, eine leere Zeile gleichen
Typs einzufügen (im Beispiel von 2a also etwa {B0018.2}_).

3. Nun führt man selber (also vor Einsatz des Satzprogramms) eine
grobe Berechnung des Seitenumbruchs durch. Mir würde es liegen,
dies mit mehreren KOPIERE zu erledigen und viel Information
explizit darzustellen, etwa so:

3a. Zunächst werden Typen von Sätzen markiert: Ta Anfang
Textabschnitt von 1 Zeile Länge, Tb ebenso Länge 2, Tc ebenso
Länge 3, Td ebenso Länge mehr als 3, Xa vorletzte Zeile eines
Abschnitts, Xb übernächste Zeile nach Td (wenn nicht Xa), Xc jede
Zeile eines Abschnitts zwischen Xb und Xa. Damit sind die Sätze
markiert, mit denen üblicherweise neue Seiten beginnen können
(Beginn von "Umbruchseinheiten"; Verfeinerung der Typologie liegt
nahe, z.B. bezüglich Überschriften).

3b. Am Beginn jeder Umbruchseinheit wird nun eingetragen, wieviel
Platz auf der Seite sie einnimmt, und zwar nach Text und jedem
Apparat getrennt (dies im Fall einer durchgehenden Linie vor allen
Apparaten; sonst Leerzeilen im Text erst wieder mitrechnen, wenn
in der Spalte wieder Text auftritt).

Beispiel: {Tb:22;a:0;c:27;d:9}{A0018.0} ... (d.h. zu den 2
Textzeilen à 11 Punkt der Umbruchseinheit gehören 0 Zeilen
Apparat a, 3 Zeilen Apparat c à 9 Punkt [3 ergibt sich aus
dreimaligem Mal Vorkommen der Marken {c0018.0} bzw. {c0018.1} in
der Umbruchseinheit], 1 Zeile Apparat d à 9 Punkt).

3c. Bei einem weiteren Durchgang durch die Datei wird die Füllung
aufaddiert und bei Erreichen oder Überschreiten der
Seitenobergrenze eine Marke "neue Seite" eingefügt.

Technisch: Rechnen in KOPIERE. i1 sei Summe Text, i2 i3 i4 Summe
Apparat a c d; i12 i13 i14 ist der Raum vor dem gesamten Apparat a
c d auf einer Seite (i12 i13 i14 am Seitenanfang Null, bei
Vorkommen des betreffenden Apparats auf den entsprechenden Wert zu
setzen); i21 i22 i23 i24 enthalten die Werte der aktuellen
Umbruchseinheit, im Beispiel 22 0 27 9. Dann wird gerechnet:
i51=i1+i21; i52=i2+i22; i53=i3+i23; i54=i4+i24; Seitensumme
i61=i51+max(i52+i12,i53+i13+i54+i14). Wenn nun i61 über dem
Seitenfüllungsmaximum liegt, Seitenanfangsmarke plus i0
(Seitenfüllung der Seite davor) vor den Satz stellen und ihn
ausgeben, ferner rechnen i1=i21; i2=i22 usw.; i12=0; i13=0; i14=0
(eventuell raufsetzen, s.o.); andernfalls den Satz ausgeben und
rechnen i1=i51; i2=i52 usw.; i0=i61. Folgesätze einer
Umbruchseinheit werden unbesehen ausgegeben.

Anm.: Die Formel zur Seitensumme muß man dem speziellen Fall
anpassen; wenn zum Beispiel Apparat c innerhalb seiner Spalte
zweispaltig sein soll: i61=i51+max(i52+i12,(i53+9)/2+i13+i54+i14)
[für 9 besser eine Variable!].

4. Bis zu dieser Stelle braucht man in den Ablauf nicht
einzugreifen. Hier nun überblickt der Bearbeiter das vorläufige
Ergebnis und kann durch Umsetzen der Marken "neue Seite"
korrigierend eingreifen, z.B. die Seiten etwas quetschen oder im
Einzelfall gegen die (etwas zu strengen) Regeln für den
Seitenumbruch verstoßen.

5. Zuletzt wird die Seite oder Doppelseite aufgebaut. Die
Teilfelder jedes Satzes werden in verschiedene Dateien ausgegeben
und dann pro (Doppel-)seite gemischt. Dafür bieten sich drei
Verfahren an, die auch kombiniert werden können: (a) Man erzeugt
Spalten durch zeilenweises Ineinanderführen mit entsprechenden
Positionierungen in der Zeile und mit Ausschlußbefehlen; (b) man
erzeugt Spalten, die vom Satzprogramm montiert werden
(Voraussetzung: gleiche Satzbreite); (c) man gibt linke und rechte
Seiten aus und setzt sie getrennt (Vorsicht beim Seitenausgleich!).

Anm.: Bei Besonderheiten wie zweispaltigem Apparat ist noch ein
Zwischenschritt nötig, der den Apparat nach Verfahren a
herrichtet. Zu fortlaufendem Apparat s.u. - Statt der Ausgabe in
verschiedene Dateien ist bei Verfahren a und b vielleicht auch
Ausgabe in éine Datei nach Aufbewahrung der Teile in
verschiedenen Ergänzungstexten sinnvoll.

----- Allgemeines

Weil die Ausgangsdaten selten endgültig sind, braucht man eine
Ablaufvariante, welche die bei Punkt 4 hineingesteckte Handarbeit
rettet, solange die Daten nicht so anders werden, daß man besser
von vorn anfängt. Vorschlag: Nach Punkt 4 erzeugt man eine Datei,
die lediglich für jeden Satz mit der Marke "neue Seite" den
Zahlenteil einer Zuordnungsmarke enthält, gewissermaßen eine
Textspalte S, z.B. {S0021.3} ohne sonstigen Text. Wenn man diese
"Umbruchsdatei" beim nächsten Durchlauf unter 2a mit einmischt,
den Wert für die maximale Seitenfüllung bei 3c hoch setzt und bei
Vorkommen der Marke {S...} die entsprechende Neuberechnung macht,
dann ist nach 3 der alte Umbruch mit neuen Daten erreicht und man
kann mit 4 weiterfahren. Unter bestimmten Umständen, nämlich wenn
die Apparatreferenzen umbruchabhängig sind oder wenn ein Apparat
fortlaufend gesetzt wird, sollte man die Umbruchsdatei nicht erst
bei 2a einmischen, sondern schon vor 1b. Bei fortlaufendem Apparat
muß man ferner vorsehen, daß Zuordnungsmarken im Zeileninnern
berücksichtigt werden; das Ergebnis ist notwendig ungenau.

Die Aufgabe, längere Texte mehrspaltig zu setzen mit Bezügen
zwischen den Spalten, kommt öfter vor, als man denkt, und
Tustep-Anfänger sind in der Regel damit überfordert. Es wäre zu
überlegen, dafür einen variierbaren Standardablauf mit
Kodierungsvorschlägen auszutüfteln. Mit Punkt 1a müßte jeder
Anwender zurechtkommen; mit einer gewissen Geschicklichkeit dem
Einzelfall angepaßt werden müßte wohl die Seitenfüllungsformel von
3c und die Einfügung der speziellen Codes in 5; der Rest ist
überall ähnlich. Vielleicht schafft der philologische Editor die
Anpassung eines solchen Standardablaufs an seine spezifische
Aufgabe nicht ganz ohne Hilfe, er sollte aber m.E. die angepaßte
Fassung selbst anwenden; wenn es etwa bei einem Umbruchsproblem um
die erträglichste Lösung geht, sollte er unmittelbar eingreifen
können.

Ich bitte die Leser der Liste, die Länge dieses Beitrags zu
verzeihen, und bitte außerdem die, bei denen ich in einer
Ablieferungs-Schuld bin, um Verzeihung, daß ich hier ausführlich
geschrieben habe, statt Versprechungen einzulösen.

Mit freundlichen Grüßen, Paul Sappler

========================================================================
tustep-liste at itug.de


Mehr Informationen über die Mailingliste Tustep-Liste