This page describes the feature that allows translators to submit their translations via CSV to an system administrator, and then have it imported.
task T309517
Exporting the CSV
[
edit
]
First identify the page that you wish to submit translations via CSV.
Example page: Development Guidelines.
Go to Special:ExportTranslations and export that page in CSV format in the French (fr) language.
The CSV file exported will be in the following format:
- Highlight 1 in image - Message definition in the source language
- Highlight 2 in image - Translations in the exported language. French in this case
Adding translations to the CSV
[
edit
]
The file exported in the previous step can be modified to update existing translations or add more translations.
See the image below from the CSV file that has added a translation in Spanish (es), and some in Dutch (nl):
This file can then be given to the administrator to import the translations into the system.
Note
[
edit
]
- Empty translations will be ignored. Translations will not actually be removed if a cell in the CSV is made empty.
- If no modification is made to a translation no new entries will be added to the translation change history.
Importing translations via CSV
[
edit
]
The file received from the translator can be imported via a command line script made available in the translate extension
importTranslationsFromCsv.php
:
The script expects the following parameters:
- Path to the CSV file
--user
- Name of the user performing the import
--summary
- Edit summary to be used when updating the translations
--really
- Actually perform the import. Without this a dry run will be carried out.
Example run
[
edit
]
First, a dry run to see what will be imported:
$
php
extensions/Translate/scripts/importTranslationsFromCsv.php
~/Projects/html/mediawiki/groups/page-Development
\
Guidelines_to_import.csv
--user
Admin
--summary
"Importing translations from CSV"
* 3 translation(s) to import for Translations:Development Guidelines/Page display title/en
* 2 translation(s) to import for Translations:Development Guidelines/1/en
* 2 translation(s) to import for Translations:Development Guidelines/2/en
* 2 translation(s) to import for Translations:Development Guidelines/3/en
* 2 translation(s) to import for Translations:Development Guidelines/4/en
* 2 translation(s) to import for Translations:Development Guidelines/5/en
Use option --really to perform the import.
Now perform the actual import:
$
php
./extensions/Translate/scripts/importTranslationsFromCsv.php
~/Projects/html/mediawiki/groups/page-Development
\
Guidelines_to_import.csv
--user
Admin
--summary
"Importing translations from CSV"
--really
* 3 translation(s) to import for Translations:Development Guidelines/Page display title/en
* 2 translation(s) to import for Translations:Development Guidelines/1/en
* 2 translation(s) to import for Translations:Development Guidelines/2/en
* 2 translation(s) to import for Translations:Development Guidelines/3/en
* 2 translation(s) to import for Translations:Development Guidelines/4/en
* 2 translation(s) to import for Translations:Development Guidelines/5/en
Proceeding with import...
(1/6)
Imported translations for Translations:Development Guidelines/Page display title/en with 0 failure(s) and 3 successful import(s) ...
(2/6)
Imported translations for Translations:Development Guidelines/1/en with 0 failure(s) and 2 successful import(s) ...
(3/6)
Imported translations for Translations:Development Guidelines/2/en with 0 failure(s) and 2 successful import(s) ...
(4/6)
Imported translations for Translations:Development Guidelines/3/en with 0 failure(s) and 2 successful import(s) ...
(5/6)
Imported translations for Translations:Development Guidelines/4/en with 0 failure(s) and 2 successful import(s) ...
(6/6)
Imported translations for Translations:Development Guidelines/5/en with 0 failure(s) and 2 successful import(s) ...
Success: Import done