| United States-English |
|
|
|
![]() |
HP-UX 11.0 - 11i Internationalization Features White Paper > Chapter 2 Encoding
CharactersEuro Support |
|
Euro support is provided through locale support for the ISO 8859-15 character set. ISO 8859-15 is a newly ratified character set that differs from ISO 8859-1 by supporting eight new characters. Specific enhancements are provided to allow Euro display, input, and processing capabilities. Fourteen new locales, listed in Table 2-1 “New ISO 8859-15 Locales”, have been created based on ISO 8859-15. Table 2-1 New ISO 8859-15 Locales
Source files for supported European locales are also supplied. Applications must choose to enable ISO 8859-15 support by setting the LANG environment variable to the desired locale. ISO 8859-15 support is part of HP-UX and is available to all platforms, but is not automatically turned on for any application. No special configuration is required, and there are no compatibility issues involved with the addition of this new feature. Locales are installed, based on which current language filesets are already installed on a target system. The LC_MONETARY environment variable is set to the euro for all locales listed in Table 2-1 “New ISO 8859-15 Locales” except C.iso885915 and fr_CA.iso885915. Standard euro formatting rules apply to ALL locales where this environment variable is set to the euro. As a result, users may encounter a change to the decimal and thousands separators for the currency, whereas decimal and thousands separators outside the monetary area stay the same as in previous locales. For example, in the French locale, the thousands separator is a space and the decimal point is a comma. However, the international standard for the thousands separator for the euro currency is a period. A user who has the LC_MONETARY locale category set to fr_FR.iso885915@euro sees the following:
Users can change the LC_MONETARY value to their national currency unit. Users enable ISO 8859-15 automatically in some locales when logging in through the CDE. New functionality was introduced in CDE product to support input and display of the euro symbol. These changes are for both workstations and the servers. New functionality has been added to Xlib to support input and display of the euro symbol. This was done by adding internal support for the ISO8859-15 character set, as well as support of UTF8 on 11.0. When an Xlib application is started, Xlib internals determine if the locale is set to an ISO8859-15 character set. If it is, Xlib performs character lookups using the eight new symbols present in the ISO8859-15 character set. Currently, only applications linked with X11R6 (X Window version X11 Release 6) support the ISO8859-15 character set. Older X11 versions are not currently supported. New iconv tables exist to support conversion from/to ISO 8859-15 and ISO 8859-1, ucs2, and utf8. The additional disk space in HP-UX 11.0 is 6.42 MB. No additional memory is required. An important aspect of euro support is the ability to print the new symbol on LaserJet printers using existing standard lp(1) model files.The ISO8859-15 font set is resident on the HP 4500 Color LaserJet Printer, that contains the euro symbol at position A4 (hexadecimal). The data file must contain this code to print the euro symbol. A new utility is being provided to download the fonts to the printer RAM. These fonts will then reside in the printer’s RAM until the next power cycle. Use the lp option -ocs9N (or -oscs9N) to select the ISO 8859-15 character set as the primary (or secondary) character set. For example: lp -dprinter_name -ocs9N -oother_options print_filename
HP-UX 11i v1 provides system level support for the Unicode 2.1/ISO 10646 character set. Hewlett-Packard support for Unicode provides a basis of enabling heterogeneous interoperability for all geographic areas. ISO 10646 is an industry standard for defining a single encoding that uniquely encodes all the characters of the modern world. Unicode 2.1 is the companion specification to ISO 10646. Unicode specification at revision 2.1 includes the euro symbol at 0x20AC codepoint. Euro support to input, store, retrieve, display, and print the euro symbol has been added for this release. In addition to the base functionalities, HP-UX 11i v1 is providing the following new functionalities for the euro:
Specific enhancements are provided to locale, localedef, libc, Xlib and iconv to achieve those new functionalities. A subset of existing European locales has been modified to support dual currency to meet euro standard monetary formatting. Table 2-2 “Supplied utf8 Locales Supporting Dual Currency” displays the list of euro locales supplied that support dual currency: Table 2-2 Supplied utf8 Locales Supporting Dual Currency
Table 2-3 “Supplied utf8 Locale Sources Supporting Dual Currency” gives the list of locale sources being supplied that include dual currency support: Table 2-3 Supplied utf8 Locale Sources Supporting Dual Currency
To build these locales, refer to the localedef(1M) man page. When the LANG and/or LC_* environment variables are set to a euro supported locale, the national monetary formatting rules are used. The LC_MONETARY environment variable should be set to the euro-supported locale name with the @euro modifier to use/access euro monetary formatting rules. For example, to specify the euro as the currency for French, use the following settings: LANG=fr_FR.utf8 Similarly, to specify French francs: LANG=fr_FR.utf8 To access the monetary unit and the related monetary formatting rules programmatically, toggle between the alternate monetary units via setlocale(3C) calls: /* Handle euro in strfmon(), ... */ When the LC_MONETARY environment variable is set to euro, the formatting in the monetary category uses euro standard formatting rules, whereas other categories use the local convention in formatting. As a result, users may encounter a change to the decimal and thousands separators for the currency, whereas decimal and thousands separators outside the monetary area, like in numeric numbers, remain in local convention format. For example, in the French locale the thousands separator is a space and the decimal point is a comma. However, the international standard for the thousands separator for the euro currency is a period. So, a user that has the LC_MONETARY locale category set to fr_FR.utf8@euro sees the following behavior:
The localedef(1m) command has been enhanced to handle the @euro modifier in order to build dual currency locale(s). The lp(1)model scripts for the dual currency locales have been enhanced to print the euro character. New iconv converter tables are available to support conversion from utf8, ucs2, and iso885915 to IBM euro-enabled codepages and PC codepages: Table 2-4 utf8 and IBM's Codepages (EBCDIC)
Table 2-5 ucs2 and IBM's Codepages (EBCDIC)
Table 2-6 iso885915 and IBM's Codepages (EBCDIC)
Table 2-7 utf8 and PC Codepages (EBCDIC)
Table 2-8 ucs2 and PC Codepages (EBCDIC)
To use euro monetary formatting rules, the LC_MONETARY environment variable must be set to the euro supported locale name with the @euro modifier appended to it. The size requirement for locale sources and binaries is 20.1 MB, and 191 KB for the converter tables. There are no compatibility issues involved with the addition of these features. Applications using UTF-8 locales should see improved collation performance compared with UTF-8 locales delivered in previous releases. In June 2000, Greece joined the European Union Member countries in adopting the Euro as their currency, with the complete transition effective as of January 1, 2002. Systems level support has been provided to allow for the input, storage, retrieval, display, and printing of the Euro within the two supported Greek locales: el_GR.utf8 and el_GR.iso88597. Greek Euro support has been provided in HP-UX 11i Version 1.6 through updates to locales, iconv converters, fonts, Xlib and CDE. The level of Euro support provided for Greek is similar to that provided for Western European countries as of HP-UX 11.0 Extension Pack (May 1999) and HP-UX 11.11:
The el_GR.utf8 and el_GR.iso88597 locales have been enhanced with the addition of four new characters, including the Euro. Table 2-9 “New Characters” illustrates these four new characters. Table 2-9 New Characters
The el_GR.utf8 locale binaries are now shipping as part of the release. Previously, only the el_GR.utf8 source file was provided. When the LANG and/or LC_* environment variables are set to these Euro-enabled locales, the national monetary formatting rules are used to continue support for legacy (Drachma-based) applications. To access the monetary formatting rules for the Euro within the respective locale, the LC_MONETARY environment variable should be set to the desired locale name with the @euro modifier. For example, to specify the Euro as the currency in the Greek UTF-8 locale, the following environment variables should be set to enable monetary formatting, such as used by strfmon(3C): LANG=el_GR.utf8 The following Greek iconv converters have been updated to support the four new characters added to ISO-88597 (see Table 2-9 “New Characters” in the Euro-enabled Greek Locales section) in conversions with UTF-8 and Unicode: iso87 <-> ucs2 The following iconv converters are now available to support data conversions between Greek EBCDIC (code page 875) and UTF-8/Unicode: greee <-> ucs2 ISO-88597 and Greek EBCDIC converters are enhanced to support the Euro and are aligned to match the expected mappings as defined by IBM for code page 875. The following converter table has been modified to align with the expected mappings: greee <-> iso87 Table 2-10 “Modified Code Mapping Changes From ISO-88597” shows the modified code mapping changes made in converting from ISO-88597 to Greek EBCDIC/ Code Page 875 (iso87=greee). Table 2-10 Modified Code Mapping Changes From ISO-88597
Table 2-11 “Modified Code Mapping Changes From Greek EBCDIC/Code Page 875” shows the modified code mapping changes made in converting from Greek EBCDIC / Code Page 875 to ISO-88597 (greee=iso87). Table 2-11 Modified Code Mapping Changes From Greek EBCDIC/Code Page 875
Table 2-12 “Characters with No Code Points Defined within EBCDIC Code Page 875” shows three characters that currently have no Greek EBCDIC Code Page 875 code points defined. Consequently, in converting from either ISO-88597, Unicode, or UTF-8, these characters are mapped to the Undefined Character for Greek EBCDIC (0xFF). These 3 characters are subject to data loss in round-trip conversions between these codesets. Table 2-12 Characters with No Code Points Defined within EBCDIC Code Page 875
X11R6 Xlib has been enhanced to support the Euro when running in el_GR.iso88597 and el.GR.utf8 locales. New font glyphs have been added to support the four new characters in ISO-88597. CDE is providing XlocaleDB for the el_GR.utf8 locale, and with this new XlocaleDB, el_GR.utf8 uses updated ISO-88597 fonts for displaying the Euro. Additional keymap support has been added to allow users of Greek-Latin keyboards to input the Euro symbol. The AltGr+5 sequence can be used with this new keymap (PS2_DIN_Greek_Euro) to input the Euro character. Alternatively, users with US English keyboards can use the PS2_DIN_US_English_Euro keymap where the Euro symbol is mapped to AltGr+4. CDE provides support to input and display the Euro in the iso8859-7 locale. The additional three characters do not have keybindings in any Xserver keymaps. The reason for this is that there is no standard definition among the X Window vendors on which key sequences should activate those other symbols. As a result, they are assigned key bindings whenever the mappings are clarified by the industry The standard lp(1) command is used to print Euro and Greek characters on LaserJet printers. The LaserJet printers should have the resident Greek character/font set with the Euro symbol included. Current LaserJet printer models with this support include the LaserJet 1220 and the LaserJet 2200. Use the lp option -ocs12N to select the Greek character/font set. For example: lp -dprinter_name -ocs12N -oother_options print_filename The base Greek Euro offering (installed in all systems), requires approximately 14.2 MB of additional disk space. No additional memory is required for running in either the el_GR.iso88597 or el_GR.utf8 locales. iconv conversion between ISO-88597 and Greek EBCDIC (CP 875) yield different results than in previous releases. In 11i Version 1.6, these tables have been corrected to provide the correct conversion mappings. It is recommended that all Greek-encoded legacy persistent data stored on previous versions of HP-UX be converted to ISO-88597 from Greek EBCDIC before being moved to an 11i Version 1.6 system. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||