Friday, August 24, 2007

.po files and OmegaT ... (Abiword)

Well, like so often things happen when you don't expect them to happen. We have almost 40°C here and I suppose that on the balcony it is well over that temperature ... no way of really being able to work ... that will need to be done during the night when the temperature is lower ...

So I thought, well, let me see how much it would be to localize that game into Neapolitan ... then I started like so often to talk to Gerard and we were talking also about the localization of software into Neapolitan ... being just that handful of people OpenOffice is not possible, and for some strange reason Abiword came up and so I had a look at it. I saw the explanation of how to create a "clean" .po file ... stuff that was somewhat too complicated for me to deal with (or better: I did not feel like trying) and so I thought: wouldn't there maybe be an easier way in order to avoid doing the same over and over again ...??? Well, I saw there were already localized .po files online and one of them the en_GB.po and that was the moment when I saw that maybe the way we were now dealing with .po files, trying to create a filter or whatever for files where the segment with the translation is empty is the wrong way to go ... .po files have a regular structure. Seeing that English to English file with both filled segments it became clear that it should not be too difficult to build a filter - but: not being an OmegaT programmer really I am not able to do that, so how to use the present filters? ... Well, first I tried with XML, but that one did not work and then with html ... and that one works ...

How did I create a file with translateable html contents? Well: search and replace ... that's all ... it could be done with a simple macro or a short script in whatever language that can process the .po files provided that both segments in .po contain text.

Now that is now my modified .po file looks like now ...

at the beginning there is the usual html declaration and the html tag

then a translation unit looks like this:

#. DLG_Para_LabelAt
#: po/tmp/ap_String_Id.h.h:97
msgid "&At:"
msgstr ">&At:< div "

and of course the closing html tag at the end (sorry I cannot put this in here since blogger gets a hickup. Also the space in front of "div" must be taken out (blogger-hickup also here).

this means I just created a "div" tag around the text that may not be touched ... and the strangest thing is: it really works ...

So this is a pseudo filter for .po files and now I will be able to localize the software creating a translation memory and then, for future updates work will be much less. Of course, who is interested in getting that .html file that can easily (with search/subsitute) be re-converted to normal .po can contact me, but please give me some time to answer ... it is really one of these periods of the year.
Post a Comment