Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ gencat(1) — Reliant UNIX 5.44c4

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

dumpmsg(1)

extract(1)

iconv(1)

mkmsgs(1)

catclose(3C)

catgets(3C)

catopen(3C)

gettxt(3C)

gencat(1)                                                         gencat(1)

NAME
     gencat - Binär codierten Meldungskatalog erzeugen

SYNTAX
     gencat [option ...] catfile msgfile ...

BESCHREIBUNG
     Das Kommando gencat schreibt den Inhalt einer Meldungstext-Datei in
     einen binär codierten Meldungskatalog.

     Wenn der Meldungskatalog noch nicht existiert, wird er neu erstellt.
     Wenn der Meldungskatalog bereits existiert, werden die darin enthalte-
     nen Meldungen in den neuen Meldungskatalog mit eingebunden. Wenn die
     Mengen- und Meldungsnummern von aktuellen und neudefinierten Meldungs-
     texten übereinstimmen, dann ersetzt gencat die aktuell im Meldungska-
     talog stehenden Meldungstexte durch die in der Meldungstext-Datei
     definierten neuen Meldungstexte.

     Mit gencat erzeugte Meldungskataloge sind binär codiert, d. h., daß
     zwischen verschiedenen Maschinentypen keine Kompatibilität garantiert
     werden kann. Genau wie C-Programme für jeden Maschinentyp neu über-
     setzt werden müssen, müssen die Meldungskataloge mit gencat neu
     erstellt werden.

     Eine Meldungstext-Datei kann einfache Meldungsnummern oder zweistufige
     Meldungsnummern enthalten. Zweistufige bestehen aus der Meldungsnummer
     und einer Mengennummer. Bei einfachen Meldungsnummern wird standardmä-
     ßig NLSETD für die Mengennummern verwendet.

OPTIONEN
     Die Optionen -m und -X schließen sich gegenseitig aus; die zuletzt
     gesetzte Option hat Vorrang.

     -l   Falls catfile bereits existiert, werden Informationen über die
          dort vorhandenen Meldungen auf die Standardausgabe ausgegeben.
          Die Ausgabe hat folgendes Format:

          Mit Option -X:

          SET mengennr, MESSAGE meldungsnr, TEXT meldungstext
          *

          Ohne Option -X:

          SET mengennr, MESSAGE meldungsnr, OFFSET offset, LENGTH meldungs-
          länge meldungstext
          *

          offset gibt den Abstand des Meldungstextbeginns vom Anfang an,
          d. h.





Seite 1                      Reliant UNIX 5.44               Gedruckt 11/98

gencat(1)                                                         gencat(1)

          erste Meldung:    offset(1) = 0

          i-te Meldung:     offset(i) = offset(i-1) + meldungslänge(i)

     -m   Mit der Option -m kann X/Open-konform gearbeitet werden.

          Aus Kompatibilitätsgründen zu früheren Versionen von gencat, die
          in einer Reihe von speziellen internationalisierten Produkten
          veröffentlicht wurden, wird die Option -m zur Verfügung gestellt.
          Sie bewirkt, daß gencat eine einzige Datei catfile erzeugt, die
          mit den Formatkatalogen, die von den früheren Versionen erstellt
          wurden, kompatibel ist. Die Suchroutinen finden heraus, um wel-
          chen Katalogtyp es sich handelt, und agieren dementsprechend.

          Das Verhalten der Option -m ist die Voreinstellung, sie braucht
          nicht explizit eingeschaltet zu werden.

     -X   gencat baut auf dem mkmsgs-Dienstprogramm auf. Die gencat-Daten-
          bank besteht aus zwei Dateien: catfile.m ist ein mkmsgs-Format-
          katalog, catfile enthält die Informationen, die zum Übersetzen
          einer zweistufigen Nummer (set and message number) in eine einfa-
          che Meldungsnummer benötigt werden. Einfache Meldungsnummern wer-
          den bei gettxt-Aufrufen verwendet.

          gettxt nimmt an, daß die Kataloge in einem Unterverzeichnis von
          /usr/lib/locale abgelegt sind. Diese Einschränkung umgehen Sie,
          indem Sie einen symbolischen Verweis auf den Katalog
          /usr/lib/locale/Xopen/LCMESSAGES erzeugen, nachdem der Katalog
          eingerichtet wurde. Über diesen Verweis kann gettxt auf den Kata-
          log zugreifen. Der Verweis wird gelöscht, wenn der Katalog
          geschlossen wird.

     --   Ende der Optionenliste. Die Angabe ist nötig, wenn catfile mit -
          beginnt.

     Keine Option angegeben:
          gencat verhält sich, wie bei der Option -m beschrieben.

     catfile
          Name des binär codierten Meldungskatalogs, den gencat aus der
          Meldungstext-Datei msgfile erzeugen soll. Wenn Sie für catfile
          einen Bindestrich - angeben, schreibt gencat auf die Standardaus-
          gabe.

     msgfile
          Name der Meldungstext-Datei, die durch extract(1) erzeugt wurde.
          Aus ihr erzeugt gencat einen binär codierten Meldungskatalog.
          Wenn Sie für msgfile einen Bindestrich - angeben, liest gencat
          von der Standardeingabe. Sie können auch mehrere Meldungsquellda-
          teien angeben.




