Support for multiple languages
EMu supports multiple languages. All prompts, menus, button and data can be displayed in the language selected by the user. For example, if you have English and French speakers in your institution, they can search, display and manipulate data in their preferred language.
It has always been possible in EMu to store and display data in multiple languages in the same field. For instance, your institution can specify that your data consists of English text followed by French text with a delimiter marking the end of one language and the start of another. The default delimiter is ;:;
(i.e. semicolon colon semicolon). For example:
hat;:;chapeau
indicates that hat
is in one language and chapeau
is in another language.
A number of EMu facilities need to understand what languages are used and in what order they are stored. The spell checker, for instance, must be able to determine what languages are available and in what order so that the correct dictionary can be loaded and used against the correct values. EMu uses the Supported Registry entry to calculate how many languages are supported, what those languages are, and in what order they are stored. For example:
System
|
Setting
|
Language
|
Supported
|
0;1
|
specifies that two languages are supported, English (International) and French (language 0
= English (International) and language 1 = French), and that they are stored in that order.
Given a data value of hat;:;chapeau
and the previous Registry entry we see that hat is in English (International) and chapeau is in French.
It is important to understand that the Supported Registry entry also defines the order in which the language data is stored within EMu. If the previous Supported Registry entry was changed to:
System
|
Setting
|
Language
|
Supported
|
1;0
|
the value hat
would then be treated as French and the value chapeau as English. When planning to use EMu to store multiple languages it is very important to define the order of the languages before entering data into the system. Once data has been entered, any changes to the language order will require existing data to be exported, manipulated (swapping the order of the data) and imported. While this is possible it is far easier to leave the order in which languages are stored unchanged once set.
Note: There is an important difference between the storage and the display of language data in EMu: once defined using the Supported Registry entry, the order in which language data is stored in EMu cannot be changed easily. As we'll see however, it is a simple matter to change the order in which language data is displayed in the EMu client.
Adding one or more languages is a simple matter however, and only requires adding the relevant language code(s) to the end of the Registry entry. In this case there is no need for any data manipulation. For example, if Arabic support was needed, our earlier Supported Registry entry would simply be changed to:
System
|
Setting
|
Language
|
Supported
|
0;1;12
|
where 12
is the language code for Arabic.
When data is displayed in EMu it is possible to show values for all languages or for an individual language. The setting used to control which languages are displayed is found on the Language tab of the EMu Options box:
If a system only supports one language, the Data drop list and Display Order are disabled. The Data alternatives allow users to decide how data should be displayed within modules in EMu.
In a multi-language environment it is possible to alter data while a single language is displayed. Any data entered into a field will only update the value of the language selected:
- When the All Languages option is selected, users may now select the order in which languages are displayed (but not, it is important to keep in mind, the order in which language data is stored in EMu, which is defined by the Supported Registry entry). This allows users who are dominant in a particular language to display this language first with other languages following.
- User may now alter data while a single language is displayed. Any data entered into a field will only update the value of the language selected.
- When displaying data in a single language and a value does not exist for a given field, the value of the first filled language may be displayed. The text is shown in a user selectable colour (grey by default) to indicate that it is not associated with the current language. When the field is entered, the text is removed, allowing data to be entered.
A number of data entry helpers always display all languages in the user defined order to assist data entry. For example, if a Lookup List is displayed, all languages are always shown so that users may select the correct entry based on context. This is particularly important where one term in a given language has multiple terms in another language.
Seven Registry entries control how language data is stored and displayed within EMu.
Note: With the exception of the Supported Registry entry these entries are only applicable in an EMu system that supports more than one language: they have no effect in a single language system.
The Registry entries are: