start
Table of Contents

Localizing Mozilla Thunderbird

FIXME These docs were migrated from the old Wiki. They have not been checkd and could easily be incorrect. Your fixes are most welcome

FIXME {omgs: how to get po files from CVS for Firefox and Thunderbird 1.5 is in the new mozillacvs page}

Using Mozilla Firefox POT/PO files

This section outlines few steps that can make localizing Mozilla Thunderbird e-mail client somewhat easier and faster. This only makes sense if you already have a localized version of Mozilla Firefox.

In short, a faster translation process is possible because Mozilla Firefox and Mozilla Thunderbird share some of the files that need to be translated, and thus a translator can reuse part of the work that is already done in the localized Firefox.

Firefox and Thunderbird are developed to share the ‘toolkit’ folder. If you’ve done some l10n work on Firefox than you probably know that the files needed for a l10n build are separated in two folders: ‘browser’ and ‘toolkit’.

Firefox’s toolkit folder contains the following folders: autoconfig/ global/ global-platform/ global-region/ mozapps/ necko/ passwordmgr/ pipnss/ pippki/

and at this stage with little or no effort you can reuse everything exept ‘autoconfig’ and ‘passwordmgr’.

A step-by-step guide (on GNU/Linux)

bash$ cp /some-path/thunderbird/chrome/en-US-mail.jar tb-l10n/
# Copy the jar file to favored localization folder.
bash$ cd tb-l10n/
bash$ unzip en-US-mail.jar
# Unpack the jar file. The result is a 'locale' folder.
bash$ moz2po -P --progress=verbose -i locale/ -o locale-pot/
# Convert to POT templates.
bash$ cd locale-pot/
bash$ rm -r pippki pipnss necko global-region
# These are equal with Firefox ones.
bash$ mv mozapps mozapps-tb
bash$ mv global global-tb
bash$ mv global-platform global-platform-tb
# Just to be on the safe side here. Some files form these folders are
# needed. This may seem like an redundant step, because you can simply
# enter these folder and delete everything but the needed file. :)
bash$ mkdir -p mozapps global global-platform/win
bash$ cp mozapps-tb/pref-downloads.dtd.pot mozapps/
bash$ cp global-tb/brand.* global/
bash$ cp global-tb/brand.* global/
bash$ cp global-tb/charset.dtd.pot global/
bash$ cp global-platform-tb/win/nsWindowsHooks.properties.pot global-platform/win/
# Copying the few files that are different. And now you can delete those
# '-tb' folders.
bash$ mv en-US/* .
# Moving files form en-US to current directory. Don't know if this is
# really needed. I just recreated the directory structure from the Russian
# XPI.

These are the files that await your translating skills so you can now start your favorite PO editor.

If you want to have all the files in one place you can copy the missing po and pot file from Firefox (just don’t overwrite the few previously selected files).

When your translation is finished is back to po2moz, and building a XPI (you can use some other Thunderbird language pack XPI as a template for your own).

Aditional Migration

You can also now make use of pomigrate and friends. These are bash scripts that wrap the Gettext tools. They can often increase the level of translationa as they will apply a translation compendium to your files.