GENCAT(1)                  OpenBSD Reference Manual                  GENCAT(1)

NAME
     gencat - NLS catalog compiler

SYNOPSIS
     gencat output-file input-file [...]

DESCRIPTION
     The gencat utility merges the text NLS (National Language Support) in
     input-file into a formatted message catalog file output-file. The file
     output-file will be created if it does not already exist.  If output-file
     does exist, its messages will be included in the new output-file. If set
     and message numbers collide, the new message text defined in input-file
     will replace the old message text currently contained in output-file.

INPUT FILES
     The format of a message text source file is defined below.  Note that the
     fields of a message text source line are separated by a single space
     character; any other space characters are considered to be part of the
     field contents.

     $set n comment
       This line specifies the set identifier of the following messages until
       the next $set or end-of-file appears.  The argument n is the set iden-
       tifier which is defined as a number in the range [1,NL_SETMAX]. Set
       identifiers must occur in ascending order within a single source file,
       but need not be contiguous.  Any string following a space following the
       set identifier is treated as a comment.  If no $set directive is speci-
       fied in a given source file, all messages will be located in the de-
       fault message set NL_SETD.

     $del n comment
       This line deletes messages from set n from a message catalog.  The n
       specifies a set number.  Any string following a space following the set
       number is treated as a comment.

     $ comment
       A line beginning with $ followed by a space is treated as a comment.

     m message-text
       A message line consists of a message identifier m in the range
       [1,NL_MSGMAX]. The message-text is stored in the message catalog with
       the set identifier specified by the last $set directive, and the mes-
       sage identifier m. If the message-text is empty, and there is a space
       character following the message identifier, an empty string is stored
       in the message catalog.  If the message-text is empty, and if there is
       no space character following the message identifier, then the existing
       message in the current set with the specified message identifier is
       deleted from the catalog.  Message identifiers must be in ascending or-
       der within a single set, but need not be contiguous.  The message-text
       length must be in the range [0,NL_TEXTMAX].

     $quote c
       This line specifies an optional quote character c which can be used to
       surround message-text so that trailing space or empty messages are vis-
       ible in message source files.  By default, or if an empty $quote direc-
       tive is specified, no quoting of message-text will be recognized.

     Empty lines in message source files are ignored.  The effect of lines be-
     ginning with any character other than those described above is undefined.

     Text strings can contain the following special characters and escape se-
     quences.  In addition, if a quote character is defined, it may be escaped
     as well to embed a literal quote character.

           \n      line feed
           \t      horizontal tab
           \v      vertical tab
           \b      backspace
           \r      carriage return
           \f      form feed
           \\      backslash
           \ooo    octal number in the range [000, 377]

     A backslash character immediately before the end of the line in a file is
     used to continue the line onto the next line, e.g.,

           1 This line is continued \
           on this line.

     If the character following the backslash is not one of those specified,
     the backslash is ignored.

     The gencat utility exits 0 on success or >0 if an error occurred.

SEE ALSO
     catclose(3), catgets(3), catopen(3)

STANDARDS
     The gencat utility is compliant with the X/Open Portability Guide Issue 4
     (``XPG4'') standard.

AUTHORS
     This manual page by Ken Stailey updated and revised by
     Terry Lambert.

BUGS
     A message catalog file created from a blank input file can not be re-
     vised; it must be deleted and recreated.

OpenBSD 3.0                      June 11, 1997                               2
