gencat
-generate a formatted message catalog
gencat [-m]
catfile msgfile
. . .
The gencat
utility merges the message text source file(s) msgfile
into a formatted message database catfile
. The database catfile
will be created if it does not already exist. If catfile
does exist its messages will be included in the new catfile
. If set and message numbers collide, the new message-text defined in msgfile
will replace the old message text currently contained in catfile
. The message text source file (or set of files) input to gencat
can contain either set and message numbers or simply message numbers, in which case the set NL_SETD([see nl_types
(5)])is assumed.
The format of a message text source file is defined in the list below. Note that the fields of a message text source line are separated by a single ASCII space or tab character. Any other ASCII spaces or tabs are considered to be part of the subsequent field.
$set n
comment
n
specifies the set identifier of the following messages until the next $set, $delset
or end-of-file appears. n must be a number in the range (1-{NL_SETMAX
}). Set identifiers within a single source file need not be contiguous. Any string following the set identifier is treated as a comment. If no $set
directive is specified in a message text source file, all messages will be located in the default message set. NL_SETD
.
$delset n
comment
n
from an existing message catalogue. Any string following the set number is treated as a comment. (Note: if n
is not a valid set it is ignored.)
$
comment
$
followed by an ASCII space or tab character is treated as a comment.
m
message-text
m
denotes the message identifier, which is a number in the range (1-{NL_MSGMAX
}). (Do not confuse this message text syntax with the -m
command line option described under NOTES
.) The message-text is stored in the message catalogue with the set identifier specified by the last $set
directive, and with message identifier m
. If the message-text is empty, and an ASCII space or tab field separator is present, an empty string is 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) is deleted from the catalogue. Message identifiers need not be contiguous. The length of message-text must be in the range (0-{NL_TEXTMAX
}).
$quote c
$quote
directive is supplied, no quoting of message-text will be recognized. Empty lines in a message text source file are ignored. Text strings can contain the special characters and escape sequences defined in the following table:
Description | Symbol | Escape 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 1, 2 or 3 octal digits, which are taken to specify the value of the desired character. If the character following a backslash is not one of those specified, the backslash is ignored.
Backslash followed by an ASCII newline character 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 is equivalent to:
1 This line continues to the next line
gencat
is supported as a BEA TUXEDO-supplied tool on UNIX and MS-DOS operating systems.
This version of gencat
produces a catalog that at run-time is read into malloc
'ed space. Shared catalogs available with some versions of gencat
are not available. On some systems, generation of malloc
'ed catalogs requires that the -m
option be specified. This option can be specified on the command line, but has no effect. malloc
'ed catalogs are the default; the -m
option is supported for compatibility only.
The catalog file generated by this command is limited in size to 64K. Larger catalog files will result in an error being reported by this command and no catalog file being generated.
nl_types
(5)