[Allegro] <Alt>+m-Mechanismus nicht invariant gegen 'fcharset...' in spchr.rtf?
Heinrich Allers
allers at t-online.de
Sa Jun 1 23:09:25 CEST 2013
Diese Nachricht richtet sich nicht an Normalanwender, sondern an
Spezialisten:
Ich bitte Sie bzw. den, der 's einrichten kann, um Nachvollzug eines
Experimentes:
Holen Sie sich bitte von
http://h-allers.de/temp/o.apt
die Datei o.apt (mit nur einer einzigen Zeile) sowie von
http://h-allers.de/temp/spchr.rtf
die Datei spchr.rtf.
Kopieren Sie beide Dateien ins Datenbankverzeichnis \demo2 der
Standardinstallation. Wenn Sie nach Abschluß des Experimentes beide
Dateien dort wieder löschen. ist alles wie zuvor!
Schritt 1 des Experimentes:
Rufen Sie die Demo-Datenbank auf, greifen Sie auf irgendeinen Titel
zu und versuchen Sie, an eine Kategorie was dranzuhängen, indem Sie
diese Kategorie aus dem Auswahlfeld ins Schreibfeld befördern.
Und hängen Sie dann Zeichen für Zeichen 16 Zeichen an diese Kategorie
an, indem Sie nacheinander die Schreibmarke vor das Zeichen setzen,
das in der Zeile hinter A1, A2, A3, ... AF steht, und dann <Alt>+m
geben. Und betätigen Sie jedes Mal <Alt>+m, was bewirkt, daß ein
Zeichen unten im Schreibfeld hinzugefügt wird. (Hier wird also nur
die <Alt>+m-Zeicheneingabe-Methode mit anderen Worten beschrieben
...).
Das unten hinzugefügte Zeichen ist fast immer nicht das Zeichen, das
oben zu sehen ist - aber NIE - das erwähne ich mit Blick auf das, was
in Schritt 3 des Experiments zu beobachten ist - ist es ein pures
Fragezeichen!
Dies entspricht der Erwartung, denn mit <Alt>+m wird eine spchr.rtf
aufgerufen, deren regierender Font (Arial Unicode MS) nicht mit dem
Font übereinstimmt, der die a99-Anwendung (und damit auch das
Schreibfeld) regiert. (Man schaue sich den Kopf der spchr.rtf an).
Was hier als Ergebnis des ersten Versuchsschrittes einzig relevant
ist, ist, daß die Zeichen, deren Kodierung in spchr.rtf steht, mit
dem <Alt>+m-Mechanismus auch wirklich im Schreibfeld ankommen und
auch in der ausgewählten Kategorie (in der, wenn man sie sich
hexadezimal anschaut, die Folge A1, A2, A3, ... AF sich
widerspiegelt).
Schritt 2 des Experimentes:
Man ändere in spchr.rtf die (5.) Zeile
\par\pard\tx2840\tx3408...\tx6252\f0
durch
\par\pard\tx2840\tx3408...\tx6252\f1
- lasse bei der Darstellung von spchr.rtf also nicht mehr "Arial
Unicode MS" mit charset=0 regieren, sondern "Arial Unicode MS" mit
charset=238 (=Mitteleuropäisch).
Schritt 3 des Experimentes:
Rufen Sie die Demo-Datenbank auf, greifen Sie auf irgendeinen Titel
zu und versuchen Sie, an eine Kategorie was dranzuhängen, indem Sie
diese Kategorie aus dem Auswahlfeld ins Schreibfeld befördern.
Und hängen Sie dann Zeichen für Zeichen 16 Zeichen an diese Kategorie
an, indem Sie nacheinander die Schreibmarke vor das Zeichen setzen,
das in der Zeile hinter A1, A2, A3, ... AF steht, und dann <Alt>+m
geben. Das bewirkt, daß ein Zeichen unten im Schreibfeld hinzugefügt
wird.
Das unten hinzugefügte Zeichen ist fast immer nicht das Zeichen, das
oben zu sehen ist, was (siehe oben) der Erwartung entspricht.
Ergebnis des dritten Versuchsschrittes: die Zeichen (hexadez) A4, A6,
A7, A8, A9, AB, AD und AE, deren Kodierung in spchr.rtf steht, kommen
mit dem <Alt>+m-Mechanismus auch wirklich im Schreibfeld an und auch
in der ausgewählten Kategorie (in der, wenn man sie sich hexadezimal
anschaut, die Folge A4, A6, A7, A8, A9, AB, AD und AE sich
widerspiegelt).
Die Zeichen A1, A2, A3, A5, AA, AC und AF dagegen kommen im
Schreibfeld nur als Fragezeichen und in der betreffenden Kategorie
folgerichtig mit dem Fragezeichencode 3F an.
###
Schluß des Experimentes.
Die große Frage ist, warum beim Font mit "\fcharset0 ..." die Sache
ihren guten Lauf nimmt und beim Übergang zu "\fcharset238 ..."
plötzlich derart kapriolenhaft verläuft!
Das Ergebnis von Schritt 1 des Experimentes legt den Schluß nahe, daß
sich der <Alt>-Mechanismus nicht um das schert, was im Kopf der
spchr.rtf an Fontangaben steht. Das Ergebnis von Schritt 3 dagegen
erweckt den Eindruck, daß dieser Mechanismus erst den Kopf der
operativen spchr.rtf liest und sich dann, wenn dort nicht "charset=0"
zu lesen ist, zu Sprüngen veranlaßt sieht, die zu Ergebnissen führen,
die der Erwartungshaltung entgegenstehen.
###
Fragen:
Ist meine Versuchseinrichtung sowie insbesondere ihr Ergebnis
reproduzierbar?
Hat jemand eine Idee zu der Angelegenheit?
Mit besten Grüßen von
Heinrch Allers
--
allers at t-online.de * http://www.h-allers.de
Netztagebuch: http://heinrich-erlo-ger.blogspot.com/
Bitácora: http://heinrich-erlo-spa.blogspot.com/
Mehr Informationen über die Mailingliste Allegro