Translations/Lao

Not logged in - Log In / Register

Revision 8 as of 2008-06-10 14:46:53

Clear message

DRAFT: this page is a work in progress. Please [:Feedback:seek further help] or check the [:TitleIndex:wiki index] for a complete page on this topic.

TableOfContents

Overview

While development usually takes place in English, free software is used by people in hundreds of different languages across the globe.

Launchpad applies two of the great benefits of the open source development model to translating your software:

Importantly, Launchpad's simple web interface provides a friendly environment in which non-technical people can help translate your software, while its support of the popular GNU GetText file formats makes it easy to integrate their work into your project.

{i} Note: if you want to help translate Ubuntu, take a look at the [https://wiki.ubuntu.com/TranslatingUbuntu Ubuntu translations page].

Getting started

You need to do three things before people can use Launchpad to translate your project:

  1. Enable translation for on your project's Change details page - https://launchpad.net/<yourproject>/+edit

  2. Upload a translation template and any existing translation files to the series you want to translate.
  3. Choose a permissions policy - i.e. decide who can make what sorts of changes to your translations.

Let's take a look at those in more detail.

Preparing your software for translation

Launchpad uses GNU GetText's file formats to import and and export translations:

You can find out more about these file formats and using GNU GetText in the [http://www.gnu.org/software/gettext/manual/gettext.html GetText manual].

(!) Tip: you may also find Malcolm Tredinnick's [http://www.gnome.org/~malcolm/i18n/ Gnome internationalisation guide] useful, although some of the Gnome policies mentioned in that guide are now out of date.

Uploading translation files

To make your project available for translation, you must upload a .pot translation template file. This files tells Launchpad which English strings appear in your software. You can also, optionally, upload any existing .po translations files; to upload a template and existing translation files together, you should create a tar archive of them.

Concurrent translation efforts for different series

In Launchpad, a series is a line of development, such as your development trunk, a previous but still supported release or your next planned stable release. Launchpad calls these [:Projects/SeriesMilestonesReleases#series:series].

Each series of your project has its own translation effort. This is great if, for example, your community wants to start work translating a forthcoming release while independently still maintaining translation of your current release.

Uploading files is easy: visit https://translations.launchpad.net/<your-project> and select the series to which you want to upload the template and translations.

Once you've uploaded these files, a member of the Launchpad team will check that they're suitable before importing them into Launchpad. Launchpad should accept future uploads automatically, although it will

Ensuring a successful import

You can help ensure your files are imported by checking that:

There are also some common problems that can cause a template or translation file import to fail.

For translation templates:

For translation files:

Launchpad will email you to let you know if your import was a success or a failure.

Maintaining quality

There are a couple of ways that Launchpad helps you to balance making it easy for people to contribute to your project's translations, while maintaining quality control:

Translations groups

Depending on which permissions policy you choose, it's more than likely that anyone will be able to suggest translations for your project. However, to maintain the quality of your project's localisation, you should find someone you trust who can review those translations.

Translation groups are are a convenient way to delegate responsibility for reviewing translations. The important thing to remember about them is that they're independent of any one project. So, as a project owner, you can either choose to work with an existing translation group or create your own.

Within each translation group, an individual or team is assigned to look after one or more languages. When you choose a translation group, you're entrusting the review of your project's translations to its members. Not only must you be certain that you're comfortable with the people already involved in the group but you must also be sure that you're happy with their methods of vetting new recruits.

The advantage of working with an existing translation group is that they should already have established teams for several languages, as well as the community processes necessary to ensure efficient review. However, selecting a translation group is not the same as persuading people to review translation made in your project!

An example translation group

Let's take a look at an example translation group, the biggest in Launchpad: [https://translations.launchpad.net/+groups/ubuntu-translators Ubuntu Translators].

By visiting the group's overview page, you can see which:

Working with an existing translation group

To choose an existing translation group, visit https://launchpad.net/<your-project>/+changetranslators.

Although many projects find that people spontaneously contribute translations to their projects, you now need to encourage the teams within your chosen group to review translations in your project.

Creating your own translation group

If you have specific requirements for the people who review your project's translations, you may want to create your own translation group.

The only way to do that is to [https://answers.edge.launchpad.net/rosetta/+addquestion file a support request] with the Launchpad administrators.

Choosing a permissions policy

Launchpad offers you four ready-made permissions structures to help you choose who can submit and review translations for your project:

Set your project's permissions policy at https://launchpad.net/<your-project>/+changetranslators.