[Tustep-Liste] LNR etc. Beispiel1 Apparate nummerieren
Thomas Kollatz
kol at steinheim-institut.org
Fr Aug 29 11:04:14 CEST 2008
Lieber Herr Moser, liebe Tustep-Gemeinde,
sie haben zwar ausdrücklich nach einer #ko-Lösung gefragt,
aber es ist natürlich auch möglich ihre Fragestellung mit TUSTEP
Skripten zu lösen.
Ich habe im Folgenden die schönen Beispiele von Michael Trauth
übernommen (ohne [0])
Wer das mal ausprobieren möchte kann einfach das folgende ab ----->
kopieren,
dann mit der Anweisung 'ez1' in eine Tustepdatei übertragen und
aus dem Editor heraus mit
x #t,<editor>
durchlaufen lassen.
Das Ergebnis steht anschliessend in der Datei 'hi2'
Um die Unterschiede zwischen quelle und ziel zu sehen, habe ich ein
#ve
nachgeschoben.
Wer sehen will wie die Variabeln jeweils belegt werden,
der kann einfach ins Skript ein TRACE einbauen:
TRACE +taganf
zeigt bspw. die Belegung dieser Variable
TRACE +taganf,text
zeigt zusätzlich wie der 'text' eingelesen und in die Zieldatei
geschrieben wird,
usw.
Das SCRIPT zum verwandeln von Fuss in Endnoten schicke ich in einer
Extramail
Herzliche Grüße
THOMAS KOLLATZ
------>
#- Hilfsdateien
#da,beispiel1'hi1,fr=-
#- Aufgabe:
#- Apparateinträge abschnittsweise nummerieren
#- Beispieltext:
#um,*,beispiel1,lo=+
<brief>
Text Text Text Text Text <a1>App App </a1> Text
Text Text <a1>App App </a1> Text Text Text Text
Text Text Text Text Text <a1>App App </a1> Text
Text <a1>App </a1> Text Text <a1>App </a1> Text
Text Text Text Text Text <a1>App App </a1> Text
</brief>
<brief>
Text Text Text Text Text <a1>App App </a1> Text
Text Text <a1>App App </a1> Text Text Text Text
Text Text Text Text Text <a1>App App </a1> Text
Text <a1>App </a1> Text Text <a1>App </a1> Text
Text Text Text Text Text <a1>App App </a1> Text
</brief>
<brief>
Text Text Text Text Text <a1>App App </a1> Text
Text Text <a1>App App </a1> Text Text Text Text
Text Text Text Text Text <a1>App App </a1> Text
Text <a1>App </a1> Text Text <a1>App </a1> Text
Text Text Text Text Text <a1>App App </a1> Text
</brief>
*eof
#ma
$$! quelle=beispiel1,ziel=hi1,zaehler=0
$$ MODE TUSCRIPT
ACCESS q: READ/STREAM/RECORDS $quelle ...
sn.zn/u, taganf + text + tagend
ACCESS z: WRITE/ERASE/STREAM $ziel ...
sn.zn/u, taganf + text + tagend
LOOP/9999
READ/EXIT q
SELECT taganf
CASE "<brief>"
- Wert der Variable 'zähler' nach <brief>-Tag: 0
SET zaehler=0
CASE "<a1>"
- Nach jedem <a1> Zähler um 1 erhöhen;
SET zaehler=zaehler+1
- <a1> mit der lfd. Nr. des Zählers (in []) verbinden;
IF (taganf=="<a1>") SET taganf=CONCAT (taganf,"[",zaehler,"] ")
ENDSELECT
- Zieldatei schreiben
WRITE z
ENDLOOP
ENDACCESS/PRINT q
ENDACCESS/PRINT z
*EOF
#- Kontrolle:
#ve,beispiel1,hi1,z,,,,+
Mehr Informationen über die Mailingliste Tustep-Liste