[Allegro] Bemerkungen zur Volltextsuche

Thomas Berger ThB at Gymel.com
Do Apr 28 19:45:26 CEST 2011


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Lieber Herr Eversberg,

ich dachte, fuer die Suche nach gewissen v14-Verknuepfungsmustern seien
Volltextsuchen evtl. besser geeignet als das find-Menue...

Jedoch zuvor

I.

ftr.inc scheint vorbereitet, um die eigentliche Arbeit von ftr.flx
zu uebernehmen (analog rsfsr.flx /rsfsr.inc oder dem Demo alldata.inc?),

Das scheint mir allerdings noch etwas unfertig, anscheinend gab es
logische Probleme, wo denn nun die Auswahl der Dateien und die
Eingabe/Abwandlung des Suchbegriffs erfolgen soll.

Konkret:
ftr.inc testet zwar Korrektheit des Suchbegriffs, reagiert aber nicht
    auf das Ergebnis

ftr.inc erlaubt Abaenderung des Suchbegriffs, hat also doch die
    gesamte Eingabelogik aus ftr.flx

ftr.inc belegt die Dateiliste (abweichend durch ";" getrennt statt durch
    CRLF) mit allen .ald-Dateien aus dem Datenverzeichnis vor.


Ich weiss jetzt nicht, wie gut sich ein "Abbruch" in einer interaktiven
Anfrage nach einem "return" noch testen laesst, koennte mir aber folgende
Arbeitsteilung vorstellen:

ftr.flx praesentiert den Dateiauswahldialog und die Suchbegriffseingabe

ftr.inc testet auf Vorhandensein / Korrektheit von #u!D und #u!!,
   ist da etwas nicht besetzt / nicht lesbar / falsch  bietet es
   sofortigen Abbruch an, ansonsten macht es mit Standardwerten
   irgendwie weiter


II.
ftr.flx erzwingt v14-Ersetzungen, in ftr.inc ist die entsprechende
Zeile auskommentiert (jeweils mit dem Hinweis, dass man am Flex
herumschrauben koenne, wenn man anders suchen moechte).

Beides ist nicht wirklich befriedigend, zumal "export Ref" Ersetzungen
aehnlich i4=1 durchfuehrt (und nicht analog i4=5 wie im find-menue),
anders als bei avanti's "set a<i>" scheint das auch nicht steuerbar.

Ich koennte mir folgendes vorstellen:

Ein Unterstrich "_" als erstes Zeichen in #u!! hat bereits eine Spezial-
bedeutung fuer das srx-Builtin (der eingelesene Datensatz wird vor
dem Test nicht der mittels "set x..." definierten Umcodierung unterworfen).
Wenn man auch in ftr.flx/ftr.inc (vgl. auch rsfsr.* - wer denkt sich
eigentlich diese Namen aus ;-(  nun ebenfalls darauf testet:

var #u!!
if "_" var ""
ins $ftr:v14

und diese Variable $ftr:v14 zur Steuerung der Ersetzung mit heranzieht

if $ftr:v14 if v14 if %_% set obj 2;new 0;ins;dow R;var kn;erase;set obj 1

dann hat man m.E. in vielen typischen Faellen das gewuenschte Verhalten,
ohne den Benutzer mit einer zusaetzlich vorgeschalteten Frage nach
"Ersetzungsmodi" unnoetig zu behindern oder zu verwirren.

Was meinen Sie?

viele Gruesse
Thomas Berger

P.S.: Auch der Hinweis
    Achtung: wenn nicht _ das Steuerzeichen ist, dann aendern!
ist nicht sonderlich hilfreich, alle diese von Menue "Suchen / Volltextsuche"
bzw. fulltext.flx aus erreichbaren Funktionen werden als Kernfunktionen
des Systems praesentiert und sollten daher vollstaendig Konfigurations-
unabhaengig sein... Vermutlich waere es aber keine besondere Bremse, auf
den Test "if %_%" komplett zu verzichten...

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (Cygwin)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iJwEAQECAAYFAk25p7YACgkQYhMlmJ6W47P/eAP9FJDImGMVQpq+a6c2FAsAC+WS
AAMptIX0eJty+9kfOEG62o/m8/9XHjLwi+NT7AeJzRKMp3qNRi177go7f5JdpF4e
AkbOSqbME06P1cGtifanNc7IARzpGwY/4/SqaZ+HzbEJu9XXaE1IknwvFAi1jY2B
sNrVuggqGnuAOMykuoY=
=5laT
-----END PGP SIGNATURE-----



Mehr Informationen über die Mailingliste Allegro