Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ gettxt(3C) — Reliant UNIX 5.44c4

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

exstr(1)

mkmsgs(1)

srchtxt(1)

fmtmsg(3C)

setlocale(3C)

environ(5)

gettxt(3C)                                                       gettxt(3C)

NAME
     gettxt - Zeichenkette aus Meldungsdatei holen

SYNTAX
     #include <unistd.h>

     char *gettxt (const char *msgid, const char *dfltstr);

BESCHREIBUNG
     gettxt() liest eine Zeichenkette aus einer Meldungsdatei. Die Argu-
     mente der Funktion bestehen aus einer Meldungsidentifikation msgid und
     einer voreingestellten Zeichenkette dfltstr, welche verwendet wird,
     wenn das Lesen fehlschlägt.

     Die Zeichenketten befinden sich in Dateien, die mit dem Programmier-
     werkzeug mkmsgs [siehe mkmsgs(1)] erstellt wurden. Diese Dateien ste-
     hen im Verzeichnis /usr/lib/locale/locale/LCMESSAGES.

     Das Verzeichnis locale kann als die Sprache betrachtet werden, in der
     die Zeichenketten geschrieben wurden. Sie können bestimmen, daß Mel-
     dungen in einer bestimmten Sprache angezeigt werden, indem sie die
     Umgebungsvariable LCMESSAGES setzen. Wenn LCMESSAGES nicht gesetzt
     ist, wird die Umgebungsvariable LANG verwendet. Ist LANG nicht einge-
     stellt, werden die Dateien aus /usr/lib/locale/C/LCMESSAGES/* verwen-
     det.

     Sie können die Sprache der angezeigten Meldungen auch durch Aufruf der
     Funktion setlocale() mit entsprechenden Argumenten ändern.

     Kann gettxt() eine Meldung in einer bestimmten Sprache nicht einlesen,
     so wird versucht, dieselbe Meldung in amerikanischem Englisch einzule-
     sen. Tritt dabei ein Fehler auf, hängt das weitere Verhalten vom zwei-
     ten Argument dfltstr ab. Es wird ein Zeiger auf das zweite Argument
     zurückgeliefert, wenn das zweite Argument keine Nullzeichenkette dar-
     stellt. Wenn dfltstr auf eine Nullzeichenkette zeigt, wird ein Zeiger
     auf die englische Meldung "Message not found!!\n" zurückgeliefert.

     Die Syntax für msgid beim Aufruf von gettxt() sieht wie folgt aus:

          <msgid> = <msgfilename>:<msgnumber>

     Das erste Feld wird verwendet, um die Datei anzugeben, welche die Zei-
     chenketten enthält; die Länge dieses Feldes ist auf 14 Zeichen
     beschränkt. Bei diesen Zeichen darf es sich nicht um das Zeichen \0
     (Nullzeichen) und den ASCII-Codes für / (Schrägstrich) und : (Doppel-
     punkt) handeln. Die Namen der Meldungsdateien müssen dieselben sein,
     die durch mkmsgs erzeugt und im Verzeichnis
     /usr/lib/locale/locale/LCMESSAGES/* installiert wurden. Das numeri-
     sche Feld zeigt die Position der Zeichenkette in der Datei an. Die
     Zeichenketten sind von 1 bis n durchnumeriert, wobei n die Anzahl der
     Zeichenketten in der Datei darstellt.




Seite 1                      Reliant UNIX 5.44               Gedruckt 11/98

gettxt(3C)                                                       gettxt(3C)

     Wird kein korrekter Wert für msgid oder keine gültige Meldungsnummer
     an gettxt() übergeben, wird ein Zeiger auf die Zeichenkette "Message
     not found!!\n" zurückgeliefert.

BEISPIELE
     gettxt("UX:10", "Hallo Leute\n")
     gettxt("UX:10", "")

     UX ist der Name der Datei, welche die Meldungen enthält. 10 ist die
     Meldungsnummer.

DATEIEN
     /usr/lib/locale/C/LCMESSAGES/*
          enthält voreingestellte Meldungsdateien, die durch mkmsgs erzeugt
          wurden.

     /usr/lib/locale/locale/LCMESSAGES/*
          enthält Meldungsdateien für verschiedene Sprachen, die durch
          mkmsgs erzeugt wurden.

SIEHE AUCH
     exstr(1), mkmsgs(1), srchtxt(1), fmtmsg(3C), setlocale(3C),
     environ(5).































Seite 2                      Reliant UNIX 5.44               Gedruckt 11/98

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026