Project:Language policy

This page describes the current multi-lingual policy on MediaWiki.org.

Help: namespace
Within the  namespace we are building a set of public domain help pages. The aim is to provide a basic set of help pages that may be imported into new wikis covering the basic editing and usage instructions. These should be translated into as many languages as possible.


 * English is the main reference language, and all root pages should be named and written in English.
 * Sub-pages should only be used for translations into other languages, not for English content (e.g. you shouldn't use  - use   or   instead).
 * If an international version of a page exists but an English version does not, then please create a stub article for the English version as this aids navigation.

This system will be compatible with the planned automated import/export of Help pages, but may need a bit of working around to export/import non-English pages in the interim.

Translate extension
We're currently using the Translate extension for several pages, which uses the subpage convention, with Langcat for categories and TNT for translatable templates. The system is recommended at least for most visited pages and all new help, manual and (main) extension pages, but no policy has been established on this yet. You can request a page to be added to translation by preparing it for translation, then a translation administrator will have to enable it (see the tutorial How to prepare a page for translation); otherwise, ask directly to one of the translation administrators to do it.
 * To translate: just go Special:LanguageStats and start translating.
 * To administer translations: Special:PageTranslation, Special:AggregateGroups.

Old system

 * Other languages should be placed in an appropriately named sub-page of the English version. E.g. the French version of Help:Contents should be at Help:Contents/fr (not Help:Sommaire, Aide:Sommaire or Help:Sommaire/fr).
 * Language sub-pages should be named using the appropriate language code for that language (see below).
 * All pages in the help namespace should be tagged with the  template, which automatically creates links to all available translations.

Convert to Translate
The pages with existing translations are usually worth being made into translatable pages. Prepare the (English) root page for translation (see ) and, as soon as it's marked for translation, manually import the old translations from the history of subpages to the translation units (by clicking "translate this page").

A list of pages translated with the old system, to be migrated to the new, is in the works at /Migration list/.

More detailed instructions:
 * For a full introduction, read the basic help, translation tutorial, page translation tutorial and page translation reference manual.
 * Login or register on mediawiki.org: all your work will happen on that wiki. Pick one page to migrate to Translate from the migration list (on the list's talk page, you can ask any question). Polish the English text as fit/possible to avoid migrating very obsolete/low quality text, skip pages where unsure. Prepare the page for translation (i.e. add &lt;translate> tags etc.) following the page translation tutorial linked above; then edit the migration list, writing next to the page's title that you've done it.
 * A translation administrator will now approve ("mark") the page for translation at their discretion. When it's approved, complete the job: copy the old translations to corresponding units with Special:Translate (as a translator would do in the translation tutorial linked above). You don't need to know the language you're migrating, only to identify which paragraph corresponds to which, even though it's not a loyal translation (machine translation can help grasp the meaning if the layout of the page doesn't provide enough hints).
 * When you're done, add in this melange task a link to the stats for the page (example). Repeat the steps until you've done enough pages. More precisely: to have this task marked done, you need at least one page marked for translation; and a total of at least 120 translation units (i.e. paragraphs/strings) counting those created in the source language (English) and those migrated from existing translations (visible in the stats, row "All languages together", as difference between the columns "Messages" and "Untranslated"). Alternatively, 30 Manual:$wg* pages (last section of the list; those are not in priority).

The main page
The English version of our front page is located at MediaWiki. Translated versions are located at MediaWiki/code, where code is the language code (e.g. MediaWiki/fr). Please see Project:Main page templates for more details about creating or editing this content.

Importantly, the rules about language codes (see below) should be followed here as well.

Other namespaces
Apart from the Main Page, no policy has yet been decided about other namespaces. For the time being, if you would like to create translations for pages in other namespaces then please do so as described for the Help: namespace, however content may be moved or deleted depending on the policy that is eventually adopted.

For some discussions, see Languages and Translate extension at Current issues.

''Note that the rule that English content should not be placed in sub-pages does not apply to other namespaces. This is one of the issues that needs resolving.''

Language codes
Throughout MediaWiki.org you should use the language codes specified by the MediaWiki software when creating language-specific content (see Names.php for the full and up-to-date list).

Please also bear the following in mind:
 * If the language code is not found in Names.php then we should not host help pages in that language.
 * If you want to add a language that is not present, first get it added to the software (by making a request at Bugzilla) and only add pages here once the changes have been accepted.
 * If MediaWiki uses the 'incorrect' code for a language then you should also (for consistency) use that incorrect code here. If you think a code is incorrect you should discuss it on Bugzilla, and if this results in it being changed we will move the pages to match.
 * Note that some language codes in Names.php are now deprecated (e.g. zh-yue has been replaced with yue). In these cases only the most recent code should be used.