I have recently finished translating Gramps 3.4 to Portuguese (Europe), something I had started some time ago but let it bit rot a bit; this revision is quite extensive and I tried to review every existing sentences and make them more harmonious.
The key points of my translation (which I had already stated in my Gramps project wiki page) were from the start:
- Increase consistency of the translation, by reviewing all the sentences after deciding for a particular construct
- Use vernacular terminology; there is a natural tendency to translate “word by word” and dismiss existing expressions because they are not so well known (since they are part of a more or less technical language). Using them both increases the quality of the translation and avoids importing terms which have a perfectly suitable local alternative
- Avoid changing things because of slight preference; this is mainly directed at the differences in taste between Portuguese in Portugal and Brasil, which reflect in the order of the elements and preferred used of some synonyms; my approach is that it is wasteful to change things that are perfectly reasonable since that decreases the consistency of translations when importing new additions.
- Use the latest agreed orthography, something I particularly dislike as I had the opportunity to share in my Guarda Gozosa post
- Build a decent style guide for translating genealogy programs to Portuguese; Gramps is an excellent program, but this effort is actually useful beyond Gramps since the same challenges apply to any other genealogical application.
I’m not entirely happy with the translation still, but it’s 100% complete and it’s better to refine it from there than to have it only half done, even because now it is perfectly possible to use it as the main language in Gramps (I’m using it that way), which will naturally lead to more errors being corrected.
My objective is to continue to explore the most adequate way of incorporating portuguese genealogical terms and praxis into Gramps, which is by now in my opinion one of the best if not the isolated winner in terms of supporting multiple surnames. The whole open nature of Gramps really shines here: it started as a bug request, progressed into a GEPS, an was finally implemented. This functionality is to my knowledge unique in the way it completely supports multiple surnames, including tracing them throughout the generations even when they are passed in non-obvious ways.
Editing po files was something that was made much easier by Emacs; initially when it was mostly about non-complex data entry I used gtranslator, poedit and virtall. Each one has some advantages and drawbacks, and perhaps surprisingly I ended up using gtranslator the most because I wasn’t able to make the others show me how a specific entry was translated in three other languages — something I like to do to use as reference. Emacs po-mode works quite well and I was able to appreciate it more as I started to understand more about the gettext-based translating cycle. At the end, when I was detecting small discrepancies between the original sentence and the translation (say, a rogue final space) Emacs regexp functions coupled with a keyboard macro made the process close to automatic, allowing me to retouch ~500 entries in minutes instead of hours.
There is still room for improvement though:
- I would like to see the auxiliary translations in windows, i.e. not cycling through the several files but having them as separate windows that would be automatically updated
- I tried and failed to come up with a way to automatically detect and fix the cases where the translation misses a final period; this would be extremely useful but I wasn’t able to make multiline regexp matching work with my use case.
If you’re interested in genealogy do give Gramps a go!
PS: I have also recently looked at a new program I found, Ancestris. It has a completely different approach from Gramps and derives from it the biggest advantages and drawbacks: it uses GEDCOM as the native format, which makes it 100% GEDCOM compatible. Additionally it runs everywhere (it’s Java-based) and the database is a single .ged file (that can be accessed over the network if needed). Well worth a look!