[Tustep-Liste] Zweisprachige Edition auf gegenüberliegenden Seiten

Urs Leo Gantenbein ursleo.gantenbein at paracelsus-project.org
Di Okt 26 15:19:51 CEST 2021


Liebe Leserinnen und Leser der TUSTEP-Liste,

mittlerweile ist es mir gelungen, meinen angedachten Lösungsweg 
erfolgreich umzusetzen. Das Resultat finden Sie im angefügten pdf. Ich 
bin wie folgt vorgegangen:

1) Aufgabenstellung: Der lateinische Editionstext n2a08a.tf und seine 
deutsche Übersetzung n2a08b.tf sollen auf gegenüberliegenden Buchseiten 
gesetzt werden. Beide Texte enthalten Apparate. Die ersten bzw. die 
letzten Zeilen der gegenüberliegenden Seiten sollen inhaltlich etwa zur 
Hälfe übereinstimmen. So können Text und Übersetzung bequem miteinander 
verglichen werden.

2) Es werden zwei TUE-Dateien bzw. Makrodateien benötigt. Die erste 
unterstützt den fortlaufenden manuellen Seitenumbruch, die zweite setzt 
die beiden Texte zu einer Ghostscript- bzw. pdf-Datei zusammen. Für den 
Seitenumbruch werden folgende Makros definiert, die entweder NACH oder 
IN einem Absatz auf die nächste rechte bzw. linke Seite umschalten:

