[Allegro] geklammerte Ausdrücke in cstring ( ruckzuck: umlaute in signaturen der kurztitelliste...)
Anando Eger
a.eger at aneg-dv.de
Mo Mär 21 09:25:31 CET 2005
Hallo Herr Eversberg,
Sie schrieben u.a.:
> ...
> Anders gesagt: (i,j) innerhalb einer var- oder write-Zeile nimmt sich
> den momentanen iV-Inhalt und schneidet den Abschnitt ab Zeichen Nummer i
> heraus, und zwar j Zeichen. Die Zählung beginnt mit 0. Mit ein paar
> nuetzlichen Sonderfaellen, wie in
> xcstring.rtf
> beschrieben.
> ...
Das ist ja toll - bis jetzt habe ich das noch nicht so verstanden.
Die Passage in xcstring.rtf:
"A. An beide Formen kann man einen Ausdruck (i,j) anhängen, mit i>=0 und j>=0.
Dann wird vom Kategorie- bzw. Teilfeldtext nur der Teil ab Position i genommen
(Zählung beginnt bei 0) und zwar j Zeichen (wenn j=0, dann der gesamte Rest -
(0,0) wäre also alles).
Ist i größer als die Länge der Kategorie, kommt nichts heraus.
Ist j größer als die Länge des Restes, wird nach rechts mit Leerzeichen
aufgefüllt, wenn vor der Zahl l noch ein 'r' steht, wird statt dessen links
aufgefüllt, der Text also rechtsbündig auf die Länge j abgesetzt (so kann
man Ausgabefelder mit fester Länge erzeugen) .
B. Die zweite Möglichkeit: man hängt noch einen geklammerten Ausdruck an von
einer der folgenden Formen:
(b"xyz") vom Kategorietext nur den Teil hinter "xyz" nehmen ..."
verstand ich bisher so, daß Konstruktionen wie '#xyz(...)' beschrieben werden.
Also vermute ich:
"Steht ein geklammerter Ausdruck innerhalb eines cstring in Leerzeichen
eingeschlossen, so wird die iV anstatt der Kategorie oder Nutzervariablen bearbeitet." ?
Wäre es denn richtig formuliert, wenn man den Text xcstring.rft so ergänzen würde?
Würden dann folgende Beispiele korrekt sein?
(#20 enthält in den folgenden Beispielen den Text "Titel")
A) var "Text" #20(0,4) erzeugt "TextTite"
B) var "Text" #20 (0,4) erzeugt "Text"
C) var "Text" #20(b"e") erzeugt "Textl"
D) var "Text" #20 (b"e") erzeugt "xtTitel"
Das Verhalten der aktuellen Version scheint dies zu bestätigen.
Wäre es dann richtig, wenn man verallgemeinert so formuliert:
"Ein cstring ist eine Kette von Code-Elementen, beliebig zusammengesetzt, wobei die
Elemente aus fünf Typen bestehen, getrennt durch Leerzeichen:
...
5. (...) geklammerter Ausdruck ..." ?
Viele Grüße
Anando Eger
Mehr Informationen über die Mailingliste Allegro