<html>
<head>
<meta content="text/html; charset=windows-1252"
http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<font face="Courier New">Liebe Liste,<br>
<br>
auf die Gefahr hin, pedantisch zu langweilen, erlaube ich mir, die
#KOPIERE-Lösung dieses kleinen Problems noch einmal zu verbessern,
und zwar weil die folgende Version wie jene von Herrn Kollatz auch
mit mehrfach aufeinanderfolgenden Leerzeilen sowie Leerzeilen am
Dateiende (diese ignorierend) fertig wird:<br>
<br>
#ko,sb,sc,,+,*<br>
rr 1 if(s0.eq.0) then; i0=1; goto 0; else; if (i0.eq.0) goto
3; i0=0; endif;<br>
erg 2 |<p>|<br>
*eof<br>
<br>
In der Rechenanweisung sind die Bedingungen wie folgt
geschachtelt:<br>
<br>
if(s0.eq.0) then; # Wenn Leerzeile, dann: #<br>
i0=1; goto 0; # 'Wahlschalter'-Variable = 1 setzen,
Leerzeile wegwerfen; #<br>
else; # sonst: #<br>
if(i0.eq.0)goto 3; # wenn 'Wahlschalter' = 0, Zeile
ausgeben; #<br>
i0=0; # sonst 'Wahlschalter' = 0 setzen (und
im 2. Durchgang weitermachen) #<br>
endif;<br>
<br>
Herzliche Grüße,<br>
Niels Bohnert<br>
<br>
<br>
</font>
<div class="moz-cite-prefix">On 29.04.2016 12:26, Niels Bohnert
wrote:<br>
</div>
<blockquote cite="mid:530539f4-1e03-2c26-aab4-e61bc0f7a0e3@gmx.de"
type="cite">
<pre wrap="">Diskussionsforum Tustep-Liste
Weitere Informationen: <a class="moz-txt-link-abbreviated" href="http://www.itug.de">www.itug.de</a>
------------------------------------------------------------
</pre>
<br>
<fieldset class="mimeAttachmentHeader"></fieldset>
<br>
<meta content="text/html; charset=windows-1252"
http-equiv="Content-Type">
<font face="Courier New">Liebe Liste,<br>
<br>
eine mögliche Vereinfachung von Herrn Kollatz' Vorschlag wäre
folgende:</font><font face="Courier New"><font face="Courier
New"> Wenn eine Leerzeile eingelesen wird, wird gleich die
nächste Zeile eingelesen, <p> davorgesetzt und dann
geschrieben. Sonst wird einfach nur geschrieben. Siehe unten.<br>
<br>
Die 'old school'-Variante könnte man dem annähern und so die
zuvor benötigte LZU-Karte einsparen:<br>
#ko,sb,sc,,+,*<br>
ws+ 1 1<br>
rr 1 if(s0.eq.0) then; WS1=1; goto 0; else; goto 3;
endif;<br>
wsl 2 1<br>
erg 2 |<p>|<br>
*eof<br>
<br>
</font>Herzliche Grüße,<br>
Niels Bohnert<br>
<br>
<br>
$$ MODE TUSCRIPT,{}<br>
quelle="a", ziel="b"<br>
<br>
ERROR/STOP CREATE (quelle,seq-e,-std-)<br>
ERROR/STOP CREATE (ziel,seq-e,-std-)<br>
<br>
MODE DATA<br>
$$ daten=*<br>
zeile1<br>
zeile2<br>
<br>
zeile3<br>
zeile4<br>
zeile5<br>
<br>
zeile6<br>
zeile7<br>
$$ MODE TUSCRIPT<br>
<br>
FILE/ERASE $quelle =daten<br>
<br>
ACCESS q: READ/RECORDS $quelle s.z/u,zeile<br>
ACCESS z: WRITE/RECORDS $ziel s.z/u,zeile<br>
LOOP<br>
READ/NEXT/EXIT q<br>
IF (zeile=="") THEN<br>
READ/NEXT/EXIT q<br>
zeile=CONCAT("<p>",zeile)<br>
ENDIF<br>
WRITE z<br>
ENDLOOP<br>
ENDACCESS/PRINT q<br>
ENDACCESS/PRINT z<br>
<br>
<br>
</font><br>
<div class="moz-cite-prefix">On 29.04.2016 10:46, Thomas Kollatz
wrote:<br>
</div>
<blockquote
cite="mid:09E642F8-2545-4264-9685-80270C4EA924@steinheim-institut.org"
type="cite">
<pre wrap="">Diskussionsforum Tustep-Liste
Weitere Informationen: <a moz-do-not-send="true" class="moz-txt-link-abbreviated" href="http://www.itug.de">www.itug.de</a>
------------------------------------------------------------
Liebe Liste, liebe Alten, liebe Jungen,
auch wenn ausdrücklich nach einer Old School Lösung gefragt wurde, geht das natürlich auch ohne Sprünge und New School und könnte etwa so aussehen. Geht sicher noch eleganter, aber so ist es vermutlich am verständlichsten.
Wenn eine Leerzeile eingelesen wird, wird nicht geschrieben (CYCLE), dafür eine Variable (p_vor_zeile) mit dem <p>-Tag belegt,
sonst wird geschrieben (WRITE) und die Variable mit dem Tag mit dem Inhalt der Zeile verbunden (concat), nach dem Schreiben wird diese Variable wieder geleert.
Herzliche Grüße
Thomas Kollatz
——>
$$ MODE TUSCRIPT,{}
quelle="a", ziel="b"
ERROR/STOP CREATE (quelle,seq-e,-std-)
ERROR/STOP CREATE (ziel,seq-e,-std-)
MODE DATA
$$ daten=*
zeile1
zeile2
zeile3
zeile4
zeile5
zeile6
zeile7
$$ MODE TUSCRIPT
FILE/ERASE $quelle =daten
p_vor_zeile=""
ACCESS q: READ/RECORDS $quelle s.z/u,zeile
ACCESS z: WRITE/RECORDS $ziel s.z/u,zeile
LOOP
READ/NEXT/EXIT q
IF (zeile=="") THEN
p_vor_zeile="<p>"
CYCLE
ELSE
zeile=CONCAT (p_vor_zeile,zeile)
WRITE z
p_vor_zeile=""
ENDIF
ENDLOOP
ENDACCESS/PRINT q
ENDACCESS/PRINT z
------------------------------------------------------------
<a moz-do-not-send="true" class="moz-txt-link-abbreviated" href="mailto:Tustep-Liste@itug.de">Tustep-Liste@itug.de</a>
<a moz-do-not-send="true" class="moz-txt-link-freetext" href="https://lists.uni-wuerzburg.de/mailman/listinfo/tustep-liste">https://lists.uni-wuerzburg.de/mailman/listinfo/tustep-liste</a></pre>
</blockquote>
<br>
<pre class="moz-signature" cols="72">--
Dr. Niels Bohnert
Mittelhochdeutsches Wörterbuch
Arbeitsstelle der Akademie der Wissenschaften
und der Literatur Mainz
Universität Trier
54286 Trier | DM 339 | Tel. 0651 / 201-2320</pre>
<br>
<fieldset class="mimeAttachmentHeader"></fieldset>
<br>
<pre wrap="">
------------------------------------------------------------
<a class="moz-txt-link-abbreviated" href="mailto:Tustep-Liste@itug.de">Tustep-Liste@itug.de</a>
<a class="moz-txt-link-freetext" href="https://lists.uni-wuerzburg.de/mailman/listinfo/tustep-liste">https://lists.uni-wuerzburg.de/mailman/listinfo/tustep-liste</a></pre>
</blockquote>
<br>
<pre class="moz-signature" cols="72">--
Dr. Niels Bohnert
Mittelhochdeutsches Wörterbuch
Arbeitsstelle der Akademie der Wissenschaften
und der Literatur Mainz
Universität Trier
54286 Trier | DM 339 | Tel. 0651 / 201-2320</pre>
</body>
</html>