Prof. Franz Schweiggert Abteilung Angewandte
Informationsverarbeitung 22. Juni 2005
Christian Ehrhardt Blatt 11
Unix-basierte Implementierung kleiner Datenbanken (SS 2005)
Abgabetermin 29.Juni 2005
In diesem Blatt soll ein kleines PerlTk-Programm zum Betrachten
und Durchsuchen von Manualseiten erstellt werden. Das gesamte Programm
besteht nur aus einem Eingabefeld (für den Suchtext) und einem
Text-Widget, in dem Text angezeigt, aber nicht verändert werden kann
(Tk::ROText). Dort werden später Manualseiten angezeigt.
Die folgenden Dinge sollen dabei funktionieren:
- Ändert sich der Suchtext im Eingabefeld, dann wird dieser Text
automatisch in der im Moment angezeigten Manualseite gesucht.
- Die Suche beginnt an der Stelle, an der zuletzt eine Suche
erfolgreich war (etwas gefunden hat).
- Eine Suche, die das Ende der Manualseite erreicht, wird am
Anfang fortgesetzt.
- Wird Return gedrückt, dann beginnt die Suche ein Zeichen
hinter dem, an dem die letzte Suche erfolgreich war.
- Immer nur das Ergebnis der letzten Suche ist farblich hervorgehoben,
nach einer erfolglosen Suche ist kein Text farblich hervorgehoben.
- Nach einer erfolgreichen Suche ist die gefundene Textstelle in
der Manualseite sichtbar.
- Wird die Taste F5 gedrückt, dann wird die Manualseite zum
aktuellen Suchtext angezeigt.
- Wird in der Manualseite ein Stück Text, das sich nicht über
mehrere Zeilen erstreckt, markiert, dann wird dieser Text als
Suchtext übernommen. Es genügt, wenn dies nach dem Abschluß der
Markierung geschieht.
- Die automatisch folgende Suche sollte dort beginnen, wo die
Markierung beginnt und damit genau den vorher markierten Text finden.
- Die Tasten F5 und Return sollten wie beschrieben
funktionieren, egal ob im Moment das Eingabefeld oder das Textfenster
den Fokus hat.
- Die Manualseite zu einem Stichwort liefert bekanntlich das Kommando
man. Dessen Ausgabe soll von Eurem Programm verwendet werden.
- Ev. in der Ausgabe vorkommende Sonderzeichen dürfen ignoriert
werden. Diese Sonderzeichen dienen bei man dazu, auf einem
Terminal z.B. Fettdruck zu erreichen.
Christian Ehrhardt
2005-06-22