The term "internationalization" is formally defined by X/Open as a "provision within a computer program of the capability of making itself adaptable to the requirements of different native languages, local customs, and coded character sets," which means, essentially, that internationalized programs can run in any supported locale without having to be modified. A locale is a software environment that correctly handles the cultural conventions of a particular geographic area, such as China or France, and a language as it is used in that area. So by selecting a Chinese locale, for example, all commands, system messages, and keystrokes can be in Chinese characters and displayed in a way idiomatic to Chinese dialects.
Digital UNIX Version 4.0 is an internationalized operating system that not only allows users to interact with Digital UNIX Version 4.0 in their native language, but also supports a full set of application interfaces, referred to as the X/Open Worldwide Portability Interfaces (WPI), to enable software developers to write internationalized applications. The code came from the OSF and was enhanced by Digital.
The internationalization subsystem in Digital UNIX Version 4.0 is based on POSIX 1003.2 and Single UNIX specifications. Commands, utilities, and libraries (including the curses library) have been internationalized, and a set of enhanced US English message catalogs and message catalogs that supports Asian languages have been included in the base system. In addition, Digital UNIX Version 4.0 supports the X Input Method (XIM) and X Output Method(XOM) to facilitate input of local language characters, text drawing, measurement, and inter-client communication which is implemented according to the X11R6 specification.
Note that
Digital UNIX Version 4.0
also
supports
a
32 bit
wchar_t
datatype
which
in turn
enables support for a wide array
of codesets,
including the
full
ISO 10646
standard.
Table 10-1 lists the languages supported in Digital UNIX Version 4.0 and their corresponding locales. The locales are built using new internationalization utilities and are more robust than those offered on previous versions of the operating system. Note that in Digital UNIX Version 4.0, the content of the locale definitions has changed to align with new national profiles and registered locale definitions. Those marked with an asterisk are available as part of language-variant subsets which can be optionally installed.
Language | Locale Name |
Catalan * | ca_ES.ISO8859-1 |
Simplified Chinese/PRC * |
zh_CN.dechanzi
zh_CN.dechanzi@pinyin zh_CN.dechanzi@radical zh_CN.dechanzi@stroke |
Chinese/Hong Kong * |
zh_HK.big5
zh_HK.dechanyu zh_HK.dechanzi zh_HK.eucTW |
Traditional Chinese/Taiwan * |
zh_TW.big5
zh_TW.big5@chuyin zh_TW.big5@radical zh_TW.big5@stroke zh_TW.dechanyu zh_TW.dechanyu@chuyin zh_TW.dechanyu@radical zh_TW.dechanyu@stroke zh_TW.eucTW zh_TW.eucTW@chuyin zh_TW.eucTW@radical zh_TW.eucTW@stroke |
Czech * | cs_CZ.ISO8859-2 |
Danish | da_DK.ISO8859-1 |
Dutch | nl_NL.ISO8859-1 |
Belgian Dutch | nl_BE.ISO8859-1 |
US English/ASCII | en_US.8859-1 (C/POSIX) |
US English/ISO8859-1 | en_US.ISO8859-1 |
GB English | en_GB.ISO8859-1 |
Finnish | fi_FI.ISO8859-1 |
German | de_DE.ISO8859-1 |
Swiss German | de_CH.ISO8859-1 |
Greek | el_GR.ISO8859-7 |
French | fr_FR.ISO8859-1 |
Belgian French | fr_BE.ISO8859-1 |
Canadian French | fr_CA.ISO8859-1 |
Swiss French | fr_CH.ISO8859-1 |
Hebrew * | iw_IL.ISO8859-8 |
Hungarian | hu_HU.ISO8859-2 |
Icelandic | is_IS.ISO8859-1 |
Italian | it_IT.ISO8859-1 |
Japanese * |
ja_JP.eucJP
ja_JP.SJIS ja_JP.deckanji ja_JP.sdeckanji |
Korean * |
ko_KR.deckorean
ko_KR.eucKR |
Lithuanian * | ko_KR.eucKR |
Norwegian | no_NO.ISO8859-1 |
Polish | pl_PL.ISO8859-2 |
Portuguese | pt_PT.ISO8859-1 |
Russian | ru_RU.ISO8859-5 |
Slovak | sk_SK.ISO8859-2 |
Slovene * | sl_SIISO8859-2 |
Spanish | es_ES.ISO8859-1 |
Swedish | sv_SE.ISO8859-1 |
Thai * | th_TH.TACTIS |
Turkish | tr_TR.ISO8859-9 |
Note that you can switch languages or character sets as necessary and can even operate multiple processes in different languages or codesets in the same system at the same time.
For information on supported character sets, see the guide Writing Software for the International Market and reference pages for individual languages and codesets.
Digital UNIX Version 4.0 extends the base tty terminal driver subsystem to include additional BSD line disciplines and STREAMS tty modules for processing data in all languages. The line discipline or STREAMS modules sed to process Japanese, Chinese, and Korean, for example, provides the following support:
Digital UNIX Version 4.0 supports the iconv utility, which converts text from one locale's codeset to another, thereby assisting programmers in the writing of international applications.
Code conversion is also implemented in the terminal driver and printing subsystem to allow the use of terminals and printers with different codesets. Additionally, code conversion is implemented in mail utilities for mail interchange with systems using different codesets (see the man command for reference page displays) and in the X Window Toolkit for text input, drawing, and interclient communication. For more information on the iconv utility, see iconv_intro(5).
For information on all the languages supported by the international terminal subsystem, see the guide, Writing Software for the International Market.
The following sections briefly discuss additional internationalization functionality.
Digital UNIX provides a set of locales and and codeset convertors that supports the Unicode and ISO 10646 standards.The codeset convertor modules enable an application to convert between other supported codesets and UCS-4. The following UCS-4 locales are supported:
Language | Locale Name |
Simplified Chinese/PRC * |
zh_CN.dechanzi@pinyin@ucs4
zh_CN.dechanzi@radical@ucs4 zh_CN.dechanzi@stroke@ucs4 |
Chinese/Hong Kong * |
zh_HK.dechanyu@ucs4
zh_HK.dechanzi@ucs4 zh_HK.eucTW@ucs4 |
Traditional Chinese * |
zh_TW.dechanyu@ucs4
zh_TW.dechanyu@chuyin@ucs4 zh_TW.dechanyu@radical@ucs4 zh_TW.dechanyu@stroke@ucs4 zh_TW.eucTW@ucs4 zh_TW.eucTW@chuyin@ucs4 zh_TW.eucTW@radical@ucs4 zh_TW.eucTW@stroke@ucs4 |
Czech * | cs_CZ.ISO8859-2@ucs4 |
Danish | da_DK.ISO8859-1@ucs4 |
Dutch | nl_NL.ISO8859-1@ucs4 |
Belgian Dutch | nl_BE.ISO8859-1@ucs4 |
US English/ASCII | en_US.8859-1@ucs4i@ucs4 |
US English/ISO8859-1 | en_US.ISO8859-1@ucs4 |
GB English | en_GB.ISO8859-1@ucs4 |
Finnish | fi_FI.ISO8859-1@ucs4 |
German | de_DE.ISO8859-1@ucs4 |
Swiss German | de_CH.ISO8859-1@ucs4 |
Greek | el_GR.ISO8859-7@ucs4 |
French | fr_FR.ISO8859-1@ucs4 |
Belgian French | fr_BE.ISO8859-1@ucs4 |
Canadian French | fr_CA.ISO8859-1@ucs4 |
Swiss French | fr_CH.ISO8859-1@ucs4 |
Hebrew * | iw_IL.ISO8859-8@ucs4 |
Hungarian | hu_HU.ISO8859-2@ucs4 |
Icelandic | is_IS.ISO8859-1@ucs4 |
Italian | it_IT.ISO8859-1@ucs4 |
Japanese * |
ja_JP.SJIS@ucs4
ja_JP.deckanji@ucs4 |
Korean * | ko_KR.deckorean@ucs4 |
Norwegian | no_NO.ISO8859-1@ucs4 |
Polish | pl_PL.ISO8859-2@ucs4 |
Portuguese | pt_PT.ISO8859-1@ucs4 |
Russian | ru_RU.ISO8859-5@ucs4 |
Slovak | sk_SK.ISO8859-2@ucs4 |
Slovene * | sl_SIISO8859-2@ucs4 |
Spanish | es_ES.ISO8859-1@ucs4 |
Swedish | sv_SE.ISO8859-1@ucs4 |
Turkish | tr_TR.ISO8859-9a@ucs4 |
Universal | universal.utf8@ucs4 |
Digital UNIX also provides a function called fold_string_w(), which maps one Unicode string to another performing the specified Unicode transformations. For more information on the fold_string_w() function, see fold_string_w(3). For more information on Unicode support, see Unicode(5).
Digital UNIX provides support for the new ISO-C 1944 standard. This includes support for several new interfaces within libc as well as support within the new DEC C compiler.
The addition of these new routines provides a more complete coverage of routines that are wchar_t aware, which in turn allows Unicode to be more easily supported on the platform.
Digital UNIX supplies an internationalized Curses library in conformance with X/Open Curses, Issue 4. This provides functions for processing single-byte and multibyte characters. Multibyte characters may be in either wide-character (wchar_t) or complex-character (cchar_t) formats. The complex-character format provides for a single logical character made up of multiple wide characters. Some of the components of the complex character may be nonspacing characters.
For information on the syntax and effect of all Curses interfaces, see curses(3). For a description of the enhancements provided by the internationalized Curses routines, and their relationship to previous Curses routines, see the guide, Writing Software for the International Market.
Digital UNIX Version 4.0 supports the printing of plain text and PostScript files for a variety of languages and provides outline fonts for high quality printing on PostScript printers. For the printing of Asian languages whose font files are typically too large to fit in printer memory, Digital UNIX Version 4.0 makes use of a unique font-faulting technology which substantially reduces memory requirements on the supported PostScript printers. For more information, on printing, see i18n_printing(5) and Writing Software for the International Market.
The localedef utility allows programmers to create their own locales, compile their source, and generate a unique name for their new locale.
For more information on localedef, see the localedef(1) reference page.
The I18N Configuration Tool, available via the CDE Application Manager, is one of the System Administration Configuration tools. It provides a graphical interface for the system administrator to configure I18N-specific settings. It also provides a convenient way to see what countries, locales, fonts, and keymaps are supported on the host. I18nconfig can be used to remove unused fonts and country support installed on the system.
The following sections discuss special support in Digital UNIX Version 4.0 for ideogrammatic languages, like Chinese and Japanese.
Digital UNIX Version 4.0 supports the asort utility, an extension of the sort command, which allows characters of ideogrammatic languages, like Chinese and Japanese, to be sorted according to multiple collation sequences. For more information on the asort utility, see asort(1).
Digital UNIX Version 4.0 supports the Multilingual EMACS editor (MULE) for Asian languages. See MULE(1) for more information.
Digital UNIX Version 4.0 provides support for ideogrammatic languages in mailx, dtmail, MH, and comsat.
For more information on these mail utilities, see the corresponding reference pages.
Digital UNIX Version 4.0 provides support for creating user-defined characters (UDCs) for ideogrammatic languages, so that users can create and define character fonts and their attributes, including DECwindows fonts, with the cgen and cedit utilities. For more information on these utilities, see the appropriate reference pages.
Digital UNIX Version 4.0 also provides font rendering facilities so that X clients can use UDC databases through the X Server or font server to obtain bitmap fonts for user-defined characters.
For more information on user-defined characters, see Writing Software for the International Market.
Motif Version 1.2.3 takes advantage of many of the internationalization features of X11R6 and the C library to support locales. Motif Version 1.2.3 also supports the use of alternate input methods, which allows input of non-ISO Latin-1 keystrokes, and delivers an extensively rewritten XmText widget which supports multibyte and wide characters and on-the-spot input style.
Motif supports multibyte and wide characters through the use of the X multibyte functions, and the localized C run-time functions (such as strlen). In addition, the compound string routines have been modified to include the X11R6 XFontSet functionality to allow for the creation of localized strings.
The User Interface Language (UIL) supports the creation of localized UID files through the -s compile-time switch on the UIL compiler, which causes the compiler to construct localized strings.
Alternate input methods can be specified by a resource on the VendorShell widget. Widgets that are parented by a Shell class widget can take advantage of this resource and register themselves as using a specific method for input.
The following sections discuss additional Motif internationalization functionality.
The following lists contain the widgets in the Motif Toolkit and in the DECwindows Extensions to the Motif Toolkit that support local language characters I/O capabilities and local language message displays.
Note that the Motif UIL compiler has been extended to support local language characters in UIL files.
CDE becomes the default desktop for Digital UNIX V4.0. Digital UNIX provides internationalization support for the following CDE clients:
Digital UNIX Version 4.0 provides internationalization support for the following DECwindows X clients: