message(1F) (Form and Menu Language Interpreter) message(1F)
NAME
message - Argumente in die FMLI-Meldungszeile stellen
SYNTAX
message [-t] [-b [num]] [-o] [-w] [string]
message [-f] [-b [num]] [-o] [-w] [string]
message [-p] [-b [num]] [-o] [-w] [string]
BESCHREIBUNG
Das Kommando message stellt die Zeichenkette string in die FMLI-Mel-
dungszeile. Wenn keine Zeichenkette vorhanden ist, wird die Standard-
eingabe stdin für message verwendet. Die Ausgabe von message wird in
der Meldungszeile angezeigt. Standardmäßig ist die Anzeigedauer zeit-
lich begrenzt. Die Dauer der Anzeige kann über die folgenden, sich
gegenseitig ausschließenden Optionen festgelegt werden:
-t Definiert explizit, daß eine Meldung eine begrenzte Anzeigedauer
hat. Meldungen dieser Art werden nur so lange in der Meldungs-
zeile angezeigt, bis der Benutzer eine Taste drückt oder ein
CHECKWORLD auftritt. Die Deskriptoren itemmsg, fieldmsg,
invalidmsg, choicemsg, der (falls nicht anders definiert) Stan-
dardwert von oninterrupt sowie von FMLI erzeugte Fehlermeldungen
(bei Syntaxfehlern) geben ebenfalls zeitlich begrenzte Meldungen
aus. Zeitlich begrenzte Meldungen haben Priorität vor Meldungen,
die während der gesamten Sitzung oder solange das dazugehörige
Fenster das aktuelle Fenster ist, angezeigt werden.
-f Definiert, daß eine Meldung angezeigt wird, solange das dazugehö-
rige Fenster das aktuelle Fenster ist. Der Deskriptor framemsg
gibt ebenfalls Meldungen mit dieser Anzeigedauer aus. Meldungen
dieses Typs haben Priorität vor Meldungen, die während der gesam-
ten Sitzung angezeigt werden.
-p Definiert, daß eine Meldung für die Dauer der FMLI-Sitzung in der
Meldungszeile angezeigt wird, wenn sie nicht explizit durch eine
andere Meldung mit derselben Anzeigedauer oder temporär durch
eine zeitlich begrenzte Meldung oder eine Meldung ersetzt wird,
die solange angezeigt wird, wie das dazugehörige Fenster das
aktuelle Fenster ist. Das Ansteuern eines anderen Fensters oder
Schließen des Fensters, das die während der gesamten Sitzung
angezeigte Meldung erzeugt hat, hat keine Auswirkung auf diese
Meldung. Der Deskriptor permanentmsg gibt ebenfalls Meldungen mit
der Anzeigedauer einer Sitzung aus.
Seite 1 Reliant UNIX 5.44 Gedruckt 11/98
message(1F) (Form and Menu Language Interpreter) message(1F)
Meldungen, die mit message -p angezeigt werden, ersetzen alle Meldun-
gen (ändern den Wert der Meldungen), die momentan über den Deskriptor
permanentmsg angezeigt oder gespeichert werden. Entsprechend ersetzt
message -f alle Meldungen, die momentan über den Deskriptor framemsg
angezeigt oder gespeichert werden. Wenn mehrere Meldungen in einer
Fensterdefinitionsdatei mit der Option -p angegeben sind, ist die
zuletzt angegebene die während der gesamten Sitzung angezeigte Mel-
dung.
Das Argument string sollte immer das letzte Argument sein. Ferner sind
die folgenden Optionen mit message verfügbar:
-b [num]
Mit dieser Option ertönt das akustische Signal des Terminals
nummal, wobei num eine Ganzzahl von 1 bis 10 ist. Der Standard-
wert ist 1. Wenn das Terminal nicht über ein akustisches Signal
verfügt, blinkt der Bildschirm nummal, falls möglich.
-o Hierdurch dupliziert message seine Meldung auf stdout.
-w Aktiviert den "Working"-Indikator ("Bitte warten ...").
BEISPIELE
Wenn ein in ein Feld eingegebener Wert ungültig ist, soll das akusti-
sche Signal dreimal ertönen, und anschließend soll Invalid Entry: Try
again! in der Meldungszeile angezeigt werden:
invalidmsg=`message -b 3 "Invalid Entry: Try again!"`
Eine Meldung anzeigen, die den Benutzer über die erfolgten Aktivitäten
informiert:
done=`message EDITOR has been set in your environment` close
Eine Meldung in der Meldungszeile und auf stdout für jedes Feld in
einem Formular anzeigen (eine Pseudo-Meldung, die angezeigt wird,
solange das dazugehörige Feld das aktuelle Feld ist):
fieldmsg="`message -o -f "Enter a filename."`"
Eine leere Meldung mit begrenzter Anzeigedauer anzeigen (um eine wäh-
rend der gesamten Sitzung angezeigte Meldung oder eine Meldung zu ent-
fernen, die solange angezeigt wird, wie das dazugehörige Fenster das
aktuelle Fenster ist):
done=`message ""` nop
Seite 2 Reliant UNIX 5.44 Gedruckt 11/98
message(1F) (Form and Menu Language Interpreter) message(1F)
HINWEISE
Wenn message mehrmals in einer Zeile codiert ist, wird möglicherweise
nur die Meldung interpretiert und angezeigt, die sich ganz rechts
befindet. Verwenden Sie in diesem Fall sleep(1) zwischen einzelnen
Angaben von message, um mehrere Meldungen anzuzeigen.
message -f sollte nicht in einem alleinstehenden Ausdruck in rück-
wärtsgerichteten Hochkommata oder mit dem Deskriptor init verwendet
werden, da das Fenster bei deren Bewertung noch nicht aktuell ist.
In Fällen, in denen `message -f "string"` Teil eines alleinstehenden
Ausdrucks in rückwärtsgerichteten Hochkommata ist, ist der Kontext für
die Bewertung des Ausdrucks das zuvor aktuelle Fenster. Dies kann das
Fenster sein, das das Kommando open für das Fenster mit dem Ausdruck
in rückwärtsgerichteten Hochkommata angegeben hat. Es kann sich aber
hierbei auch um ein Fenster handeln, das beim Aufruf von fmli als
Argument angegeben wurde. Das heißt, das zuvor aktuelle Fenster ist
das Fenster, dessen Meldung geändert wird.
Während der gesamten Sitzung angezeigte Meldungen werden angezeigt,
wenn der Benutzer in die Kommandozeile wechselt.
SIEHE AUCH
sleep(1), indicator(1F).
Seite 3 Reliant UNIX 5.44 Gedruckt 11/98