Next: , Previous: Introduction, Up: General Issues



1.2 Localized Strings

To deal with MOZ's requirement to be able to output to users in multiple languages, a MOZ programmer should never use Oz strings for output at all. Instead a structure called a Localized String is used. This is a record, with a feature for each language (using whatever short code is defined in the Server object, such as en for English). Each feature holds a string that is the string that should be output for a user that uses that language. An example:

     string(
         en: "A sample string.\n"
         lb: ".i le mupli seltcidu\n"
     )

However, for output of strings from program code (as opposed to output of strings set by players directly, such as those stored in names and descriptions), you shouldn't enter these strings directly. Instead, you should first add the strings to the LanguageStrings object using the ***UNFINISHED*** command. The tell method on the Player object will treat any atom by itself as a key into the database on LanguageStrings, making it easy to use these strings in your code.

The reason to do this is it makes it much easier for others to translate everything in the MOZ to a new language if everything is collected on one object and easily retrievable.