Skip to content

wikimedia/phabricator-translations

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

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/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 run arcanist to update `__phutil_library_map__.php`:

```
../arcanist/bin/arc liberate
```

Finally, 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.

run `./lint.sh` to verify that you haven't introduced any PHP errors.

Finally run `../arcanist/bin/arc liberate` to update `__phutil_library_map__.php`