Posted by Fred Muller in Free Software, Linux, tags: Anthony Fok, Debian, Education, Funda Wang, Gcompris, Gnome, hex-a-hop, Internationalization, Jens Seidel, localization, Miriam Ruiz, poedit
Still actually working on that new project of mine, we (Pockey and I) finished Gcompris localization in Chinese last Saturday. Ok, most of the work was done with 98% completed, which shows a huge increase from 6 months ago actually where less than half was translated into Chinese. Gcompris is an educational software suite which proposes different activities to children from 2 to 10 years old. Gcompris po files are available from the Gnome website where you can find a few other languages that need completion. Coordinating the Gnome Chinese translation effort it is worth mentioning that you can find BLUG member and occasional presenter Funda Wang (Yeah BLUG again).
This being said we have also started localizing Hex-a-hop, a puzzle game with 100 levels. The internationalization process was completed last year in July by Jens Seidel, who has developed the patches for making it work with SDLPango and to support all the spectrum of Unicode characters. With debian packages, the process of getting the po file is a big more “complicated”. In fact there are two ways, one given to me by Miriam Ruiz (Hex-a-hop maintainer at debian) and one by Anthony Fok (BLUG member among so many other things, and great Linux contributor). So here we go (for those who would like to actually translate other debian projects):
miriam@miriam:~/tmp$ apt-get source hex-a-hop
Reading package lists... Done
Building dependency tree
Reading state information... Done
Need to get 1020kB of source archives.
Get:1 http://ftp.de.debian.org sid/main hex-a-hop 0.0.20070315-6 (dsc) [1004B]
Get:2 http://ftp.de.debian.org sid/main hex-a-hop 0.0.20070315-6 (tar) [892kB]
Get:3 http://ftp.de.debian.org sid/main hex-a-hop 0.0.20070315-6 (diff) [127kB]
Fetched 1020kB in 1s (577kB/s)
dpkg-source: extracting hex-a-hop in hex-a-hop-0.0.20070315
dpkg-source: info: unpacking hex-a-hop_0.0.20070315.orig.tar.gz
dpkg-source: info: applying hex-a-hop_0.0.20070315-6.diff.gz
miriam@miriam:~/tmp$ find . -name "*.po"
miriam@miriam:~/tmp$ find . -name "*.pot"
Then you just need to open the .pot file with poedit. Second method is to convert the .mo file which you can get from the binary deb file back into a .po file typing:
dpkg-deb -x hex-a-hop_0.0.20070315-6_i386.deb testdir
msgunfmt hex-a-hop.mo > hex-a-hop.po
Now there is a good explanation here on the translation process used in FOSS for those of you wanting to understand more. Should you want to join us and help, please don’t hesitate to contact me. If you want to translate other applications that you feel should be in your language but are having problems with it, I won’t mind helping out neither.
Continuing my search into internationalizing and localizing the 48 lessons for RUR-PLE and asking all around I have raised a few very meaningful feedbacks from my community: it’s a lot of work to recode HTML pages and insert language tags, it also makes authoring a lot more complicated and not for everyone. Imagine a teacher wanting to add lesson No.49, he’ll have to understand the technique behind it and thus learning a bit of HTML is probably a lot easier. So what you gain from simplifying the work for translators is lost in hindering authoring.
Well actually NO! A big THANK YOU to Elly for pointing out this great Java application to me: OmegaT. OmegaT let you open XHTML, HTML, Microsoft Office 2007 XML, OpenOffice.org/StarOffice, XLIFF (Okapi), MediaWiki and plain text files and hides the code to the translator. Translators just see what needs to be translated, can use shared memory per project (you create projects inside the application) and thus avoids you to re-translate something you already translated, and export in the same format as the original document without touching the markup. I’ve tried with HTML and presentation files and wow it just works as it should. Great gain of time, no need to internationalize anything for your project (and mine) and anyone can now generate new lessons without having to worry about the translators.
This is also going to help me in my daily work, where I get presentation files in different languages all the time and spend hours editing them slide by slide. On top of that, this is Open Source Software (GPL) and cross platform (using Java). What else could you ask for? I just regret to have discovered it so late.
4 Comments »
Just as I am talking about my new project, last weekend, Pockey and I have already localized a great educational application called RUR-PLE. RUR-PLE is an environment designed to help kids learn computer programming using the Python language. Teaching kids algorithm are without any doubts going to enhance their problem solving abilities, analytical skills and passion to create things out of nothing.
The whole process of localizing this application took half a day as the author, André Roberge, had already internationalized its software. So basically it was just a matter of installing PoEdit, finding the po files in the right directly and just providing the Chinese version.
There are 48 lessons (not all are online, but they come with the package) bundled with RUR-PLE which are in HTML format. Now those have not been internationalized and we have so far only localized the main pages and the documentation. I am therefore starting to dive into the process of HTML internationalizing and I have much to learn. From what Freeflying told me I had to look into XML and DocBook for that. At first sight it does appear fairly complicated, so if anyone has the time to give me a crash course on the ABC’s of HTML internationalization and localization, please feel free to contact me.
What you can remember of this article however is that to port something as useful as RUR-PLE only took one afternoon! So if you want to help and join our efforts do come and visit our group.