[Allegro] SRCH-Aufruf : Spatium im Suchbegriff oder in anderen Optionen

Bernhard Eversberg ev at biblio.tu-bs.de
Mi Apr 15 08:39:48 CEST 2009


Wenig bekannt ist, daß man beim veralteten DOS-Programm SRCH.EXE
auch Spatien im Suchbegriff haben kann. In Kap.4.0 steht, daß
in der Datei  S1.ASP  diese Zeile vorkommt:

   X        Leerzeichen durch X ersetzen (hier 2 Spatien vor dem X)

die bewirkt, daß man also beim Aufruf zu geben hätte:

srch -f4 -d... -s"shakespeare,Xwilliam"

Was aber, wenn man eine -U-Option mitgeben will (s. Kap. 12), um
in den Exportparameter einen bestimmten Wert verfügbar zu haben,
und wenn dieser Wert seinerseits Spatien enthält?
Die -U-Option sieht ja so aus:

srch ... -UxyTEXT

damit steht dann innerhalb der Exportparameter das Feld  #uxyTEXT
zur Verfügung.
Wenn nun der Text  A B C  lautet, was dann? Vielleicht -Uxy"A B C"?
Nein. Die Optionsauswertung ist eine systemische Sache, keine
allegro-proprietäre, und sie erwartet das " direkt hinter dem Options-
buchstaben. Man hat daher zu schreiben:

srch -f4 -s... -U"xyA B C"

so komisch das auch aussieht, aber es klappt. Auch mit PRESTO usw.
(Jaja, muß noch in Kap. 12 (h ac12) mit rein.)

Und bei SRCH.JOB? Wir erinnern: Mit SRCH.JOB kann man einen
konventionellen SRCH-Aufruf weitgehend mittels acon nachbilden.
(Siehe  h acon )
Bisher wurde aber in SRCH.JOB keine Rücksicht auf Spatien im
Suchbegriff genommen. Jetzt haben wir es eingebaut, und zwar an
dieser Stelle:

// Suchbegriff fuer Befehl srx
var #ucl(b" -s" f" ")
//  Achtung bei "..." (wenn Spatien im Suchbegr.)
if not ='"' var (e" ")
if ='"' var (1,0 e'"')
ins #u!!

Vorher stand da nur

// Suchbegriff fuer Befehl srx
var #ucl(b" -s" f" " e" ")
ins #u!!

Ein acon-Aufruf mit SRCH.JOB sieht dann so aus:

acon <srch.job -s"shakespeare, william" -ka -ddemo2\*.ald

Um die U-Optionen haben wir uns in SRCH.JOB aber nicht gekümmert. Die
bewirken nichts. Wenn Bedarf dafür artikuliert wird, dann muß das mal
auf den Zettel.

B.Eversberg






Mehr Informationen über die Mailingliste Allegro