Hi,
I've just completed a tool for converting resource files (.rc) to Gettext PO. http://translate.sourceforge.net/wiki/toolkit/rc2po This should allow many more FOSS translators to add translations to Wine, hopefully before the 1.0 release.
In some ways this is a response to some issues raised in the 'Translations and Wine 1.0' thread: http://thread.gmane.org/gmane.comp.emulators.wine.devel/58000 further into this email I offer some comments on the issues raised in that thread. My suggestion is to deploy a Pootle server: http://translate.sourceforge.net/wiki/pootle/index
The new RC tool, rc2po, is part of the Translate Toolkit, a general translation conversion toolkit and localisation library. http://translate.sourceforge.net/wiki/toolkit/index
I've cut 1.2-alpha1 for those who want to give it a spin. We've just started work on v1.2 so the toolkit is mature, started in 2002, and the alpha status is simply an indication that we've got quite a while before 1.2 official. Download it from here: http://translate.sourceforge.net/snapshots/
Status of rc2po: ---------------- * Its very new - I've done roundtrip testing and some translating in ummm pig latin :) but will begin more serious Afrikaans translation soon. So I expect to see some bugs. * It can handle: DIALOG*, MENU, LANGUAGE, STRINGTABLE * You can't change the dialog sizes - I have some ideas of how we could do this in PO but its not implemented at all
How it works: ------------- Make POT files: rc2po -P some.rc some.pot Recover old translations: rc2po -t some.rc translated.rc translated.po Make rc files: po2rc --lang=LANG_XXX -t some.rc translated.po translated.rc The wiki page provides clearer usage examples: http://translate.sourceforge.net/wiki/toolkit/rc2po
Things to be aware of --------------------- * You cannot tweak the translations in .rc and hope to keep things in sync with PO, you'll need to only work in PO files or make sure any tweaks you make in your .rc you copy to the .po. * You cannot change the sizes of the dialogues in your translation for the above reason. This should change in the future to allow you to 'translate' the sizes. * Recovered translations need to be fully reviewed as we can't determine if your translation is based on the same English text. * We cannot create multi-language .rc files, you'll need one languages in each file. * We can read multilingual files but will only take the first language and drop anything after that, since PO files can only contain one language this makes sense. * We don't do any changes to the Makefiles, you'll have to do those by hand. But it would probably be easy to create a simple bash script or change the build system to automagically include all xxx_yy.rc files. * We handle encoding issues but prefer UTF-8 throughout.
How you can help ---------------- * By testing rc2po and po2rc * Help implement a solution to allow size changes * Report bugs on http://bugs.locamotion.org
Getting help ------------ * On IRC: irc://irc.freenode.net/#pootle * Mailing list: http://lists.sourceforge.net/lists/listinfo/translate-devel * Wiki: http://translate.sourceforge.net/wiki/toolkit/rc2po
Suggested localization infrastructure for Wine ---------------------------------------------- In the thread 'Translation and Wine 1.0': http://thread.gmane.org/gmane.comp.emulators.wine.devel/58000 there was some discussion about localization infrastructure for wine.
I'd like to suggest that Wine looks at using Pootle: http://translate.sourceforge.net/wiki/pootle/index this is already in use by projects such as OLPC, OpenOffice.org and others. It can manage PO files, commit to various VC systems (including Git), allows suggestions, does various QA checks and allows download and submission of PO files, has translation memory and glossary suggestions, statistics, etc, etc.
A hosting option is to put the files on http://pootle.locamotion.org but I would request someone from the Wine community to take charge of keeping the PO files up-to-date and authorising users, etc. I would however encourage the Wine community to run its own server. This would make it easier to commit files directly into Git. I would suggest some work to ensure that POT files, updating of PO files and conversion back to .rc are automatic. Being within the control of the Wine community makes this easier.
Launchpad is not an options unless you convert to PO using the above rc2po. Pootle has the advantage that you can run your own server, you don't have that with Launchpad.