This was originally posted in the documentation mailinglist: Translating the OGo Application.
OK, first the bad news ... OGo currently only works out of the box with ISO-Latin-1/15 (except for the mailer). A result of code being written by a German company for the Germany market, sigh.
Now the good news: the OGo API uses Unicode almost everywhere, so there is high chance that the issue will be resolved quite quickly.
So that "issue" classifies translations into three, general categories:
a) 8-Bit, ISO-Latin-1/15
- French, German, English, Spanish, Portugese, .. ?
b) 8-Bit Encoding
- it *might* be easy to switch the standard 8-bit encoding of
libFoundation from ISO-Latin-1 to something else (eg ISO-Latin-2)
- Czech, Russion, Korean, Turkish ?
c) Unicode
- to get Unicode working all over OGo we need
- either to port OGo from libFoundation to gstep-base, which has
full Unicode suport
- or extend libFoundation to fully support Unicode
- then we need to check all the code whether everything is working
- Japanese, Chinese
Now another bad thing, I can't really help on any of this (no time for that). We already got some people from the GNUstep project which are interested in porting OGo to gstep-base (AFAIK even a Chinese developer), so chances are very good that we are rapidly improving on b) and c) soon.
OK. All this doesn't need to stop people from starting to localize (ISO-Latin-1/15 guys in no case ;-). The most important thing to localize (and almost the only one except for very few images) are the so called ".strings" files.
Those files define a mapping from a key used in the HTML template to the actual label which is rendered. The strings files are located in
WebUI/Resources
in the source tree which you can get as a .bz2 from the website. Inside the Resources directory you already find two language projects:
English.lproj and German.lproj
If you want to localize, just add one, eg:
Spanish.lproj
After that you should simply copy all the strings file from the English.lproj:
cp English.lproj/*.strings Spanish.lproj/ and you can start translation of each file ;-) They contain mappings like: Monday = "Monday" eg for German you would change that to: Monday = "Montag"
So, that's it. If everything is translated, send me the new .lproj ;-)
To try out any changes, you may need to add your language to the "SkyLanguages" default. Eg:
$ Defaults write OpenGroupware SkyLanguages \
'(English,French,Spanish,German,Czech)'
Thanks a LOT for your help,
Helge