i

insertmsg(1)

insertmsg(1)

NAME

insertmsg - use ®ndstr(1) output to insert calls to catgets(3C)

SYNOPSIS

insertmsg [-h][-nnumber ] [-iamount ] [-snumber ] stringlist

DESCRIPTION

insertmsg examines the ®le stringlist, which is assumed to be the output of findstr after subsequent editing to remove any strings that do not need to be localized (see ®ndstr(1)). If the -hoption is speci®ed, insertmsg places the following lines at the beginning of each ®le named in stringlist:

#ifndef NLS

#define catgets(i,sn,mn,s) (s) #else NLS

#define NL_SETN number

#include <nl_types.h> #endif NLS

where number is a set number de®ned by the -soption; the default is 1. For each string in stringlist, insertmsg surrounds the string in the corresponding ®le with an expression of the form:

(catgets(catd,NL_SETN,msg_num,"default string"))

The default string is the original string referenced by the line in stringlist, and msg_num is replaced by the message number assigned to that string. The assigned message numbers begin with the number de®ned by the -noption and are incremented by the amount de®ned by the -ioption. The default is 1 for both the starting message number and the increment. If name.c is the ®le to be modi®ed, as speci®ed within the stringlist ®le, insertmsg places the modi®ed source in nl_name.c. The user must then manually edit the ®le nl_name.c to insert the following statements:

nl_catd catd;

catd = catopen("appropriate message catalog",0);

The data type nl_catd is de®ned in <nl_types.h> and catd is a parameter to the calls to catgets, which are inserted for each string from stringlist.

insertmsg also sends to the standard output a ®le that can be used as input to gencat (see gencat(1)).

EXTERNAL INFLUENCES

Environment Variables

LC_CTYPE determines the interpretation of text as single- and/or multi-byte characters.

LC_MESSAGES determines the language in which messages are displayed.

If LC_CTYPE or LC_MESSAGES is not speci®ed in the environment or is set to the empty string, the value of LANG is used as a default for each unspeci®ed or empty variable. If LANG is not speci®ed or is set to the empty string, a default of "C" (see lang(5)) is used instead of LANG. If any internationalization variable contains an invalid setting, insertmsg behaves as if all internationalization variables are set to "C". See environ(5).

International Code Set Support

Single- and multi-byte character code sets are supported.

DIAGNOSTICS

If insertmsg does not ®nd opening or closing double quotes where required in the strings ®le, it prints insertmsg exiting : lost in strings file and aborts. If this happens, check the strings ®le to ensure that the lines that have been kept there have not been altered.

WARNINGS

If the -hoption is not used, it may be necessary to manually add the following statement to the ®le created by insertmsg:

#include <nl_types.h>

insertmsg inserts a pointer to a static area that is overwritten on each call.

The insertmsg command is HP proprietary, not portable to other vendors' systems, and will not be provided in future HP-UX releases.

Section 1356

− 1 −

HP-UX Release 11i: December 2000