Provided by: manpages-posix_2.16-1_all bug

NAME

       gencat - generate a formatted message catalog

SYNOPSIS

       gencat catfile msgfile...

DESCRIPTION

       The  gencat  utility  shall  merge  the message text source file msgfile into a formatted message catalog
       catfile. The file catfile shall be created if it does not already  exist.  If  catfile  does  exist,  its
       messages  shall  be included in the new catfile. If set and message numbers collide, the new message text
       defined in msgfile shall replace the old message text currently contained in catfile.

OPTIONS

       None.

OPERANDS

       The following operands shall be supported:

       catfile
              A pathname of the formatted message catalog. If '-' is specified, standard output shall  be  used.
              The format of the message catalog produced is unspecified.

       msgfile
              A pathname of a message text source file. If '-' is specified for an instance of msgfile, standard
              input  shall  be  used.  The  format  of  message  text  source  files  is defined in the EXTENDED
              DESCRIPTION section.

STDIN

       The standard input shall not be used unless a msgfile operand is specified as '-' .

INPUT FILES

       The input files shall be text files.

ENVIRONMENT VARIABLES

       The following environment variables shall affect the execution of gencat:

       LANG   Provide a default value for the internationalization variables that are unset or  null.  (See  the
              Base  Definitions  volume of IEEE Std 1003.1-2001, Section 8.2, Internationalization Variables for
              the  precedence  of  internationalization  variables  used  to  determine  the  values  of  locale
              categories.)

       LC_ALL If  set  to  a  non-empty  string value, override the values of all the other internationalization
              variables.

       LC_CTYPE
              Determine the locale for the interpretation of sequences of bytes of text data as characters  (for
              example, single-byte as opposed to multi-byte characters in arguments and input files).

       LC_MESSAGES
              Determine  the locale that should be used to affect the format and contents of diagnostic messages
              written to standard error.

       NLSPATH
              Determine the location of message catalogs for the processing of LC_MESSAGES .

ASYNCHRONOUS EVENTS

       Default.

STDOUT

       The standard output shall not be used unless the catfile operand is specified as '-' .

STDERR

       The standard error shall be used only for diagnostic messages.

OUTPUT FILES

       None.

EXTENDED DESCRIPTION

       The content of a message text file shall be in the format defined as follows. Note that the fields  of  a
       message  text source line are separated by a single <blank>. Any other <blank>s are considered to be part
       of the subsequent field.

       $set  n comment

              This line specifies the set identifier of the following messages until the next  $set  or  end-of-
              file  appears.  The  n  denotes  the set identifier, which is defined as a number in the range [1,
              {NL_SETMAX}]  (see  the  <limits.h>  header  defined   in   the   Base   Definitions   volume   of
              IEEE Std 1003.1-2001).  The  application  shall  ensure  that  set  identifiers  are  presented in
              ascending order within a single source file, but need not be contiguous. Any string following  the
              set  identifier shall be treated as a comment. If no $set directive is specified in a message text
              source file, all messages shall be  located  in  an  implementation-defined  default  message  set
              NL_SETD   (see   the   <nl_types.h>   header   defined   in   the   Base   Definitions  volume  of
              IEEE Std 1003.1-2001).

       $delset  n comment

              This line deletes message set n from an existing message catalog.  The n denotes  the  set  number
              [1, {NL_SETMAX}]. Any string following the set number shall be treated as a comment.

       $  comment
              A line beginning with '$' followed by a <blank> shall be treated as a comment.

       m message-text

              The  m  denotes the message identifier, which is defined as a number in the range [1, {NL_MSGMAX}]
              (see the <limits.h> header).  The message-text shall be stored in the message catalog with the set
              identifier specified by the last $set directive, and with message identifier m.  If  the  message-
              text  is  empty,  and a <blank> field separator is present, an empty string shall be stored in the
              message catalog. If a message source line has a message number, but neither a field separator  nor
              message-text,  the  existing  message with that number (if any) shall be deleted from the catalog.
              The application shall ensure that message identifiers are in ascending order within a single  set,
              but need not be contiguous. The application shall ensure that the length of message-text is in the
              range [0, {NL_TEXTMAX}] (see the <limits.h> header).

       $quote  n
              This  line  specifies an optional quote character c, which can be used to surround message-text so
              that trailing spaces or null (empty) messages are visible in a message source line.   By  default,
              or if an empty $quote directive is supplied, no quoting of message-text shall be recognized.

       Empty  lines  in  a  message  text  source  file shall be ignored. The effects of lines starting with any
       character other than those defined above are implementation-defined.

       Text strings can contain the special characters and escape sequences defined in the following table:
                                         Description         Symbol   Sequence
                                         <newline>           NL(LF)   \n
                                         Horizontal-tab      HT       \t
                                         <vertical-tab>      VT       \v
                                         <backspace>         BS       \b
                                         <carriage-return>   CR       \r
                                         <form-feed>         FF       \f
                                         Backslash           \        \\
                                         Bit pattern         ddd      \ddd

       The escape sequence "\ddd" consists of backslash followed by one, two, or three octal digits, which shall
       be taken to specify the value of the desired character. If the character following a backslash is not one
       of those specified, the backslash shall be ignored.

       Backslash ( '\' ) followed by a <newline> is also used to continue a string on the following line.  Thus,
       the following two lines describe a single message string:

              1 This line continues \
              to the next line

       which shall be equivalent to:

              1 This line continues to the next line

EXIT STATUS

       The following exit values shall be returned:

        0     Successful completion.

       >0     An error occurred.

CONSEQUENCES OF ERRORS

       Default.

       The following sections are informative.

APPLICATION USAGE

       Message  catalogs  produced  by  gencat  are  binary  encoded,  meaning  that their portability cannot be
       guaranteed between different types of machine. Thus, just as C programs need to be  recompiled  for  each
       type of machine, so message catalogs must be recreated via gencat.

EXAMPLES

       None.

RATIONALE

       None.

FUTURE DIRECTIONS

       None.

SEE ALSO

       iconv() , the Base Definitions volume of IEEE Std 1003.1-2001, <limits.h>, <nl_types.h>

COPYRIGHT

       Portions of this text are reprinted and reproduced in electronic form from IEEE Std 1003.1, 2003 Edition,
       Standard  for  Information Technology -- Portable Operating System Interface (POSIX), The Open Group Base
       Specifications Issue 6, Copyright (C) 2001-2003 by the Institute of Electrical and Electronics Engineers,
       Inc and The Open Group. In the event of any discrepancy between this version and the  original  IEEE  and
       The  Open  Group  Standard,  the  original  IEEE and The Open Group Standard is the referee document. The
       original Standard can be obtained online at http://www.opengroup.org/unix/online.html .

IEEE/The Open Group                                   2003                                             GENCAT(P)