mkmsgs(1)mkmsgs(1)NAMEmkmsgs - Creates message file for use by gettxt
SYNOPSISmkmsgs [-o] [-i locale] inputstrings msgfile
The mkmsgs command is used to create a file of text strings that can be
accessed using the text retrieval tools (see gettxt(1) and srchtxt(1).
It will take, as input, a file of text strings for a particular geo‐
graphic locale (see setlocale(3C)). It then creates a file of text
strings in a format that can be retrieved by gettxt(1). By using the -i
option, one can install the created file under the
/usr/lib/locale/locale/LC_MESSAGES directory (locale corresponds to
the language in which the text strings are written). The name of the
file that contains the original text strings. The name of the output
file where mkmsgs writes the strings in a format that is readable by
gettxt(1). The name of msgfile can be up to 14 characters in length,
but may not contain either \0 (null) or the ASCII code for / (slash) or
: (colon). Installs msgfile in the /usr/lib/locale/locale/LC_MESSAGES
directory. Overwrites msgfile, if it exists.
The input file contains a set of text strings for the particular geo‐
graphic locale. The text strings are separated by a new line character.
Nongraphic characters must be represented as alphabetic escape
sequences. Messages are transformed and copied sequentially from
inputstrings to msgfile. To generate an empty message in msgfile,
leave an empty line at the correct place in inputstrings.
Strings can be changed simply by editing the file inputstrings. New
strings must be added only at the end of the file; then a new msgfile
file must be created and installed in the correct place. If this pro‐
cedure is not followed, the retrieval function will retrieve the wrong
string and software compatibility is broken.
The following example shows an input message source file C.str:
File %s:\t cannot be opened\n
%s: Bad directory\n
The following command uses the input strings from C.str to cre‐
ate text strings in the appropriate format in the file UX in the
current directory: $ mkmsgs C.str UX
If this directory is identified with the XPG4 environment vari‐
able NLSPATH, gettxt(1) is able to access the user specified
message file. However, the use of NLSPATH has some restrictions.
For instance, if the current directory in the above example is
/tmp/C, then the user would set NLSPATH to /tmp/%L/%N. The
default substitution for %L is C, and the substitution for %N is
the msgfile argument to gettxt(1). Thus: gettxt(1) UX:3 would
retrieve message 3 when the user's current directory is not
The following command, if executed by the super-user, uses the
input strings from FR.str to create text strings in the appro‐
priate format in the file UX in the directory
/usr/lib/locale/french/LC_MESSAGES/UX:. msgfile-i french FR.str
These text strings would be accessed if you had set the environ‐
ment variable LC_MESSAGES=french and then invoked one of the
text retrieval tools listed at the beginning of the DESCRIPTION
Message files created by mkmsgs(1M).
This command produces [Tru64 UNIX] message catalog binary formats. It
creates a symbolic link from /usr/lib/locale/<locale>/LC_MESSAGES (of
SVR4) to /usr/lib/nls/msg/<locale> of [Tru64 UNIX] .
Commands: gettxt(1) and srchtxt(1)
Functions: setlocale(3C) in the Programmer's Guide