User Commands xgettext(1)
NAME
xgettext - extract gettext call strings from C programs
SYNOPSIS
xgettext [-ns] [-a [-x exclude-file]] [-c comment-tag]
[-d default-domain] [-j] [-m prefix] [-M suffix]
[-p pathname] -| filename...
xgettext -h
DESCRIPTION
The xgettext utility is used to automate the creation of
portable message files (.po). A .po file contains copies of "C" strings that are found in ANSI C source code infilename or the standard input if `-' is specified on the
command line. The .po file can be used as input to themsgfmt(1) utility, which produces a binary form of the mes-
sage file that can be used by application during run-time.
xgettext writes msgid strings from gettext(3C) calls in
filename to the default output file messages.po. The defaultoutput file name can be changed by -d option. msgid strings
in dgettext() calls are written to the output file domainname.po where domainname is the first parameter to the dgettext() call.By default, xgettext creates a .po file in the current
working directory, and each entry is in the same order thatthe strings are extracted from filenames. When the -p option
is specified, the .po file is created in the pathname directory. An existing .po file is overwritten. Duplicate msgids are written to the .po file as commentlines. When the -s option is specified, the .po is sorted
by the msgid string, and all duplicated msgids are removed. All msgstr directives in the .po file are empty unless the-m option is used.
OPTIONS The following options are supported:-n Add comment lines to the output file
indicating file name and line number in the source file where each extracted string is encountered. These linesappear before each msgid in the follow-
ing format:SunOS 5.11 Last change: 23 Mar 1999 1
User Commands xgettext(1)
# # File: filename, line: line-number
-s Generate output sorted by msgids with
all duplicate msgids removed.-a Extract all strings, not just those
found in gettext(3C), and dgettext() () calls. Only one .po file is created.-c comment-tag The comment block beginning with
comment-tag as the first token of the
comment block is added to the output.po file as # delimited comments. For
multiple domains, xgettext directs com-
ments and messages to the prevailing text domain.-d default-domain Rename default output file from
messages.po to default-domain .po.
-j Join messages with existing message
files. If a .po file does not exist, it is created. If a .po file does exist, new messages are appended. Any duplicate msgids are commented out inthe resulting .po file. Domain direc-
tives in the existing .po file are ignored. Results not guaranteed if the existing message file has been edited.-m prefix Fill in the msgstr with prefix. This
is useful for debugging purposes. To make msgstr identical to msgid, use an empty string ("") for prefix.-M suffix Fill in the msgstr with suffix. This
is useful for debugging purposes.-p pathname Specify the directory where the output
files will be placed. This option over-
rides the current working directory.SunOS 5.11 Last change: 23 Mar 1999 2
User Commands xgettext(1)
-x exclude-file Specify a .po file that contains a
list of msgids that are not to be extracted from the input files. Theformat of exclude-file is identical to
the .po file. However, only the msgiddirective line in exclude-file is used.
All other lines are simply ignored.The -x option can only be used with the
-a option.
-h Print a help message on the standard
output.ATTRIBUTES
See attributes(5) for descriptions of the following attri-
butes:____________________________________________________________
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
|_____________________________|_____________________________|
| Availability | text/locale ||_____________________________|_____________________________|
SEE ALSO
msgfmt(1), gettext(3C), attributes(5) NOTESxgettext is not able to extract cast strings, for example
ANSI C casts of literal strings to (const char *). This is unnecessary anyway, since the prototypes inalready specify this type. In messages and translation notes, lines greater than 2048 characters are truncated to 2048 characters and a warning message is printed to stderr. SunOS 5.11 Last change: 23 Mar 1999 3