[Allegro] Personensatz über GND Nummer seltsame Schreibweise

Thomas Berger ThB at Gymel.com
Fr Jul 5 14:27:03 CEST 2013


Lieber Herr Eversberg,


>>> var $DAT (b"Name</strong>" b">" b">" e"<")
>>
>> sollte das nicht
>>
>> var $DAT (b"Name</strong>" b"[>]" b"[>]" e"[<]")
>>
>> weil "<" und ">" sowohl in der cstring- als auch der
>> Exportsprache als erstes Zeichen in "..."-Zeichenketten
>> Steuerbedeutung haben?
>>
> An dem Punkt müssen wir in  xcstring.rtf  eine Korrektur vornehmen,
> denn die Zeichen < und > sind in FLEX unwirksam gemacht, weil
> nicht sinnvoll. Entsprechendes gilt für den Export, was man in
> exet.cpp finden kann, vor allem auch bei den Funktionen b und e.

Hm. Fuer "b" und "e" in der Exportsprache habe ich mir
auch nie so recht vorstellen koennen, wozu man das
braucht. Bzw. was das dann sagt.

Es kam nach meiner Erinnerung ueber

c">1990"

hinein, also den Test auf eine Zahl. Wobei das mit der Zahl
dann automatisch passiert, und c">abc" daher per Analogie
auch irgendetwas liefert (was genau, ist unklar:
- die ersten drei Zeichen alphabetisch groesser als "abc"
- der Arbeitstext ab Anfang alphabetisch groesser (trifft
  dann auch auf "abcd" zu)
- Irgendwo im Arbeitstext eine Zeichenkette mit der
  Eingeschaft (welche der beiden vorigen noch gleich?)

Ah, die numerische(?) Variante nutze ich an einer Stelle
im Zusammenhang mit dem Einsammeln des aktuellsten Datums
aus einer Menge infrage kommenden Datumskategorien:

...
#99Z e"▼" ,"_/__" ,"_:__" b">#ucw" dcw Acw
...

wobei ich nicht wirklich weiss, ob die resultierenden
vierzenstelligen Zahlen von allegro wirklich numerisch
behandelt werden. Und der ausgenutzte Effekt wohl ein
"Abbruch falls nicht" bzw. "b0 falls doch" ist: letzteres
eher unintuitiv...


> Kommentiert ist das auch in der zuständigen Grundfunktion
> fndstr() in exet3.cpp (und in exet.hpp). Wir hatten extra dafür
> den fünften Parameter dieser Funktion eingeführt, der defaultmäßig
> 0 ist, hier aber auf 1 gesetzt wird.

danke fuer die Erlaeuterung

viele Gruesse
Thomas Berger




Mehr Informationen über die Mailingliste Allegro