AW: [Allegro] Zusatztabelle bei Indexparameter: Umkodierung fällt aus

Fischer, Thomas fischer at sub.uni-goettingen.de
Di Mär 5 15:57:39 CET 2013


Hallo Herr Eversberg,

> > Die Befehlsfolge
> > p'|60' P{8}
> > soll den aktuellen Arbeitstext ins Register 60 schreiben.
> > Ist das falsch?
> >
> Ja. Code 8 hat nicht die Funktion, einen Registereintrag zu beenden,
> sondern zwei zu trennen, wenn innerhalb eines von einem ak-Befehl
> angesteuerten Abschnitts mehr als ein Eintrag produziert wird.
> Anders: Wird in einem Abschnitt nur ein Eintrag produziert, hat
> Code 8 an seinem Ende kein anderes Potential als eines zur
> Stiftung von Wirrnis.

wie soll ich einem Konvolut wie cat.api feststellen, ob zu dem gerade aktiven ak-Eintrag (mein Beispiel war: hinter #98N) jetzt noch ein weiterer Eintrag erzeugt wird, und wo? Ich weiß ja vielleicht nicht einmal, über welchen ak-Eintrag ich dort gelandet bin.
Insofern kann ich in cat.api keine deutlichen "Abschnitte" erkennen, an denen ich mich orientieren könnte.

> Noch anders: Das Ende des betr. Abschnitts signalisiert dem
> Programm zugleich das Ende des Eintrags; ein zusätzlicher
> Hinweis, wie gut gemeint auch immer, von seiten des Programmierers
> kann als Schuß in den Ofen enden.

Wieso kann er? Ich meine: er darf nicht! Ein Trennzeichen zu viel sollte das Programm nicht stören.

> Leitlinie also: Code 8 VOR einen weiteren, potentiell in einem
> Abschnitt produzierten Eintrag setzen, wenn und nur wenn er
> tatsächlich produziert wird. Nicht prophylaktisch HINTER einen
> vorangehenden, womöglich letzten Eintrag des Abschnitts.
> In einem Befehl  P{ ... }  also allenfalls dann, wenn man ganz
> sicher sein kann, daß ein weiterer Eintrag produziert werden
> wird.

Wenn ich also in irgendeiner unübersichtlichen Indexparameterdatei an einer bestimmten Stelle #uxy ausgeben möchte, setze ich
#uxy p{8 '|60'}
und das klappt dann und stört nicht?

Das überzeugt mich alles nicht. Mit
#u1 p'#' c'#P' b5 p'Py ' p{8 '|60'}
bekomme ich mit F7 die Anzeige
|60Py ON PRESS|6pergamon press
die mir zeigt, dass das P{8} nicht am Ende der Registererzeugung stand und daher gestört hat.
Und wenn ich neu indexiere ist dieser Eintrag wiederum nicht im Index vorhanden.

Das heißt, ich bin immer noch da wo ich vorher war: F7 zeigt Registereinträge, die bei der Indexierung nicht auftreten.
Was passiert, wenn Sie meinem Vorschlag folgen und das an Ihrer eigenen Demo-Datenbank ausprobieren?

Mit freundlichen Grüßen
Thomas Fischer



Mehr Informationen über die Mailingliste Allegro