Manual:generateJsonI18n.php
Appearance
MediaWiki file: generateJsonI18n.php | |
---|---|
Location: | maintenance/ |
Source code: | master • 1.42.3 • 1.41.4 • 1.39.10 |
Classes: | GenerateJsonI18n |
Details
[edit]MediaWiki version: | ≥ 1.23 Gerrit change 102171 |
generateJsonI18n.php file is a maintenance script to generate JSON-formatted i18n files from legacy PHP array-based MediaWiki i18n files.
Usage
[edit]php maintenance/generateJsonI18n.php phpfile jsondir
where:
- phpfile - PHP file defining a $messages array. Required unless
--extension
is provided. - jsondir - directory to write the JSON files to. Will default to
$phpfile/i18n
.
Script dependent parameters
[edit]Option/Parameter | Description |
---|---|
--langcode="lang" | Language code; only needed for converting core i18n files. |
--extension | 1.24 Perform default conversion on an extension. If you use this parameter, don't specify the phpfile argument. It will make phpfile be set as "$IP/extensions/$extension/$extension.i18n.php" , and targetfolder will be set to i18n
|
--shim-only | Only create or update the backward-compatibility shim |
--supplementary | Find supplementary i18n files in subdirs and convert those |
Example
[edit]cd core/extensions/YourExtension
mkdir i18n
php ../../maintenance/generateJsonI18n.php ExtensionName.i18n.php i18n
MediaWiki version: | ≥ 1.24 Gerrit change 122659 |
Alternate way for extensions, since Gerrit change 122659: This example performs the default conversions in $IP/extensions/WikiLove/
, replacing the WikiLove.i18n.php
file with a backwards-compatibility shim and porting messages to the WikiLove/i18n/
directory.
php maintenance/generateJsonI18n.php --extension WikiLove
Suggested migration process
[edit]If your extension has not been converted already:
- Make sure you have the latest code
- Create the
i18n
directory - Run the script
- Update your extension's entry file to add
$wgMessagesDirs ['YourExtension'] = __DIR__ . '/i18n'
; - Commit it to Gerrit if the extension is hosted there
- Add Siebrand and Raimond as reviewers if the extension is translated in translatewiki.net
- Wait for review and all should go smoothly
See also
[edit]- Requests for comment/Localisation format for background