mac       <npl/>&&&l&&&{
mac       <npr/>&&&r&&&{
mac       <npal/>&&l&&{
mac       <npar/>&&r&&{


3)  Getrenntes Setzen der beiden Texte:

Die erste Makrodatei ist wie folgt aufgebaut. Die Funktion der spitzen 
Klammern wird den eckigen Klammern zugewiesen, das sich sonst bei der 
Satzroutine Schwierigkeiten mit den spitzen Klammern der Makros ergeben.

#- MANUELLER UMBRUCH DER BEIDEN TEXTE
#- ==================================

#makro
$$= []

#- Definition der Variablen
#- ------------------------

#- Wurzelname der Dateien
$$ root = "n2a08"

#- Erste und letzte Seite im Zieltext
$$ s1 = 1
$$ define s1
$$ s998 = 34
$$ define s998

#- Eingabe- und Ausgabedateien
$$ QUELLE1 = concat(root,"a.tf")
$$ define QUELLE1
$$ QUELLE2 = concat(root,"b.tf")
$$ define QUELLE2
$$ PS1 = concat(root,"a.ps")
$$ define PS1
$$ PS2 = concat(root,"b.ps")
$$ define PS2
$$ PDF1BF = concat(root,"a_BF.pdf")
$$ define PDF1BF
$$ PDF2BF = concat(root,"b_BF.pdf")
$$ define PDF2BF

#da,[QUELLE1]'[QUELLE2],seq-ap
#da,[PS1],[PS2]'[PDF1BF]'[PDF2BF],fdf-ap

#- Satz des lateinischen a-Textes
#- ------------------------------
#- Durchführen der Satzroutine, sei es ohne oder mit Fußnoten und Apparaten
#- dabei wird aus [QUELLE1] der gesetzte Text [PS1] erzeugt und angezeigt

#*ps2pdf,[PS1],[PDF1BF],br=415,ho=615
#*zepdf,[PDF1BF]

#- Satz des deutschen b-Textes
#- ---------------------------
#- analog Durchführen der Satzroutine
#- dabei wird aus [QUELLE2] der gesetzte Text [PS2] erzeugt und angezeigt

#*ps2pdf,[PS2],[PDF2BF],br=415,ho=615
#*zepdf,[PDF2BF]


$$= <>
*eof

4) Setzen der manuellen Seitenumbrüche:

Nach dem ersten Durchgang dieser Routine wird die erste Doppelseite 
verglichen. Die letzten Zeilen sollen möglichst übereinstimmen. Bei 
meinen Texten drängt sich ein Seitenumbruch auf nach "Vix enim" links 
und "alle Völker. Denn" rechts. Somit füge ich in die Quelltexte 
folgende Makros ein:
(Seite 2)   ... Vix enim <npal/>    |   (Seite 3)    ... alle Völker. 
Denn <npar/>

Die obige Satzroutine wird nach dieser Modifikation nochmals 
durchgeführt. Im linken lateinischen Text ist danach die S. 3 leer, im 
rechten deutschen Text ist die S. 4 leer. Nun werden die S. 4 rechts und 
die S. 5 links miteinander verglichen.

Hier muss nun der Seitenumbruch nach Absatzenden erfolgen:
(Seite 4)   ...  ante horum omnium procreationem.</p> <npl/>  |  (Seite 
5)   ... bevor noch alles ins Sein gekommen ist.</p> <npr/>

Dieser Vorgang wird für alle Doppelseiten wiederholt, bis alle Seiten 
der beiden Texte passend umgebrochen sind.

In den Seitenumbruch kann auch eine Trennung einbezogen werden, z.B.   
er- <npal/> gastulo.
Allerdings kann dann im Endresulat nicht mehr nach dem Ausdruck 
"ergastulo" gesucht werden.


5) Montage der Seiten:

Nach dem obigen Procedere sind beim rechten lateinischen Text in der 
Datei [GS1] alle ungeraden Seiten leer und beim linken deutschen Text 
[GS2] alle geraden Seiten. Die Seiten der beiden Texte werden nun mit 
#*psauswahl ausgeschnitten und mit #*psmont montiert. Zweckmäßigerweise 
wird dazu eine Schleife verwendet. Die zweite TUE-Datei bzw. Makro ist 
wie folgt aufgebaut:

#- AUSSCHNEIDEN UND MONTAGE DER SEITEN
#- ===================================

#makro
$$= []

#- Definition der Variablen
#- ------------------------

#- Wurzelname der Dateien
$$ root = "n2a08"

#- Erste und letzte Seite im Zieltext
$$ s1 = 1
$$ define s1
$$ s998 = 34
$$ define s998

#- Eingabe- und Ausgabedateien
$$ QUELLE1 = concat(root,"a.tf")
$$ define QUELLE1
$$ QUELLE2 = concat(root,"b.tf")
$$ define QUELLE2
$$ PS1 = concat(root,"a.ps")
$$ define PS1
$$ PS2 = concat(root,"b.ps")
$$ define PS2
$$ PDF1BF = concat(root,"a_BF.pdf")
$$ define PDF1BF
$$ PDF2BF = concat(root,"b_BF.pdf")
$$ define PDF2BF

#- Ziel- und Hilfsdateien für die Montage
$$ PS = concat(root,".ps")
$$ define PS
$$ P = concat(root,"_p.ps")
$$ define P
$$ PDFBF = concat(root,"_BF.pdf")
$$ define PDFBF

#da,[QUELLE1]'[QUELLE2],seq-ap
#da,[PS]'[PS1],[PS2]'[PDFBF]'[PDF1BF]'[PDF2BF]'[P],fdf-ap

#- Satz des lateinischen a-Textes
#- ------------------------------
#- Durchführen der Satzroutine
#- [QUELLE1] ---> [PS1]

#- Satz des deutschen b-Textes
#- ---------------------------
#- Durchführen der Satzroutine
#- [QUELLE2] ---> [PS2]


#- Titelseite (ungerade, rechts) als Ausgangsseite
#-------------------------------------------------
#*psauswahl,[PS1],[PS],lo=+,*
[s1]
*eof*

$$ s2 = s1+1
$$ s996 = s998-2

#- Loop über die geraden Seiten
#------------------------------
$$ loop sg = s2 to s996 step 2

#- gerade Seite anhängen
$$ define sg
#*psauswahl,[PS1],[P],lo=+,*
[sg]
*eof*
#*psmont,[PS]'[P],[PS],lo=+

#- ungerade Seite anhängen
$$ su = sg+1
$$ define su
#*psauswahl,[PS2],[P],lo=+,*
[su]
*eof*
#*psmont,[PS]'[P],[PS],lo=+

$$ endloop

#- Letzte gerade Seite leer
#--------------------------
#*psauswahl,[PS1],[P],lo=+,*
[s998]
*eof*
#*psmont,[PS]'[P],[PS],lo=+


#*ps2pdf,[PS],[PDFBF],br=415,ho=615
#*zepdf, [PDFBF]

$$= <>
*eof


Das war's. Für kleinere Korrekturen und Änderungen braucht man nur noch 
die zweite Routine. Ich lernte mit diesem Programm, wie man TUSTEP- und 
TUSCRIPT-Befehle mischen kann.

Viele Grüße,

Urs Leo Gantenbein


Am 12.10.2021 um 16:13 schrieb Urs Leo Gantenbein:
> Liebe Leserinnen und Leser der TUSTEP-Liste,
>
> meine Edition wird einige lateinische Texte enthalten, denen eine 
> deutsche Übersetzung beigegeben wird (mit je ein bis zwei Apparaten). 
> Dabei soll der lateinische Text jeweils auf den linken geraden Seiten 
> stehen mit der entsprechenden Übersetzung auf den ungeraden Seiten. 
> Die links und rechts stehenden Textteile sollen sich inhaltlich 
> möglichst entsprechen.
>
> Gibt es in TUSTEP eine Möglichkeit, um dies mit nicht allzu viel 
> "Handarbeit" zu bewerkstelligen?
>
> Ich stelle mir Folgendes Vorgehen vor:
>
> 1) Der Text und die Übersetzung werden separat gesetzt.
>
> 2) Die beiden Teile werden dann miteinander verglichen und an 
> entsprechenden Stellen sog. Seitenwechsel im Abschnitt 
> (TUSTEP-Handbuch 2020, S. 1202) eingesetzt, das heißt, beim 
> lateinischen Text eine neue linke Seite &&L&&{ und bei der Übersetzung 
> eine neue rechte Seite $$R$${. Vermutlich wird dies nicht ohne einigen 
> Trial and Error gehen.
>
> 3) Die fertigen linken und rechten Seiten werden einzeln 
> ausgeschnitten bzw. mit *PSAUS separat erstellt und dann z.B. mit 
> *PSMONT oder in anderer Weise zusammengesetzt.
>
> Gibt es eine andere Möglichkeit? Vielen Dank zum voraus für Anregungen.
>
> Herzliche Grüße
>
> Urs Leo Gantenbein
>
> -- 
> *Urs Leo Gantenbein, Dr. med. M. Sc. ETH*
> Project Leader of the Zurich Paracelsus Project, University of Zurich
> Ackeretstrasse 16, CH-8400 Winterthur, SWITZERLAND
> www.paracelsus.uzh.ch <https://www.paracelsus.uzh.ch/>
>
> Research Affiliate:
> Paleopathology and Mummy Studies Group
> Institute of Evolutionary Medicine, University of Zurich
> www.iem.uzh.ch <https://www.iem.uzh.ch/>
> Institute of Swiss Reformation History, University of Zurich
> www.irg.uzh.ch <https://www.irg.uzh.ch/>
>

-- 
*Urs Leo Gantenbein, Dr. med. M. Sc. ETH*
Project Leader of the Zurich Paracelsus Project, University of Zurich
Ackeretstrasse 16, CH-8400 Winterthur, SWITZERLAND
www.paracelsus.uzh.ch <https://www.paracelsus.uzh.ch/>

Research Affiliate:
Paleopathology and Mummy Studies Group
Institute of Evolutionary Medicine, University of Zurich
www.iem.uzh.ch <https://www.iem.uzh.ch/>
Institute of Swiss Reformation History, University of Zurich
www.irg.uzh.ch <https://www.irg.uzh.ch/>
-------------- nächster Teil --------------
Ein Dateianhang mit HTML-Daten wurde abgetrennt...
URL: <http://lists.itug.de/pipermail/tustep-liste/attachments/20211026/ff5e08d3/attachment-0001.htm>
-------------- nächster Teil --------------
Ein Dateianhang mit Binärdaten wurde abgetrennt...
Dateiname   : n2a08a.tf
Dateityp    : application/octet-stream
Dateigröße  : 63488 bytes
Beschreibung: nicht verfügbar
URL         : <http://lists.itug.de/pipermail/tustep-liste/attachments/20211026/ff5e08d3/attachment-0002.obj>
-------------- nächster Teil --------------
Ein Dateianhang mit Binärdaten wurde abgetrennt...
Dateiname   : n2a08b.tf
Dateityp    : application/octet-stream
Dateigröße  : 57344 bytes
Beschreibung: nicht verfügbar
URL         : <http://lists.itug.de/pipermail/tustep-liste/attachments/20211026/ff5e08d3/attachment-0003.obj>
-------------- nächster Teil --------------
Ein Dateianhang mit Binärdaten wurde abgetrennt...
Dateiname   : n2a08_bf.pdf
Dateityp    : application/pdf
Dateigröße  : 137225 bytes
Beschreibung: nicht verfügbar
URL         : <http://lists.itug.de/pipermail/tustep-liste/attachments/20211026/ff5e08d3/attachment-0001.pdf>


Mehr Informationen über die Mailingliste Tustep-Liste