GSoC/GCI Archive
Google Code-in 2014 Haiku

Code a CatKeyEditor app for Haiku -part one-

completed by: :Puckipedia

mentors: Urias McCullough, Scott McCreary, Emrys, Adrien Destugues - PulkoMandy, Jessica Hamilton, nielx

 

In this task you will need to make an editor that can edit the cat key files that Haiku uses for translations. We are using an online tool call pootle which works well, but most other large open source operating systems also have a desktop as well as a online tool. It would also help with the translation of 3rd party apps that are not on pootle. 

The app needs to be in C/C++, Python or a mix of all three. You will also need to use Bitbucket, Github or something along those lines. If you needed an extension, first provide us with a link to the repo that you are using, then we will be more than happy to give you an extension.

For part1, you need to create a command line app that can import a catkey file from our pootle webapp using its api, that can then edit the downloaded catkey file (or call on another app who can) and can then export the edited catkey file back to our pootle webapp using its api. The user should also be able to specify a catkey file located on disk to edit and then save it to disk if they are working on a 3rd party app or using pootles manual download/upload feature.

It should also report any context notes or translation messages that are have been added to a string and provide pootle filters such as only showing untranslated strings in a catkey. 

Suggested translations and translation news can wait till part2. Part2 will start going into the GUI and part3 will be finishing the GUI and polishing the app by using the layout kit and the localisation kit.

 


Pootle can be found here:

http://i18n.haiku-os.org/pootle/

Information about catkeys can be found here:

http://translate-toolkit.readthedocs.org/en/latest/api/storage.html#module-translate.storage.catkeys

Software you might want to use:

https://github.com/vslavik/poedit

https://github.com/translate/pootle-client

https://bitbucket.org/izi/polib/

https://github.com/translate/translate

http://stackoverflow.com/questions/11059390/parsing-a-tab-separated-file-in-python

https://github.com/manns/pyspread

https://github.com/python-excel