LOCALEDEF(1) User Commands LOCALEDEF(1)
NAME
localedef - define locale environment
SYNOPSIS
localedef [
-c] [
-v] [
-U] [
-f charmap]
[
-w widthfile] [
-i sourcefile]
[
-u code_set_name]
localenameDESCRIPTION
The
localedef utility converts source definitions for locale categories
into a format usable by the functions and utilities whose operational
behavior is determined by the setting of the locale environment
variables; see
environ(7).
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.
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.
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 following options are supported:
-c Creates permanent output even if warning messages
have been issued.
-v Emit verbose debugging output on standard output.
-U Ignore the presence of character symbols that have
no matching character definition. This
facilitates the use of a common locale definition
file to be used across multiple encodings, even
when some symbols are not present in a given
encoding.
Support for this option is an illumos extension.
-f charmap Specifies the pathname of a file containing a
mapping of character symbols and collating element
symbols to actual character encodings. This option
must be specified if symbolic names (other than
collating symbols defined in a
collating-symbol keyword) are used. If the
-f option is not
present, the default character mapping will be
used.
-w widthfile The path name of the file containing character
screen width definitions. If not supplied, then
default screen widths will be assumed, which will
generally not account for East Asian encodings
requiring more than a single character cell to
display, nor for combining or accent marks that
occupy no additional screen width.
The support for width files is an illumos
extension.
-i sourcefile The path name of a file containing the source
definitions. If this option is not present, source
definitions will be read from standard input.
-u code_set_name Specifies the name of a codeset used as the target
mapping of character symbols and collating element
symbols whose encoding values are defined in terms
of the ISO/IEC 10646-1: 2000 standard position
constant values. See NOTES.
OPERANDS
The following operand is supported:
localename Identifies the locale. If the name contains one or more
slash characters,
localename will be interpreted as a path
name where the created locale definitions will be stored.
This capability may be restricted to users with appropriate
privileges. (As a consequence of specifying one
localename,
although several categories can be processed in one
execution, only categories belonging to the same locale can
be processed.)
OUTPUT
localedef creates a directory of files that represents the locale's data.
The contents of this directory should generally be copied into the
appropriate subdirectory of /usr/lib/locale in order the definitions to
be visible to programs linked with libc.
ENVIRONMENT VARIABLES
See
environ(7) for definitions of the following environment variables
that affect the execution of
localedef:
LANG,
LC_ALL,
LC_COLLATE,
LC_CTYPE,
LC_MESSAGES, and
NLSPATH.
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 Warnings or errors occurred and no output was created.
If an error is detected, no permanent output will be created.
FILES
/usr/lib/locale/localename/ The directory containing locale data.
ATTRIBUTES
See
attributes(7) for descriptions of the following attributes:
+--------------------+-----------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+--------------------+-----------------+
|Interface Stability | Standard |
+--------------------+-----------------+
SEE ALSO
locale(1),
iconv_open(3C),
nl_langinfo(3C),
strftime(3C),
attributes(7),
charmap(7),
environ(7),
extensions(7),
locale(7),
standards(7)WARNINGS
If warnings occur, permanent output will be created if the
-c option was
specified. The following conditions will cause warning messages to be
issued:
o 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).
o If optional keywords not supported by the implementation are
present in the source.
NOTES
When the
-u option is used, the
code_set_name option-argument is
interpreted as a name of a codeset to which the ISO/IEC 10646-1: 2000
standard position constant values are converted. Both the ISO/IEC
10646-1: 2000 standard position constant values and other formats
(decimal, hexadecimal, or octal) are valid as encoding values within the
charmap file. The codeset can be any codeset that is supported by the
iconv_open(3C) function on the system.
When conflicts occur between the charmap specification of
code_set_name,
mb_cur_max, or
mb_cur_min and the corresponding value for the codeset
represented by the
-u option-argument
code_set_name, the
localedef utility fails as an error.
When conflicts occur between the charmap encoding values specified for
symbolic names of characters of the portable character set and the
character encoding values defined by the US-ASCII, the result is
unspecified.
April 9, 2016
LOCALEDEF(1)