Seite 2                      Reliant UNIX 5.44               Gedruckt 11/98

gencat(1)                                                         gencat(1)

FORMAT EINES MELDUNGSKATALOGS
     Ein von gencat mit der Option -m erzeugter Meldungskatalog enthält die
     folgenden Strukturen in der angegebenen Reihenfolge:

     ⊕  den Katalog-Kopf CATHDR, bestehend aus:

        -  der Dateiformatkennung (magic number)

        -  der Anzahl der Mengen (set) in der Meldungsdatei

        -  dem Platz (in Byte), den die Datei zum Laden benötigt, die Länge
           des Dateikopfs nicht mitgerechnet

        -  der Position, an der die Meldungsköpfe beginnen, die Länge des
           Dateikopfs nicht mitgerechnet

        -  der Position, an der die Meldungstexte beginnen, die Länge des
           Dateikopfs nicht mitgerechnet

     ⊕  einen Mengenkopf CATSETHDR für jede vorhandene Menge (set),
        bestehend aus:

        -  der Mengennummer

        -  der Anzahl der Meldungen in der Menge

        -  dem Start-Offset in der Tabelle

     ⊕  einen Meldungskopf CATMSGHDR für jede vorhandene Meldung, beste-
        hend aus:

        -  der Meldungsnummer

        -  der Länge der Meldung in Byte

        -  dem Meldungs-Offset in der Tabelle

     ⊕  die einzelnen Meldungstexte, die durch \0 voneinander getrennt
        sind.

INTERNATIONALE UMGEBUNG
     Die Umgebungsvariable LCMESSAGES bestimmt die Sprache der Meldungs-
     texte. Wenn LCMESSAGES nicht oder als leere Zeichenkette definiert
     ist, wird der Wert von LANG als Standardwert herangezogen. Ist auch
     LANG nicht oder als leere Zeichenkette definiert, verhält sich das
     System so, als wäre es nicht internationalisiert.

     Die Umgebungsvariable LCALL bestimmt die gesamte internationale Umge-
     bung. LCALL hat Vorrang vor allen anderen Umgebungsvariablen im
     Bereich der Internationalisierung.




Seite 3                      Reliant UNIX 5.44               Gedruckt 11/98

gencat(1)                                                         gencat(1)

BEISPIELE
     Erzeugen des binär codierten Meldungskatalogs catfile aus der Mel-
     dungstext-Datei msgfile. Die Meldungstext-Datei wurde vorher mit
     extract(1) erzeugt.

     $ gencat catfile msgfile

SIEHE AUCH
     dumpmsg(1), extract(1), iconv(1), mkmsgs(1), catclose(3C),
     catgets(3C), catopen(3C), gettxt(3C), nltypes(5).

     Leitfaden für Programmierer, Internationalisierung - Lokalisierung.










































Seite 4                      Reliant UNIX 5.44               Gedruckt 11/98

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