www.werkema.com  [About|Software|Family|Web Biz|U101|Links|Contact] 
 
SpaceMonger 2.1

[ News Blog | Forum | History | Screen Shots | Features | Languages | Treemaps | Wink | Q & A | Subscribe! ]

Languages

Don't like English? SpaceMonger 2.1 supports foreign languages for its user-interface. Its foreign-language support is handled entirely via external XML files so that new languages can be readily added, even after the program is released.

We've gotten many offers from people to translate the user-interface into various languages. Here's the current list (last updated April 1, 2004):

LanguageTranslator
CatalanPep I.
CzechLibor T.
DutchMarc R.
(additional offers from Victor V., Jelle J., Rob M., Sebastian G., and Ernst-Jan S.)
English(me, obviously)
FrenchYannick B. / Maxim A.
(additional offers from Nino B., Loïc B., Sébastien L., and Hervé M.)
GermanMarc R.
(additional offers from Victor V., Nino B., Daniel)
GreekAntony G.
HungarianAdam T.
ItalianGiovanni S.
NorwegianAnders M.
(additional offers from Kenneth A., Roger F.)
PolishMichaƂ Sz.
Portugese (Portugal)(offer from Tao K.; need to verify if still valid)
Portugese (Brazil)Eduardo F.
RomanianOctavian C.
RussianDmitry
Spanish (Spain)Cesar M.
(additional offer from German G.)
Spanish (Latin America)Jesus C.
SwedishAndrew P.

(Last names and e-mail addresses have been omitted to ensure the anonymity of these helpful folks.)

Obviously, I will only include a given language if the translator actually supplies it to me (since although I speak some languages other than English, it was painfully obvious in v1.4 that I don't speak them well enough to be a translator). If the translator decides not to provide a translation for whatever reason, I will not be obligated to find a replacement. In other words, the list above represents offers, but is not legally binding.

Translators will be provided with a copy of the software a few weeks before it is released to the rest of the world to give them time to produce the translation.

If you translate the user-interface to a language we don't have a translation for, that is worth a free license: in other words, if you translate the user-interface, you don't have to pay for your license. If you translate the user's manual, that is a more difficult task, since it's a lot more words, so we will consider a (good) translation of the manual to be worth up to two free licenses. So, for example, if you translate everything and produce a really good translation for everything, you could earn yourself three free licenses total.

If you would like to contribute a translation for a language that isn't listed above, please contact me, and we will be happy to accept it!


Several people have asked about how the language information will be provided, and what they will have to do to perform the translation. Well, it's actually pretty easy, and intentionally easy.

You do not need to make changes to the source code to make a translation; in fact, you don't even need to know anything at all about programming. The program reads all of its text from an external XML file. You will simply need to copy one of the existing XML files and make your changes to it. XML files are text files; you can manipulate them using Windows Notepad if you want. For example, if you see this:

<string name="OK">OK</string> <string name="Cancel">Cancel</string> <string name="Apply">Apply</string>

You might change it to something like this if you speak French:

<string name="OK">OK</string> <string name="Cancel">Annuler</string> <string name="Apply">Appliquer</string>

Or you might change it to something like this if you speak Spanish:

<string name="OK">OK</string> <string name="Cancel">Cancelar</string> <string name="Apply">Aplicar</string>

Or you might change it to something like this if you speak Polish (!):

<string name="OK">OK</string> <string name="Cancel">Anuluj</string> <string name="Apply">Zastosuj</string>

Thus in the translator's early-release version, there will only be "us.xml" and "uk.xml" files, for U.S. and British English, respectively. You would provide me with a file named "fr.xml" for French, or "es.xml" for Spanish, or "pl.xml" for Polish.

The program is smart enough to rearrange things on screen if your words are longer or shorter than the original words. There is usually a wide range of tolerance for variation in word length; however, you still may have to shorten some phrases if they are too long to fit, which is why you will need a copy of SpaceMonger to test your translation.

SpaceMonger is also smart enough to be able to find your translation file and include it without any changes to its own code, so that languages can even be added after SpaceMonger is released. (Obviously, it's better to add them before the final release, but allowing them to be added later makes the program far more flexible when new translations appear: the new translations can be provided as a download from my web site, or from anyone else's web site.)

A typical language file has about 1000 strings (words, phrases, or sentences) that need to be translated. That may sound like a lot, but you should be able to translate it in about two or three hours. The language file contains all of the words used by SpaceMonger, including buttons, menus, tooltips, and even error messages.

Right now, the language file is incomplete because the program is incomplete; I am still adding and removing strings in it as I change the program. That is why there is little purpose in translating it now: you would simply have to change it again anyway by the final release. However, if you would like to see what a language file looks like, I have posted a copy of the U.S. English file on-line so that you can get a feel for what is necessary.

By the way, SpaceMonger also supports partial language files, which are useful for adding dialects of a language. For example, the "uk.xml" file, which provides British English, is not a complete copy of the U.S. English file with some of the text changed. Instead, it inherits the U.S. English file directly, and only includes strings that are different between the two. The U.S. English file has 500 strings in it; the U.K. English file only has about 50.

So if you would like to include a regional translation, or a dialect, of your language, I will accept that too: however, because dialects are so easy to translate once the main language is translated, dialects are usually not worth a free license. Sorry. But if you write a dialectical translation and want to have it included with the release, I will be happy to include it.

These are some languages for which dialectical translations might be useful:

  • U.K. English / U.S. English
  • Spain Spanish / Central America Spanish
  • France French / Canada French / Carribbean French / South Pacific French / Africa French
  • Portugal Portugese / Brazil Portugese
  • ... and doubtless there are others.

(Because it is also useful to those of you who know how to read it, I have also posted the translation file DTD on-line. If you don't know how to read a DTD, it's not important, and SpaceMonger never directly uses this DTD file: it's only included for external validation tools. If you do know how to read a DTD, it may help you do your translation a little more quickly. To learn more about DTDs and XML, read the W3C's XML 1.0 standard document. Please note that I will not answer any questions about this DTD; it is supplemental data, not normative data.)

 
Copyright © 2000-2004 by Sean Werkema. Comments? Questions? E-mail webmaster@werkema.com
Click here for this site's Privacy Policy and Terms of Service.