[Tustep-Liste] Absatzmarkierung

Michael Trauth trauth at uni-trier.de
Di Okt 28 18:04:26 CET 2003


Liebe TUSTEP-Anhaenger,

auf die Frage von Peter Stahl

> > Wie könnte ich zu Beginn aller Zeilen,
> > die auf eine Textzeile mit weniger als 40 Zeichen folgen,
> > eine Markierung wie z.B. <p> eintragen. Hat jemand eine
> > passende #Kopiere-Idee dazu?

hat Herr Schaelkle folgende bemerkenswerte Loesung
vorgeschlagen:

> #ko,quelle,ziel,,+,*
> erg       /<p>/
> rr        if (h0.ge.40) s14=3; h0=s0
> *eof

Ich war von dieser (praechtig funktionierenden) Loesung ganz
entzueckt, zumal ich vermutlich nie im Leben auf sie verfal-
len waere. Zwei Zeilen fuer diese Programmleistung - Respekt!
Aber mal ganz ehrlich: Wer hat sie auf Anhieb, wer hat sie
sie nach laengerem Blaettern im Handbuch - und wer hat sie
ueberhaupt nicht verstanden?
  Ich habe ein bisschen drueber nachgedacht und mir eine
Loesung zurechtgelegt, von der ich dachte, dass sie fuer
den lernenden Adepten spontan ein wenig transparenter sei.
Sie ist wegen der Kommentarzeilen wesentlich groesser als
die Version von Herrn Schaelkle, hat aber in ihrem Kern nur
zwei KO-Zeilen mehr:

-------------------------------------------------------
#-
#-  Das folgende Kopiere prueft jeden Satz, ob er
#-  kuerzer als 40 Zeichen ist. Wenn ja, merkt es
#-  sich diesen Umstand bis zum folgenden Satz, in-
#-  dem es ein Signal (einen 'Wahlschalter') setzt.
#-  In Abhaengigkeit davon, ob dieser Wahlschalter
#-  gesetzt ist, wird '<p>' am Beginn des folgenden
#-  Satzes ergaenzt oder nicht.
#-
#ko,quelle,ziel,,+,*
        * Wenn der Wahlschalter 1 gesetzt ist, war
        * die Zeile davor kuerzer als 40 Zeichen. Dann
        * soll Sprung in den zweiten Durchgang erfolgen,
        * wo '<p>' eingesetzt wird.
ws+   1   1
        * ... andernfalls soll der Wahlschalter 1
        * gesetzt werden, wenn der Text der aktuel-
        * len Zeile (= S0) kuerzer als 40 Zeichen ist.
        * Danach jedenfalls Ausgabe des Satzes in die
        * Zieldatei (durch Sprung nach 3):
rr    1   if (s0.lt.40) ws1=1; goto 3;
        * Einfuegen von '<p>':
erg   2   |<p>|
        * ... danach Loeschen des Wahlschalters und
        * erneute Pruefung, ob S0 kleiner als 40 (jetzt,
        *  mit '<p>' davor, natuerlich kleiner als 43)
        * Zeichen ist:
rr    2   ws1=0; if (s0.lt.43) ws1=1;
*eof
---------------------------------------------------------

Und jetzt steh' ich armer Tor vor diesem Gebilde und
frage mich allen Ernstes, ob sich der Aufwand gelohnt
hat: Ist DAS nun WIRKLICH leichter zu verstehen, und
wenn ja, ist das nur ein Verdienst der Kommentare?
Inzwischen glaube ich es fast nicht mehr... Aber eine
Antwort auf die Frage waere mir (und vielleicht nicht
nur mir) bei der Konzeption Kopiere-didaktischer Bemue-
hungen von Wert.

Fuer kritische Rueckmeldungen, evtl. auch Vorschlaege
zu ueberzeugenderen, leichter zu verstehenden Loesungen,
waere dankbar

Ihr Michael Trauth


---------------------------------------------------------------
Dr. Michael Trauth                  e-mail: trauth at uni-trier.de
Rechenzentrum                       office: Tel. 0651-201-3413
der Universitaet                            Fax  0651-201-3921
Universitaetsring                secretary: Tel. 0651-201-3417
D-54286 Trier
---------------------------------------------------------------


Mehr Informationen über die Mailingliste Tustep-Liste