[Tustep-Liste] Endtags richtig zuordnen und auflösen
Wilhelm Ott
wilhelm.ott at zdv.uni-tuebingen.de
Do Jun 9 16:19:25 CEST 2005
Lieber Herr Brunschön,
nach dem "knackigen Kopiere" von Herrn Trauth
und der eleganten Lösung mit Kommandomakros von Herrn Schälkle
hier noch eine dritte Lösung, die viel weniger elegant ist,
aber vielleicht zum Anregen der Phantasie beim Suchen
nach Lösungswegen (hier macht sich der langjährige
TUSTEP-Kursleiter bemerkbar) geeignet ist:
In einem ersten Schritt wird mit #KOPIERE eine Datei erstellt, in
der zu jedem </a> der zugehörige (nämlich zuletzt davor in <aXXX>
benutzte) Tag-Name steht; diese Datei wird dann als Kürzel-Datei
für ein #EINFUEGE mit MODUS=PARALLEL benutzt, das der Reihe nach
alle </a> ersetzt.
-----------------------------
#da,z'k,fr=-
#----- Kürzel-Datei erstellen:
#ko,q,k,,+,*
Text bei <<a und <</a sowie bei >> unterteilen;
bei <<a (--> 17): Tag "<aXXX" an den Merktext anhängen
bei <</a <--> 29): letztes Tag "<aXXX" aus dem Merktext holen,
(--> 22) "</a XXX" draus machen, (--> 13) ausgeben,
(--> 39, --> 32, -->27) Merktext um letztes Tag verkürzen
Text, der anders beginnt, ignorieren (--> 12, --> 10)
gtu ~<<a~<</a~>>~
ken ~<<a~<</a~
ksp 17 29
mtd 1
sp2 10 13 27
sp3 39
sp7 10 10
letztes gemerktes Tag umbauen (und ausgeben):
ak1 2 ~<<~
aei 2 3
xx 2 ~<<a~<</a ~>>~~
Merktext verkürzen:
ek1 3 ~<<~
aei 3 3
*eof
#------ Kürzel in Datei einfügen:
#ei,q,z,par,+,*,ku=k
akk ~<</~
ekk ~ ~
akd ~<</~
ekd ~>>~
kkz 1 1 2
*eof
Einen schönen Gruß aus Tübingen
W. Ott
----------------------------------------------------------------------
Prof. Dr. Wilhelm Ott phone: +49-7071-2970307
Universitaet Tuebingen fax: +49-7071-295912
c/o Zentrum fuer Datenverarbeitung e-mail: wilhelm.ott at uni-tuebingen.de
Waechterstrasse 76
D-72074 Tuebingen
On Wed, 8 Jun 2005, Wolfram Brunschön wrote:
> Date: Wed, 08 Jun 2005 18:58:08 +0200
> From: Wolfram Brunschön <brunschoen at bbaw.de>
> Reply-To: tustep-liste at itug.de
> To: tustep-liste at itug.de
> Subject: [Tustep-Liste] Endtags richtig zuordnen und auflösen
>
> Diskussionsforum Tustep-Liste
> Weitere Informationen: www.itug.de
> ------------------------------------------------------------
>
> Liebe TUSTEP-Gemeinde,
>
> in einer Datei werden Auszeichnungen mit <aXYZ>text</a> vorgenommen, wobei
> XYZ = <><% und <aXYZ> beliebig oft und über TUSTEP-Satzgrenzen hinweg
> ineinander verschachtelt sein kann, z.B.:
> Text <aUVW>text<aABC><aGHI>blahblah</a>blöhk<MNO>mäh</a></a></a>.
>
> Wie kann TUSTEP die Endtags richtig zuordnen und folgendermaßen auflösen:
> Text <aUVW>text<aABC><aGHI>blahblah</aGHI>blöhk<MNO>mäh</aMNO></aABC></aUVW>.
>
> Wenn ich es könnte, würde ich in einen array alle <aXYZ> bis zum ersten
> </a> einlesen und von 1 an hochzählen und dann dem ersten </a> den
> Anfangstag mit der höchsten Nummer zuordnen, und, falls es keinen nächsten
> Anfangstag gibt (dann würde nämlich der nächste Anfangstag den letzten im
> array ersetzen und der nächste Endtag würde den Anfangstag mit der höchsten
> Nummer bekommen), dem zweiten Endtag den Anfangstag n-2 zuordnen etc., den
> array löschen und zum nächsten Anfangstag gehen (wobei man gleich noch
> überprüfen kann, ob es nicht noch herrenlose </a> gibt) --- vor dem
> geistigen Auge sehe ich ein knackiges KOPIERE mit vollwertiger
> Sprungtabelle und xx-Anweisungen, das von einem gedrungenem $$-MAKRO mit
> einem ausgewachsenen Loop zwischen Access und Endaccess umworben wird.
>
> Wie immer vielen Dank im voraus an die wissend-hilfsbereite Gemeinde,
>
> Wolfram Brunschön
>
> ------------------------------------------------------------
> Tustep-Liste at itug.de
> https://lists.uni-wuerzburg.de/mailman/listinfo/tustep-liste
>
Mehr Informationen über die Mailingliste Tustep-Liste