Translating DimensioneX
into your language
KB Article n. 012
Date: 7 Jan 2005
Updated for: DimensioneX 5.5.0
Abstract
This article explains how to translate DimensioneX and
produce a localized version of the user interface (messages and controls)
Localized versions
DimensioneX can output messages to the end user, and display
controls in any language. In practice, most of the displayed messages
are taken from the following file:
(XXX is a language code, such as eng for english)
Locate this file in the dimensionex installation system
folder, and the translate the correct parts according to the instructions below.
This task is very simple.
Important! When saving the messages file you should ensure
that it is saved by using the UTF-8 encoding. The following is what you get
when you do "Save As..." using Textpad 4.5.Please note the drop down
list at the bottom of the dialog, here you specify UTF-8 instead of
ANSI/ASCII:
Please note that for this operation you shouldn't use Windows
Notepad. As long as we know, it can load files saved in UTF-8 but it cannot save
in UTF-8 format. In our downloads section you can find two text editors both of
which are OK for this purpose.
If, for any reason, you intend to use the ANSI ASCII text
format, you can however do so by inserting the setting:
econding=ansi
In the messages file. This way, DimensioneX will load and
interpret the ASCII file correctly. Please consider that for extended charsets
this will make your life harder becuase each character will need to be converted
from native charset into an ASCII escape sequence, requiring to use a native2ascii
utility.
Selecting the charset
The most important setting in the messages file is the
following line:
# CHARSET
charset=ISO-8859-1
Here you should change this setting by specifying the correct
charset for your country. For instance, you can use windows-1252 for
Western-European countries, euc-kr for Korean. The complete list can be
found at this URL:
http://www.w3.org/International/O-charset-lang.html
Translating messages
The msgs_XXX.properties file is a Java standard properties file. It contains a series of assignments,
placed one for each line, of the form:
key=value
You have to edit the part at the right of the equal sign.
Comments begin with a # sign, and will be ignored by the game engine.
Translating is not always easy if you cannot figure out where and how the
message will appear. Hence, a certain experience playing a DimensioneX game will
help.
Pay attention to the following two cases:
- The game engine may add automatically to some messages
names to their left or right. For example the message 115 "Could not
move" will be completed by the game engine by adding an object name to
its right. For instance the game engine may use this message like this:
Could not move the trash can
Of course, your mother language syntax may not accept that
the object name is placed at the end of the sentence. In this case, please
post a message in the forum, so the game engine can be fixed to suit your
language too.
- The game engine may replace placeholders $1, $2 with actual
object names. For example, the message 131 "I cannot put $1 into
$2" may be modified by the game engine in reply to a PUT command and
displayed like this:
I cannot put an apple into the
trash can
Here, you simply keep the placeholders in your translated
phrase so that object names are insterted at the right place.
After translating, test your localized messages file by
configuring DimensioneX to load it instead of the english ones. This is done by
modifying the worldnav.properties file you find in the dimensionex system
folder.
Troubleshooting
If your messages don't display properly in the users' browser,
try adding the following setting to your messages file:
displaymode=special
which will enable an alternate display mode on DimensioneX.
This setting has solved display problems for a few charsets such as Russian.
Send us your work!
We are looking forward to receive localized versions of the
messages and the client script. Submit your translated
files to us, and you will become one the DimensioneX
project contributors.
|