FAQs of Locales and Languages
1. What is a locale?
In the Windows operating systems, a locale is a set of user preference information related to the user's language, environment and/or cultural conventions. This information is represented as a list of values used to determine the correct input language, keyboard layout, sorting order, and the formats used for numbers, dates, currencies and time. In order for a particular locale to be available for selection, the appropriate language group must be installed.
Windows 2000 and Windows XP includes support for 126 and 136 different locales, respectively, ensuring that users around the world can configure their systems to use the correct formats for their own language and region.
Locale support in Windows is provided through a number of different locale settings: the user locale, input locales, and the system locale. Taken together, these settings offer users a great deal of flexibility when setting up a machine.
2. What is a language group?
A language group is a set of all the keyboard layouts, IMEs, fonts (TrueType or bitmap), font links, language packs (LPKs) and codepage translation tables needed by the system to support the given group of languages. The list of installed language groups thus controls which user, input, and system locales that can be selected by a user.
Installation of a language group on Windows 2000 copies (but does not activate) the necessary keyboard files, Input Method Editors (IMEs), TrueType font files, bitmap font files, and National Language Support (.nls) files to the system. Adding a language group also adds registry values for Font Linking and installs scripting engines for Complex Script languages (Arabic, Hebrew, Indic, and Thai).
3 How many language groups are there?
There are 17 language groups including the Western Europe and United States language group, which always installs as the default for Windows 2000 and cannot be removed. The 17 groups are:
Arabic; Armenian; Baltic; Central Europe; Cyrillic; Georgian; Greek; Hebrew; Indic; Japanese; Korean; Simplified Chinese; Thai; Traditional Chinese; Turkish; Vietnamese; and Western Europe and United States.
Any number and combination of language groups can be installed on any Windows 2000 version.
4. How can I add language groups in Windows 2000?
On the Start menu, click Settings, and then click Control Panel.
In the Language settings for the system list box, check the language groups you want, and then click OK.
Additional files will be copied to your machine. You may need to provide the Windows 2000 CD or the network share name.
After reboot, support for new languages will become available.
5. What is a language collection?
In Windows XP, Microsoft has consolidated the 17 language groups to 3 collections that contain 3 or more language groups. This is done to simplify installation, and improve user experience when working with multiple languages.
For more information about Language Collections, see New Locale and Language Features in Windows XP.
6. How can I add a language collection in Windows XP?
On the Start menu, click Control Panel.
Click Regional and Language Options, and then click the Languages tab.
Under Supplemental language support, check the language collection(s) you want, and then click OK.
Additional files will be copied to your machine. You may need to provide the Windows XP CD or the network share name.
After reboot, support for new languages will become available.
7. Which language groups support which locales?
See Locale IDs, Input Locales, and Language Collections for Windows XP and Windows Server 2003.
8. What is the User Locale?
The user locale, implemented in Windows 9x, Windows NT 4.x, Windows 2000, and Windows XP, is a per-user setting that determines the formats used by default to display dates, times, currency, and numbers, and the sorting order of text. A user locale is specified for each and every account created on a computer.
Although available user locales are often listed as a language (sometimes in combination with a country), a user locale is NOT a language setting, and has nothing to do with input languages, keyboard layouts, codepages or user interface languages. The Hebrew user locale, for example, only contains data related to the standard regional settings of Israel, not to the Hebrew language.
Note, however, that changing the user locale will change the language used to display the names of days and months. If the long date format is used to display "November 25, 1998," the language used in the "November" string is dependent on the selected user locale.
Changing the user locale has an immediate effect (a reboot is not required), and all running processes are notified of the change via a WININI change message.
An English user using English Windows 2000 works in Rome, Italy. The user selects Italian (Italy) as the user locale, because he wants to use the formatting standards for Italy in his day-to-day work.
9. What is the Default User Locale?
The default user locale is the user locale setting applied by default to each new account created on a machine. Note that an account's user locale can be changed after the account has been created.
10. What are Input Locales?
Input locales, implemented in Windows 95/98, Windows NT 4.x, Windows 2000, and Windows XP, are pairings of an input language with an input method (which might be a particular keyboard layout, an Input Method Editor, or speech-to-text converter, for example). Specifically, an input locale describes the language being entered, and how it is being entered.
Input locales are added on a per-user basis. For each account it is possible to install multiple input locales and switch between them when entering text, allowing for the composition of multilanguage documents.
Adding or removing input locales has an immediate effect (a reboot is not required). Note that only those input locales for which appropriate language groups have been installed will be available to choose from.
An Arabic user using Arabic Windows 2000 wants to type an e-mail message in a mixture of Arabic and Russian. The user already has an Arabic input locale, and installs a second input locale for the Russian language (with an Arabic keyboard layout). When entering text, the user is able to switch between the Arabic input locale and the Russian input locale.
Click here for information about adding an input locale.
11. What is the System Locale?
The system locale (sometimes referred to as the system default locale), determines which ANSI, OEM and MAC codepages and associated bitmap font files are used as defaults for the system. These codepages and fonts enable non-Unicode applications to run as they would on a system localized to the language of the system locale.
These codepages and fonts are used by non-Unicode applications to emulate operation on a system localized to the language selected as the system locale. Note that only non-Unicode applications are affected by this setting.
The system locale is implemented in Windows 95/98, Windows NT 4.x, Windows 2000, and Windows XP. (Under Windows 95/98, the system locale is fixed based on the language version and cannot be changed. Under Windows NT 4.x, the system locale is pre-selected by the language version, but can later be modified in the Regional Settings Control Panel.)
Windows 2000 supports system locales for any supported locale on all language versions. As the name "system locale" implies, this is a system-wide setting that affects all users, and therefore requires administrator privileges to change.
Changing the system locale requires a reboot. Note that only those system locales for which appropriate language groups have been installed will be available to choose from.
Examples of system locale usage:
A German user wants to run a non-Unicode Japanese application that was designed for Japanese Windows 95. The user has to select Japanese as the system locale to do this. Note: Non-Unicode German applications will not run flawlessly anymore. German umlauts will not be displayed correctly.
The same German user wants to type Japanese text in a non-Unicode German application. The user selects Japanese as the system locale. Note: Non-Unicode German applications will not run flawlessly anymore. German umlauts will not be displayed correctly.
An Arabic user wants to type Arabic, French, and English in a non-Unicode Arabic application. The user should choose one of the Arabic system locales.
12. Which of the Windows 2000 locales do not have codepages?
These seven locales do not have codepages, and are supported in Windows 2000 solely through Unicode:
13. Which of the Windows XP locales do not have codepage support?
In addition to the seven locales from the previous question, the following six additional locales are solely supported in Windows XP through Unicode:
Punjabi (Gurmukhi - India)