wikimedia/phabricator-translations
Folders and files
| Name | Name | Last commit date | ||
|---|---|---|---|---|
Repository files navigation
Utilities for importing and exporting translation strings between phutil
libraries (including Phabricator) and Translatewiki.
Setup
=====
Clone the phabricator deployment repository {rPHDEP} and run `git submodule update --init --recursive`
Then:
```
cd translations
```
Exporting Strings
=================
This repository already has exported data, so you can just use the files
located in `projects/` if you don't need to regenerate up-to-date strings.
To export up-to-date strings from Phabricator, run:
```
./export.sh
```
This will update `projects/phabricator/core/en.json` and related files.
Generating Translations
=======================
If you have a translated string file and want to convert it into a form that
Phabricator can read, do this:
```
./generate.php
```
Then, commit the changes and push.
Adding a new language/locale to Phabricator
===========================================
To add a new language, copy one of the existing classes in `src/locales/` to a new file name.
Then edit the new file, changing the class name as well as the values returned by
`getLocaleCode` and `getLocaleName` to match the locale of the new language.
Check if the new language needs a custom `selectPluralVariant` handler. One place to check is CLDR plural tables, at
https://www.unicode.org/cldr/charts/48/supplemental/language_plural_rules.html#comparison
Run `../arcanist/bin/arc lint` to check for lint errors.
Finally run `../arcanist/bin/arc liberate` to update `__phutil_library_map__.php`