NAME
localedef — define
locale environment
SYNOPSIS
localedef |
[-c][-f
charmap][-i sourcefile]
name |
DESCRIPTION
The localedef utility converts source
definitions for locale categories into a format usable by the functions and
utilities whose operational behaviour is determined by the setting of the
locale environment variables defined in the XBD specification,
Locale . It is implementation-dependent whether users have
the capability to create new locales, in addition to those supplied by the
implementation. Since the symbolic constant {POSIX2_LOCALEDEF} is defined on
all XSI-conformant systems, the system supports the creation of new
locales.
The utility reads source definitions for one or more locale
categories belonging to the same locale from the file named in the
-i option (if specified) or from standard input.
The name operand identifies the target locale. The utility supports the creation of public , or generally accessible locales, as well as private , or restricted-access locales. Implementations may restrict the capability to create or modify public locales to users with the appropriate privileges.
Each category source definition is identified by the corresponding environment variable name and terminated by an END category-name statement. The following categories are supported. In addition, the input may contain source for implementation-dependent categories.
- LC_CTYPE
- Defines character classification and case conversion.
- LC_COLLATE
- Defines collation rules.
- LC_MONETARY
- Defines the format and symbols used in formatting of monetary information.
- LC_NUMERIC
- Defines the decimal delimiter, grouping and grouping symbol for non-monetary numeric editing.
- LC_TIME
- Defines the format and content of date and time information.
- LC_MESSAGES
- Defines the format and values of affirmative and negative responses.
OPTIONS
The localedef utility supports the XBD
specification,
Utility
Syntax Guidelines .
The following options are supported:
- -c
- -c (null)
- Create permanent output even if warning messages have been issued.
- -f charmap
- Specify the pathname of a file containing a mapping of character symbols
and collating element symbols to actual character encodings. The format of
the charmap is described under the XBD specification,
Character Set Description File . This option must be
specified if symbolic names (other than collating symbols defined in a
collating-symbol keyword) are used. If the
-foption is not present, an implementation-dependent character mapping will be used. - -i inputfile
- The pathname of a file containing the source definitions. If this option is not present, source definitions will be read from standard input. The format of the inputfile is described in the XBD specification, Locale Definitions .
OPERANDS
The following operand is supported:
- name
- Identifies the locale. See the XBD specification, Locale for a description of the use of this name. If the name contains one or more slash characters, name will be interpreted as a pathname where the created locale definitions will be stored. If name does not contain any slash characters, the interpretation of the name is implementation-dependent and the locale will be public. This capability may be restricted to users with appropriate privileges. (As a consequence of specifying one name , although several categories can be processed in one execution, only categories belonging to the same locale can be processed.)
STDIN
Unless the -i option is specified, the
standard input must be a text file containing one or more locale category
source definitions, as described in the XBD specification,
Locale Definitions . When lines are continued using the
escape character mechanism, there is no limit to the length of the
accumulated continued line.
INPUT FILES
The character set mapping file specified as the charmap
option-argument is described under the XBD specification,
Character Set Description File . If a locale category
source definition contains a copy statement, as defined in the XBD
specification, Locale , and the copy statement names a
valid, existing locale, then localedef will behave
as if the source definition had contained a valid category source definition
for the named locale.
ENVIRONMENT VARIABLES
The following environment variables affect the execution of
localedef :
LANG- Provide a default value for the internationalisation variables that are
unset or null. If
LANGis unset or null, the corresponding value from the implementation-dependent default locale will be used. If any of the internationalisation variables contains an invalid setting, the utility will behave as if none of the variables had been defined. LC_ALL- If set to a non-empty string value, override the values of all the other internationalisation variables.
LC_COLLATE- (This variable has no affect on
localedef; the POSIX locale will be used for this category.) LC_CTYPE- Determine the locale for the interpretation of sequences of bytes of text
data as characters (for example, single- as opposed to multi-byte
characters in arguments and input files). This variable has no affect on
the processing of
localedefinput data; the POSIX locale is used for this purpose, regardless of the value of this variable. LC_MESSAGES- Determine the locale that should be used to affect the format and contents of diagnostic messages written to standard error.
NLSPATH- Determine the location of message catalogues for the processing of LC_MESSAGES .
ASYNCHRONOUS EVENTS
Default.
STDOUT
The utility will report all categories successfully processed, in an unspecified format.
STDERR
Used only for diagnostic messages.
OUTPUT FILES
The format of the created output is unspecified. If the name operand does not contain a slash, the existence of an output file for the locale is unspecified.
EXTENDED DESCRIPTION
None.
EXIT STATUS
The following exit values are returned:
- 0
- No errors occurred and the locales were successfully created.
- 1
- Warnings occurred and the locales were successfully created.
- 2
- The locale specification exceeded implementation limits or the coded character set or sets used were not supported by the implementation, and no locale was created.
- 3
- The capability to create new locales is not supported by the implementation.
- >3
- Warnings or errors occurred and no output was created.
CONSEQUENCES OF ERRORS
If an error is detected, no permanent output will be created.
If warnings occur, permanent output will be created if the
-c option was specified. The following conditions
will cause warning messages to be issued:
- If a symbolic name not found in the charmap file is used for the descriptions of the LC_CTYPE or LC_COLLATE categories (for other categories, this will be an error condition).
- If the number of operands to the order keyword exceeds the {COLL_WEIGHTS_MAX} limit.
- If optional keywords not supported by the implementation are present in the source.
Other implementation-dependent conditions may also cause warnings.
APPLICATION USAGE
The charmap definition is optional, and is contained outside the
locale definition. This allows both completely self-defined source files,
and generic sources (applicable to more than one codeset). To aid
portability, all charmap definitions must use the same symbolic names for
the portable character set. As explained in the XBD specification,
Character Set Description File , it is
implementation-dependent whether or not users or applications can provide
additional character set description files. Therefore, the
-f option might be operable only when an
implementation-dependent charmap is named.
EXAMPLES
None.
FUTURE DIRECTIONS
None.
SEE ALSO
locale(1) , the XBD specification, Locale Definitions .