Projekt==
Verzeichnis==
Ordner==
directory
dirname
dateiname.tf
#da,meine_aliase,seq-ap
#ed,meine_aliase
alias=~/Downloads/impress/ITUGJF02/#2_material/1A-
#de,dateinamen=meine_aliase
#in,dateinamen=+
#da,alias,seq-ap,tr=-
#de,dateinamen=-
#2_material/
├── 01.letters
│ ├── Q.01.19140115.FMA.01.xml
│ └── Q.01.19140518.GAP.01.xml
├── 02.periodicals
├── 04\ ein\ wahrlich\ schau3rl!cherDateiname.01
├── scr
├── skripte
├── tei.def
└── tustep.ini
3 directories, 6 files
Die Beispieldateien und Skripte stehen auf github zum Download bereit
**** Mögliche System-Variablen
TUSTEP_DSK ~/Downloads/impress/ITUGJF02/#2_material
TUSTEP_SCR ~/Downloads/impress/ITUGJF02/#2_material/scr
**** 1 von 3 Projekten auf TRAEGER = TUSTEP_DSK
SCR
**** 3 von 4 Dateien mit PROJEKT = - und TRAEGER = TUSTEP_DSK
SKRIPTE TEI.DEF TUSTEP.INI
$$ MODE TUSCRIPT,{}
files = FILE_NAMES (-,TUSTEP_DSK)
projects = PROJECT_NAMES (TUSTEP_DSK)
Segment basis01
aus -*skripte
3 00 files = FILE_NAMES (-,TUSTEP_DSK)
files = SKRIPTE'TEI.DEF'TUSTEP.INI
4 00 projects = PROJECT_NAMES (TUSTEP_DSK)
projects = SCR
$$ MODE TUSCRIPT,{}
FETCH root = TUSTEP_DSK
files = FILE_NAMES (-,$root)
projects = PROJECT_NAMES ($root)
Segment basis02
aus -*skripte
Wenn für das Argument projekt »-« (ohne Anführungszeichen) angegeben wird, kann bei dieser Makrofunktion für das Argument traeger auch ein Verzeichnis (directory) angegeben werden. Diese Angabe muss in Anführungszeichen eingeschlossen werden und den vollständigen Pfad zu diesem Verzeichnis sowie den Namen des Verzeichnisses enthalten. Die Makrofunktion liefert in diesem Fall die Namen aller in diesem Verzeichnis enthaltenen Dateien, also auch derjenigen, die einen für TUSTEP unzulässigen Namen haben.
Handbuch 500-501
3 00 FETCH root = TUSTEP_DSK
root = ~/Downloads/impress/ITUGJF02/#2_material
4 00 files = FILE_NAMES (-,$root)
files = *
1 = 04 ein wahrlich schau3rl!cherDateiname.01.xml
2 = skripte
3 = tei.def
4 = tustep.ini
5 00 projects = PROJECT_NAMES ($root)
projects = *
1 = 01.letters
2 = 02.periodicals
3 = scr
$$ MODE TUSCRIPT,{}
FETCH root = TUSTEP_DSK
newproject ="2021-03-31"
path2project =ADJUST_PATH (root,newproject)
DEFINE path2project = path2project
ERROR/STOP CREATE ("-",PROJECT,path2project)
Segment basis03
aus -*skripte
Ist für das Argument typ das Schlüsselwort PROJECT und mit dem Argument name kein Projektname, sondern »-« angegeben, so werden diejenigen Verzeichnisse eingerichtet, die für den mit dem Argument traeger angegebenen Pfad noch nicht existieren.
Handbuch 480
6 00 path2project =ADJUST_PATH(root,newproject)
path2project = ~/Downloads/impress/ITUGJF02/#2_material/2021-03-31
7 00 DEFINE path2project = path2project
8 00 ERROR/STOP CREATE ("-",PROJECT,path2project)
$$ MODE TUSCRIPT,{}
FETCH root = TUSTEP_DSK
newproject =" 2021-03-31"
path2project = ADJUST_PATH (root,newproject)
newname= "001 log.txt"
path2file=ADJUST_PATH (path2project,newname)
DEFINE "path2file" = path2file
txtfile="path2file"
ERROR/STOP CREATE (txtfile,FDF-o,-)
Segment basis04
aus -*skripte
9 00 path2file=ADJUST_PATH (path2project,newname)
path2file = ~/Downloads/impress/ITUGJF02/#2_material/2021-03-31/001 log.txt
10 00 DEFINE "path2file" = path2file
11 00 txtfile="path2file"
txtfile = path2file
12 00 ERROR/STOP CREATE (txtfile,FDF-o,-)
$$ MODE TUSCRIPT,{}
FETCH root = TUSTEP_DSK
newproject = "2021-03-31"
path2project = ADJUST_PATH (root,newproject)
newname = "001 log.txt"
path2file=ADJUST_PATH (path2project,newname)
DEFINE "path2file" = path2file
txtfile="path2file"
ERROR/STOP CREATE (txtfile,FDF-o,-)
FILE/ERASE/UTF8 $txtfile = "äöü"
ERROR/STOP CLOSE (txtfile)
Segment basis05
aus -*skripte
$$ MODE TUSCRIPT,{}
FETCH root = TUSTEP_DSK
projects=PROJECT_NAMES ($root)
LOOP project=projects
IF (project.nc." letters ") CYCLE
path2files=ADJUST_PATH (root,project)
files=FILE_NAMES (-,$path2files)
xmlfiles=FILTER (files," *.xml ",-)
LOOP xmlfile=xmlfiles
rtffile=EXCHANGE (xmlfile,"|.xml|.rtf|")
path2rtffile=ADJUST_PATH (path2files,rtffile)
DEFINE "rtffile" = path2rtffile
rtffile="rtffile"
ERROR/STOP CREATE (rtffile,FDF-o,-)
ERROR/STOP CLOSE (rtffile)
ENDLOOP
ENDLOOP
Segment projectfiles
aus -*skripte
$$ MODE TUSCRIPT,{}
ERROR/STOP OPEN ("tei.def",WRITE,-std-)
FETCH root = TUSTEP_DSK
projects=PROJECT_NAMES ($root)
LOOP project=projects
IF (project.nc." letters ") CYCLE
path2files=ADJUST_PATH (root,project)
files=FILE_NAMES (-,$path2files)
xmlfiles=FILTER (files," *.xml ",-)
LOOP n,xmlfile=xmlfiles
tffile=CONCAT ("xml2rtf",n,".tf")
path2tffile =ADJUST_PATH (path2files,tffile)
path2xmlfile =ADJUST_PATH (path2files,xmlfile)
DEFINE "tffile" = path2tffile
tffile="tffile"
ERROR/STOP CREATE (tffile,SEQ-o,-)
status=READ (path2xmlfile,xmldaten,UTF8)
IF (status!="OK") STOP
ACCESS q: READ/VARIABLE/STREAM xmldaten s,a+t+e,typ,stack,stack_num
ACCESS z: WRITE/FILE/ERASE/STREAM tffile s.z/u, a+t+e
INCLUDE "skripte" bereiteauf
ENDACCESS q
ENDACCESS z
rtffile=EXCHANGE (xmlfile,"|.xml|.rtf|")
path2rtffile =ADJUST_PATH (path2files,rtffile)
DEFINE "rtffile" = path2rtffile
rtffile="rtffile"
ERROR/STOP CREATE (rtffile,FDF-o,-)
EXECUTE #*export,{tffile},{rtffile},lo=+,de=tei.def
ERROR/STOP CLOSE (tffile)
ERROR/STOP CLOSE (rtffile)
ENDLOOP
ENDLOOP
Segment ex_xml2rtf
aus -*skripte