[Tustep-Liste] Apparat-Behandlung, AUMBRUCH

Paul Sappler paul.sappler at uni-tuebingen.de
Di Mär 20 11:00:56 CET 2007


Lieber Herr Trauth,
über dem spannenden Spiel drei-vorn-drei-hinten (Sudoku) ist das  
Problem von Herrn Brunschön ganz in Vergessenheit geraten, einen  
Apparateintrag vom Typ von-bis auf eine Textstrecke zu beziehen, die  
nicht schon auf der nächsten Seite endet; er hat sich gewünscht, daß  
ein modifiziertes *aumbruch das bewältigt.

Herr Ott hat zu Recht darauf hingewiesen, daß der Systemcharakter von  
Tustep es oft erlaube, auf einem Umweg zu einer Lösung zu kommen, d.h.  
hier, "auch wenn es unbequem erscheint, außer AUMBRUCH weitere  
Hilfsmittel zu bemühen (z.B. #kopiere, #nummeriere, #einfuege)".

Aber auch Sie haben mit Ihrer Antwort recht: "Das hat was  
Entmutigendes"; man darf Ihnen dankbar sein für Ihr Angebot, eine  
Lücke durch Verallgemeinerung eines vorhandenen Programms von Ihnen zu  
schließen. Das ist keine kleine Aufgabe; jeder von uns weiß, daß man  
die Zeit gern verschweigt, die man braucht, um so eine Black box  
sauber zu gestalten und gegen unerwartete oder fehlerhafte Daten  
abzusichern.

Wenn ich zu Ihrem Angebot Überlegungen äußere, möchte ich auf gar  
keinen Fall Sie oder sonst jemand hindern, sich entschlossen an die  
Tastatur zu setzen. Ich fände es nur gut, wenn auch sonstige Wünsche  
an die in Tustep vorgesehene Apparatbehandlung gesammelt würden und  
wenn Ihre Lösung nach Möglichkeit nicht zu einem noch zu bestimmenden  
allgemeineren Rahmen quer stünde.

Die Bewältigung von Apparaten macht immer noch viel aus für die  
Attraktivität des Tustep-Satzprogramms. Es haben sich aber im Lauf der  
Zeit einige Schwächen herausgestellt, die man auf längere Sicht doch  
wohl angehen muß, wie auch immer: durch Verallgemeinerung von  
Benutzerprogrammen (soweit das möglich ist) oder durch die Erneuerung  
von Standardprogrammen. Was will man, wie könnte ein Konzept aussehen?

1. Die Ausgangsfrage war: Apparat-Bezugs-Ende erst nach der nächsten Seite.
2. Damit verbunden: die Tiefe der Verschachtelung von  
Apparateinträgen; was tun, wenn sich Von-Bis-Apparateinträge in  
größerer Zahl überlappen?
3. Mitbedacht werden sollte die von verschiedenen vorgebrachte  
Forderung, der Apparat sollte sich auf eine Zeilenzählung beziehen  
können, die nicht an Seiten orientiert ist, sondern an anderen  
Gliederungseinheiten des Textes wie Briefen, Urkunden, Predigten usw.
4. Eine Hürde ist auch die Längenbeschränkung der Apparateinträge.
5. Die Berechnung des Platzbedarfs für die Apparate im ersten  
Satzdurchlauf ist genügend genau für glatten Text, aber recht ungenau  
bei komplizierterer Kodierung.
6. Wenn man in den Zeilen- und Seitenumbruch des Textes (erstes  
Setzen) und den Zeilenumbruch der Apparate (zweites Setzen) in  
Handarbeit eingegriffen hat, möchte man diese Arbeit gern retten in  
eine Datei, die als Quelle für einen weiteren Durchlauf dienen kann  
und in der man so etwas wie &!n und &!u eintragen kann, d.h. den  
Umbruch an bestimmten kritischen Stellen steuern und darüberhinaus  
abwechselnd freigeben und in seiner Fixierung belassen.
7. Gelegentlich steht man vor einer der Aufgaben: zweispaltiger  
Apparat (weiterlaufend) zu einspaltigem Text, einspaltiger Apparat zu  
zweispaltigem Text (weiterlaufend oder korrespondierend) und ähnlichem.

Andere aus der Runde haben andere Probleme. Sie sind gebeten, den  
Katalog zu erweitern und zu kommentieren.

Vorläufig Bemerkungen zu einzelnen dieser Punkte:
zu 1: Das läuft wohl auf ein Lesen der Ziel- oder Protokolldatei des  
ersten Satzlaufs von hinten nach vorn hinaus, wobei auch jede Zeile  
von hinten nach vorn bearbeitet werden muß. MAKRO mit DICTIONARY und  
SUBSTITUTE? Mit EINFUEGE eher nicht; dort müßten wohl in einem ersten  
Schritt alle Überlappungen vereindeutigt werden.
zu 2: Ich rätsle seit Freitag über Ihrer Zahl 18. Logisch läuft es doch so:
txt<ap5x id="xy">app_eintr</ap5x>txt ... <ap5xbez_ende id="xy"/>
So nicht nur für Apparat 5, sondern für alle Apparate 1-9. Es käme  
darauf an, welche Einschränkungen man für xy vorsieht, ein einziger  
Buchstabe oder Buchstabe+Ziffer oder zwei Buchstaben oder freier Text  
von beliebiger Länge usw. Vermutlich wäre es günstig, das xy mehrfach  
pro Texteinheit zu erlauben, also dann durchaus wieder, wenn die  
Klammer Apparat - Bezugsende für ein xy pro Apparat geschlossen ist.  
Mehrere Apparateinträge mit identischem Bezugsende sollte man  
verbieten, weil zu unübersichtlich. Der Zwang zur Paarigkeit macht  
Fehler wie das ganz vergessene Bezugsende beherrschbar.
zu 1 und 2: In dem skizzierten Verfahren trägt man am Apparatanfang  
die Bis-Werte ein. Leider kann man danach die Referenz-Behandlung von  
*aumbruch nicht mehr nutzen, weil eben diese Werte dem Programm für  
jede Art von Zusammenfassung nicht bekannt sind. Das bedeutet, man  
kümmert sich selbst um
- Apparateintrag hinter getrenntem Wort (womöglich inclusive Seitenwechsel)
- 3-3
- 4 4 (also Bezug auf die gleiche Textzeile)
- 5f.
- 6-9 6-9
- 7 7-11 7 7-13 7
Man verwendet *aumbruch also nur noch für das Umstellen der  
Apparateinträge an den Seitenfuß.
zu 3) Nur in Stichworten die Probleme: selbstgebastelte Zeilenzählung  
am Seitenrand mittels Marginalien recht unhandlich, vor allem im  
Verhältnis zu Blanks innerhalb der Textzeile und zu  
Zeilenanfangssteuerzeichen; Einfügen des Apparatrests, der zu einer  
auslaufenden Texteinheit gehört, mitten auf der Seite ist beschwerlich.
zu 4) Mir ist bewußt, daß man vereinzelte Ausreißer in den Griff  
bekommt, indem man den betreffenden Apparat wie Fußnoten behandelt.
Zu 5 und 6 bei anderer Gelegenheit. Wie haben ja schon öfters darüber  
gesprochen.

Lieber Herr Trauth, kein Zögern!
Herzlich
Ihr Paul Sappler

Hier doch noch ein (etwas unrunder) Beitrag zum  
drei-vorn-drei-hinten-Spiel (mich wundert's, daß die  
xx/austausche-Fraktion sich noch nicht gemeldet hat, oder habe ich es  
übersehen? Bewunderung jedenfalls für Herrn Schälkles Engagement)
> [nb]=<%>< <>
<[ww]=;<>>[nb];
a,,,;<[ww] <[ww] <[ww] <><% <[ww] <[ww] <[ww]<>;;>=(1-6)...>=(8-13);



Mehr Informationen über die Mailingliste Tustep-Liste