Next: , Previous: , Up: Design Choices and Extensions   [Contents][Index]

2.29 Localization

CMUCL support localization where messages can be presented in the native language. This is done in the style of gettext which marks strings that are to be translated and provides the lookup to convert the string to the specified language.

All messages from CMUCL can be translated but as of this writing, the only complete translation is a Pig Latin translation done by machine. There are a few messages translated to Korean.

In general, translatable strings are marked as such by using the functions intl:gettext and intl:ngettext or by using the reader macros _ or _N. When loading or compiling, such strings are recorded for translation. At runtime, such strings are looked in and the translation is returned. Doc strings do not need to be noted in any way; the are automatically noted for translation.

By default, recording of translatable strings is disabled. To enable recording of strings, call intl:translation-enable.