This Natural profile parameter is required to enable Unicode and code
page support for various Unicode settings, for example, if variables with
format U or the statement MOVE ENCODED
are to
be used. It corresponds to the NTCFICU
macro in the parameter module
NATPARM
.
Possible settings | See CFICU Parameter Syntax. | |
---|---|---|
Default setting | ON or OFF |
Enables or disables the Unicode and code page support.
The default value is |
Dynamic specification | yes | The parameter CFICU can only be specified
dynamically. In the Natural parameter module
NATPARM , the macro
NTCFICU
is used instead.
|
Specification within session | no |
Notes:
CFICU=ON
is enforced when profile parameter
CP
is set to
any value other than OFF
.
The following topics are covered below:
The CFICU
profile parameter is specified as
follows:
CFICU=(ON,keyword-subparameter=value,keyword-subparameter=value,...) |
Or:
CFICU=ON |
Or:
CFICU=(OFF,keyword-subparameter=value,keyword-subparameter=value,...) |
Or:
CFICU=OFF |
The NTCFICU
macro is specified as follows:
NTCFICU ON, * CNVNORM=value, * COLLATE=value, * COLNORM=value, * CPOPT=value, * DATFILE=value, * LOCALE=value1_value2
Or:
NTCFICU ON
Or:
NTCFICU OFF
CNVNORM
|
COLLATE
|
COLNORM
|
CPOPT
|
DATFILE
|
LOCALE
CNVNORM=value
activates/deactivates normalization before conversion.
Value | Explanation |
---|---|
ON |
Enable normalization before conversion. |
OFF |
Disable normalization before conversion.
Note: This is the default value. |
Notes:
U+00E4
or by using a combining character
as U+0061
, U+0308
. Conversion to a code page
considers the combined "ä" (U+0061 U+0308
) as two
code points and produces an "a" and a substitution character, if
U+0308
is no valid character of the target code page.
Normalization before conversion creates one code point U+00E4
from
the combined code points U+0061 U+0308
and the subsequent
conversion will deliver the result "ä".
MOVE U TO A
or DISPLAY U
,
when the output device is a terminal emulation. The additional operation
consumes of course additional storage as well as additional CPU time.
COLLATE=value
determines the
collation service used.
Value | Explanation |
---|---|
ON |
Use Locale ID and ICU's collation services to
compare Unicode strings.
This is the default value. |
OFF |
Use ICU's simple Unicode compare. |
Note:
Collation is the process of ordering units of textual information
(alphabetic sorting). Collation is usually specific to a particular
language.
Examples:
The character "Ä" is sorted in German locale between A and "B", but in Swedish locale it is sorted after "Z".
In Lithuanian, "y" is sorted between "i" and "k".
COLNORM=value
can be used to
enable or disable the normalization check.
Value | Explanation |
---|---|
ON |
Check for un-normalized text. |
OFF |
Disable check for un-normalized text.
This is the default value. |
Notes:
COLLATE
is set to ON
.
CPOPT=value
can be used to
optimize the conversion performance.
Value | Explanation |
---|---|
ON |
Use internal translation tables instead of ICU functions, if possible. |
OFF |
Use ICU functions in any case.
This is the default value. |
Note:
By default, a conversion from alpha to Unicode format and vice versa
is performed by calling ICU functions. Certain code pages are mapping
characters to Unicode with 1:1 relationship. In this case, the conversion
performance can be increased by using internal
translation tables rather than ICU functions.
DATFILE=value
can be used to
define the name of an optional data library.
Value | Explanation |
---|---|
1 - 8 characters or OFF |
The name of the data library. |
OFF |
No additional data libraries are defined. The
default data library is used, which is part of the ICU nucleus module.
This is the default value. |
Notes:
RCA
and
RCALIAS
for more
information).
LOCALE=value1_value2
determines the Locale ID.
Value | Explanation |
---|---|
value1_value2 |
|
en_US |
This is the default value. |
Note:
The Locale ID is used by ICU's Collation Service to consider
language and even region-dependent features of collation. The language code of
the Locale ID follows ISO639, and the region code follows ISO 3166.
en_US |
English (United States) |
en_UK |
English (United Kingdom) |
de_DE |
German (Germany) |
de_AT |
German (Austria) |
de_CH |
German (Switzerland) |
sv_SE |
Scandinavian (Sweden) |
CFICU=(COLNORM=ON,LOCALE='de_DE',DATFILE=TEST15)
NTCFICU COLNORM=ON, * LOCALE=de_DE, * DATFILE=TEST15