MSGGEN(1) User Commands MSGGEN(1)
NAME
msggen - generate a machine independent formatted message catalog
SYNOPSIS
msggen [
-fls]
catfile [
msgfile]
DESCRIPTION
msggen merges the message text source file
msgfile into a machine
independent formatted message catalog
catfile. The file
catfile is
created if it does not already exist. If
catfile does exist, its
messages are included in the new
catfile. If set and message numbers
collide, the new message text defined in
msgfile replaces the old
message text currently contained in
catfile.
Non-ASCII characters must be UTF-8 encoded.
iconv(1) can be used to
convert to/from UTF-8.
OPTIONS
The following options are supported:
-f --format List the
printf(3C) format signature for each message in
catfile. A format signature is one line containing one
character for each format specification:
c char
d double
D long double
f float
h short
i int
j long long
l long
p void*
s string
t ptrdiff_t
z size_t
? unknown
-l --list List
catfile in UTF-8 msgfile form.
-s --set Convert the
catfile to a message set number and print the
number on the standard output.
OPERANDS
The following operands are supported:
catfile Machine independent formatted message catalog file.
msgfile Message text source file.
USAGE
Message text source files are in
gencat(1) format, defined as
follows. The fields of a message text source line are separated by a
single blank character. Any other blank characters are considered to
be part of the subsequent field. The
NL_* constants are defined in
one or both of
<limits.h> and
<nl_types.h>.
$ comment A line beginning with a
$ followed by a blank character is
treated as a comment.
$delset n comment This line deletes message set
n from an existing message catalog.
n denotes the set number
[1, NL_SETMAX]. Any text following the
set number is treated as a comment.
$quote c This line specifies an optional quote character
c, which can be
used to surround message-text so that trailing spaces or empty
messages are visible in a message source line. By default, or if
an empty
$quote directive is supplied, no quoting of message-text
is recognized.
$set n comment This line specifies the set identifier of the following messages
until the next
$set or end-of-file (
EOF) appears.
n denotes the
set identifier, which is defined as a number in the range
[1, NL_SETMAX]. Set numbers need not be contiguous. Any text
following the set identifier is treated as a comment. If no
$set directive is specified in a message text source file, all
messages are located in message set 1.
$translation identification YYYY-MM-DD[,...] Append translation information to the message catalog header.
Only the newest date for a given identification is retained in
the catalog. Multiple translation lines are combined into a
single, comma-separated list.
m message-text m denotes the message identifier, which is defined as a number in
the range
[1, NL_MSGMAX]. 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 a blank character field separator is present,
an empty string is stored in the message catalogue. 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. There are no
message-text length restrictions.
EXIT STATUS
0 Successful completion.
>0 One or more specified jobs does not exist.
EXAMPLES
Example 1: Using msggen
The following example generates a message catalog
xxx from the
message file
xxx.msg:
example% msggen xxx xxx.msg
AUTHORS
Glenn Fowler,
gsf@research.att.comATTRIBUTES
See
attributes(7) for descriptions of the following attributes:
+--------------------+-----------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+--------------------+-----------------+
|Interface Stability | Volatile |
+--------------------+-----------------+
SEE ALSO
gencat(1),
iconv(1),
msgcc(1),
printf(3C),
attributes(7) October 9, 2007 MSGGEN(1)