61 (71)
Copyright © Nokia Mobile Phones 2000. All rights reserved.
When dealing with characters, always remember that a byte is not equal to a character (the smallest component of a
written language) and that a character is not equal to a glyph (the shape representation of a character). Some code
sets use several bytes to encode one character, some characters are decomposed into different parts, and sometimes a
character can have different representations depending on the context.
14.6 Use international system functions
Get to know the operating system and programming language used. Take advantage of the generic system support for
international conventions (culturally correct sorting, searching, character typing, string mapping, currency and
number formats, date and time strings, and calendar formats) whenever possible and save yourself a lot of trouble.
Writing efficient code yourself is no use if you have to change it for each and every localised version.
14.7 Use unique logical names
Use unique logical names, also referred to as string identifiers, to identify your strings, even if the system does not
force you to do that. Also, unique logical names must be used with translation databases and other sophisticated
localisation tools.
Use a clear naming convention to identify the various string types that is, in order to be able to distinguish between
texts that correspond to dialog, menus, buttons and messages.
Agree with localisation about localisation file formats beforehand.
14.8 Provide instructions for localisation
Clarify the context of strings to be localised by providing comments in the resource files or separate text files. For
example:
• Does the string appear in a dialog, menu, button or a message?
• When does this note appear?
• Does the string ‘‘Mail’’ mean the verb ‘‘to mail’’ or the noun ‘‘a mail’’?
• What are the parameters of this message and where can they be found?
• What other texts and graphics are shown simultaneously with this string?
• Are there space limitations on this string?
Hide or identify strings that should not be localised. Put these strings in a separate resource or use a standard way to
name identifiers.
14.9 Check English
Use correct language and consistent terminology when composing messages and other translatable strings. Have a
linguist or a professional writer edit your texts before translation.