Translation:General Information

From Apache OpenOffice Wiki
Revision as of 15:34, 12 August 2010 by Goranrakic (Talk | contribs)

Jump to: navigation, search

This page summarizes useful information on the translation work needed to release a localized version.

en_US Source Strings

For every milestone on the DEV300 codeline (future non-branched 3.x releases) the current en-US source strings are extracted and uploaded in SDF file format to:

Diffs of all new and changed strings from each milestone can be found at:

Removed strings are not part of those diffs.

How to deliver translated files

  • provide SDF files that contain translated strings only (please remove non translated strings from the sdf file)
  • provide a GSI / SDF file containing both the translated strings and the corresponding en-US source strings. Remove untranslated strings from the sdf file. Please note that the en-US strings have to be the same milestone like your translation.
  • please make sure that the GSI / SDF file format is not violated (format errors like wrong amount of tabs, shifted columns, ... ) by using "gsicheck". Please use the latest version at: usage: gsicheck -c myfile.sdf. In case of errors please use the log file to fix them.
  • file an issuezilla bug to "", cc: "", assign the issue to "", cc: "", Target milestone to "OOo XX" , Component "l10n" , Subcomponent "code" , Issue type "ENHANCEMENT". Please don't attach your file directly to the issue, but provide an URL / link pointing to your file. Please do attach only if you don't have any other web space available (

Release Map

Release map with translation deadlines specific for the release you are targeting can be found at: where XX is release version number. You can also browse complete list.

Teams Translating with Pootle

More and more teams are using Pootle on the sunvirtuallab to translate (What is Pootle?). Here is the complete list.

Pootle provides web interface for managing translation team and reviewing new translations.

As a bonus, when using Pootle for managing translations Pootle administrators will make sure content will be updated with new messages for translation and delivered for integration according to the release schedule. You do not need to prepare SDF/GSI file or create an issue if using Pootle. Unfortunately sometimes update is not glitch free and a lot of messages get marked as fuzzy and need translating when messages are relocated inside code base. You should always keep backups of your translations offline.

For adding new languages to Pootle, native language project leads should ask on the list (browse archive).

Pootle Translation Process

  • Servers:
  • Pootle administrators make sure Pootle content is updated according to translation schedule
  • L10n lead give the Go to start translation on Pootle (announcement to the dev@l10n list)
  • Native Language leads make translation assignments following the Pootle User's Guide
  • Translation teams work with Language team to make sure the translation is reviewed
  • Native Language/translation leads make sure translation is complete within the deadlines
  • Native Language/translation leads communicate translation completion to l10n lead
  • Pootle administrator downloads the translated files and provide them to release engineering

It is recommended to use Pootle to manage the translation process and assignments. For translation it is recommended to download the files and translate them with a translation editor which support translation memory functionality. Linguistic review can be then performed right after translation. It is recommended to use the online translation editor for corrections and for small translation volume only.

Translation Notes for Pootle Users

Content on Pootle can be edited, fixed at any time. However, please make sure to subscribe the (browse archive) list and to make sure not to upload all translated files before Pootle content updates are carried out. Pootle downtimes, Pootle maníntenance or Pootle content updates are announced to this list.

Tips and Tools


build a team of translators and 1-2 reviewers to work on the project. It is recommended to keep the number of the reviewers to 1-2 people, since the more translators and reviewers working on the project, the less you can ensure quality and consistency.


OpenCTI - terminology is the repository of the latest terminology used in Opne CTI replaces SunGloss. No need to login to lookup terms but if you want to edt or edit terms you will need to get an account (please register first). A Help button is available and provide instructions on how to use the tool.

Translation Memories

Latest TMX files can be found at: under tmxXX directory where XX is release code.

TMX can also be created as follows:

  • download PO files from Pootle or extract from SDF file
  • run po2tmx

For more information on using Glossaries in Pootle please refer to below page:

SDF to PO Convertion Tools

The .sdf file can be converted to .po files using the oo2po tool and converted back to .sdf format using the po2oo tool from the Translate Toolkit package:

Documentation with examples for conversion and backconversion can be found at:

PO files provided on the Pootle deployment for handle duplicate messages using msgctx feature (oo2po --duplicates=msgctx). For more information see here :

It is important that if you are uploading and merging batches of PO content to the Pootle server that your content conforms to this style, otherwise it may not merge correctly with the content already present on the server.

Gsicheck Tool

gsicheck to make sure the translated .sdf files are not corrupted can be found at:

Translation Editors

The most used translation editors supporting the gettext .po file format are:

PoEdit, Lokalize and WordForge run on both Linux and Windows. Lokalize is the KDE4 replacement of the old KBabel, which has long been the most popular PO editor for these platforms, but gTranslator and PoEdit have planned improvements which may make them more competitive; WordForge is a new editor which is rapidly becoming popular.

gTranslator runs on Linux and some BSD platforms.

LocFactoryEditor runs only on Mac OSX. It handles XLIFF natively, and supports Apple formats, gettext formats, SVN submission and submission by email to projects like the TP (TP Robot) and Debian (Debian BTS). It also converts between PO compendia and TMX.

Please make sure you are running the latest version of gettext, to benefit from its new features, like contextual handling and comparison with previous original strings.

Don't forget that spellcheckers like Aspell have a wide range of dictionaries for well over 70 languages. Spellcheckers not only check your spelling: they are great for catching typos. ;)

Please add further information on these and other tools that may help other translators to perform their job.

Distributing L10n Builds

Personal tools