fdf6176409
Localization authors: - Sahithi <sahithi@swecha.net> |
||
---|---|---|
.circleci | ||
grunttasks | ||
locale | ||
scripts | ||
.gitignore | ||
.travis.yml | ||
CODE_OF_CONDUCT.md | ||
Gruntfile.js | ||
README.md | ||
id_bug_mirror.enc | ||
package-lock.json | ||
package.json | ||
secret-env-cipher |
README.md
fxa-content-server-l10n
This repo (abbreviated as "L10N" in this README) contains all translated/translatable strings for the fxa-content-server repo (abbreviated as "SOURCE"). It contains an exact copy of the locales/ directory from SOURCE, and nothing else (except for this README).
The moz-verbatim translation team works with this L10N repo, pushing changes into it any time they like.
On a regular basis, somebody on the SOURCE committers team copies everything from L10N into SOURCE/locale/, reviews the changes, then commits and pushes SOURCE. This makes the new translated strings available to SOURCE users, provides a clean (single-commit) revision history, and prevents non-locale/ changes from leaking from one repo to the other. The SOURCE repo contains a script (scripts/import_locale) to perform this update.
On a (different) regular basis, a SOURCE committer will update in the other direction. This starts with running the SOURCE repo's grunt "l10n-extract" task, which updates the *.pot files in SOURCE. The committer then copies the *.pot files from SOURCE into a checkout of L10N. Then they run ./scripts/merge_po.sh in L10N, which updates the *.po files in L10N. Then they should commit and push to L10N. That will update the set of translatable strings for the l10n team to work on.
Dependencies
- Install gettext. OS X:
brew install gettext
brew link gettext --force # brew does not link the tools into /usr/local. Force the link.
Ubuntu: sudo apt-get install gettext
The process to work with strings:
- Make sure you installed the dependencies and
msgfilter
(fromgettext
) command is available in your shell. - Have the
fxa-auth-server
andfxa-content-server
repos at the same directory level asfxa-content-server-l10n
. - Have all the dependencies be up to date in the fxa-auth-server and fxa-content-server repos using
npm install
.
Locale Normalization
Before Release Build
Some locales need to be copied over into a different directory. Run this script a few hours before the production deploy:
./scripts/before_prod_deploy.sh --l10n-repo .
String extraction
After Production Deploy
Source strings are extracted from the fxa-content-server and fxa-auth-server repos. Make sure you to git pull
the latest changes from master
for both of those repositories.
cd
into this project directory and run:
./scripts/extract_strings.sh --mailer-repo ../fxa-auth-server --content-repo ../fxa-content-server --l10n-repo . TRAIN_NUMBER
where TRAIN_NUMBER
is the train you are cutting strings for.
This will create a new branch. Now run:
./scripts/before_prod_deploy.sh --l10n-repo .
Git commit the changes made by the script. Pull request that branch against master
.
After that pull request is merged run:
./scripts/email-dev-l10n.sh
The script above will generate an email for the l10n mailing list. Read through the instructions in the script output to post to the l10n mailing list.
Submitting Translations
Please find your locale on Pontoon - Firefox Accounts. Follow the instructions on those sites to submit your translations.