[Tustep-Liste] Sortiere-Frage

Thomas Kollatz kol at steinheim-institut.org
Mi Sep 15 11:44:13 CEST 2010


Lieber Herr Brunschön, 
die anderen waren schneller, aber ich habe noch eine kleine Variante eingebaut:
Da in ihrem Beispiel griechisch angezeigt wird, bin ich mal davon ausgegangen, dass das eigentlich auch hinterher drin haben wollen, um damit weiterzuarbeiten.
TUSCRIPT wird im Folgenden also dazu genutzt den Inhalt  einer Datei, die im Fremddatenformat vorliegt, modifiziert in eine eben solche auszugeben. (Ausgangsdatei: sort.txt - hängt an, zum Ausprobieren. 
Das geht, wenn sie die Systemdatei in UTF8-Codierung eingeben, sortieren  und dann auch wieder als UTF8 ausgeben (sort_neu.txt). Hinterher sind es genausoviele Zeichen/Sätze/Zeilen wie vorher.

Hier das Skript (copy+paste), dann z.b. im EDITOR x #ma,<editor>
Wenn Sie das TRACE in Zeile 3 aktivieren, sehen sie was vorher nachher passiert.
---> Oliver und Matthias: Ich glaube es geht auch mit MIXED_SORT, das arbeitet nl. wenn ich mich nicht irre: 
1. "Zahl1" 
2. "," 
3. "Zahl2" ab. 
Vielleicht irre ich mich aber auch ...?
Herzliche Grüße
THOMAS KOLLATZ
-----

$$! quelle=sort.txt,ziel=sort_neu.txt
$$ MODE TUSCRIPT
-TRACE +ref_altsort,ref_neusort
ERROR/STOP OPEN   (quelle,READ,-std-)
ERROR/STOP CREATE (ziel,  FDF-o,-std-)
ACCESS q: READ/STREAM/UTF8  $quelle s,atag/40+text+etag/40
ACCESS z: WRITE/STREAM/UTF8 $ziel   s,atag+text+etag
LOOP/999999
READ/EXIT q
IF (atag.hn."Indexref") THEN
SET ref_altsort=SPLIT (text,":; :")
SET ref_neusort=MIXED_SORT (ref_altsort)
SET text=JOIN(ref_neusort,"; ")
ENDIF
WRITE z
ENDLOOP
ENDACCESS/PRINT q
ENDACCESS/PRINT z
BROWSE $ziel  


Die utf-8 codierte Ziel-SYSTEM-datei (sort_neu.txt) sieht dann so aus: 


<document> 
<lemma form="ἁπάντῃ"> 
<Indexref>2,30; 4,15; 56,11; 56,11; 56,11</Indexref>
</lemma>
<lemma form="ἄατος"> 
<Indexref>3,19; 26,7</Indexref>
</lemma>
</document>
<document> 
<lemma form="ἁπάντῃ"> 
<Indexref>2,30; 4,15; 56,11; 56,11; 56,11</Indexref>
</lemma>
<lemma form="ἄατος"> 
<Indexref>3,19; 26,7</Indexref>
</lemma>
</document>
<document> 
<lemma form="ἁπάντῃ"> 
<Indexref>2,30; 4,15; 56,11; 56,11; 56,11</Indexref>
</lemma>
<lemma form="ἄατος"> 
<Indexref>3,19; 26,7</Indexref>
</lemma>
</document>



> 
-------------- nächster Teil --------------
Ein eingebundener Text mit undefiniertem Zeichensatz wurde abgetrennt.
Name: sort.txt
URL: <https://lists.itug.de/pipermail/tustep-liste/attachments/20100915/9ff9a8f2/attachment.txt>
-------------- nächster Teil --------------

drs Thomas Kollatz  - wissenschaftlicher Mitarbeiter / research assistant
* Salomon Ludwig Steinheim-Institut fuer deutsch-juedische Geschichte
  D-47057 Duisburg  Geibelstr. 41 T 0203-370071  F 0203-373380
* Institut <http://www.steinheim-institut.de/wiki/index.php/Mitarbeiter:Thomas_Kollatz>
* Epigraphische Datenbank <http://www.steinheim-institut.de/cgi-bin/epidat>







Mehr Informationen über die Mailingliste Tustep-Liste