xgettext [-ns] [-a [-x exclude-file]] [-c comment-tag] [-d default-domain] [-j] [-m prefix] [-M suffix] [-p pathname] -| filename...
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 in filename or the standard input if `−' is specified on the command line. The .po file can be used as input to the msgfmt(1) utility, which produces a binary form of the message 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 default output 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 that the 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 comment lines. 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.
The following options are supported:
# # File: filename, line: line-number
xgettext 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 in <libintl.h> already 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.
|March 23, 1999||OmniOS|