Last week while publishing a new guide I ran into a problem creating the Transifex client configuration file (.tx/config). The configuration file is generally a hateful file that requires a lot of manual manipulation to add in all the POT files for translation. This file exponentially increases the hatefulness as the number of POT files increase or the complexity of where these POT files increases. In summary, I hate to create these POT files. It seems I always end up screwing it up somehow and the Transifex client isn’t real great about telling you why it failed (it just fails in a non-obvious manner).
I started putting together some bash script to write the thing for me until I realized that the script was going to become unwieldy quite quickly. Luckily I have a boss who doesn’t mind poking me into learning a new trick. This new trick came in the form of Python. Realize that the last formal programming class came in the form of a Java class nearly ten years ago. Since then I try not to touch the stuff. But now I have a purpose… a need… a problem in search of a solution… and an excuse to start to learn Python.
So my creation is called create-tx-configuration. This simple program will read the pot/ directory for .pot files and create the .tx/config file for Transifex to use. While there was a way to have the Transifex client make the config file the process wasn’t easy nor did it work in all cases.
If you have a need to create Transifex config files please checkout create-tx-configuration and, as always, I appreciate feedback.
Eighty-eight (88) guides in forty-two (42) languages comes out to be six hundred and thirty (630) guides that have been published, so far, to the Fedora Docs website. That includes everything from Fedora Core 1 to today. With the release of Fedora 14, earlier this month, we introduced twelve new guides to the system that were translated into a number of languages.
Now, I’m not saying that this isn’t great. It is quite fantastic! The problem comes from the way we’ve been handling all the source. Right now generally one person is responsible for compiling all the different languages and pushing them up to the docs.fp.o website. Keeping track of which languages got published is not easy as the L10n teams are constantly turning out new translations. The work load has increased in recent releases and keeping track of which guides have been published and which have not has become a problem.
We’ve talked about this before but nothing has officially happened. What I would like to see happen is for the translation teams to take responsibility for building their translations and publishing them to the Fedora Docs website when they feel their work is ready to be seen by the world. Some teams, such as the Spanish team, are already doing this which is a great relief.
Once we get all translation teams doing this the next step is getting these guides packaged and into the Fedora repository. Publican should be able to do the heavy lifting of creating the SPEC and SRPM for each guide allowing translation teams to create their packages very efficiently.
There currently exists procedures for publishing guides using Publican on the Fedora Wiki. A recent upgrade in Publican has made publishing incredibly easy and an upcoming release should take all the guess work out of publishing and packaging.