Jump to content

Translating:MediaWiki

From translatewiki.net
(Redirected from MediaWiki)
MediaWiki logo
MediaWiki logo

MediaWiki is open source wiki software on which this site runs, and which can be translated here. Support for translating hundreds of MediaWiki extensions is also available.

Translators may add MediaWiki to their babel box or include {{User MediaWiki}} to add themselves to Category:MediaWiki translators.

Glossary

A brief explanation of the most essential terms used in this document:

MediaWiki
The software that powers Wikipedia and many other websites. It allows people to edit pages in collaboration.
Wikimedia
The organization that maintains Wikipedia, Wikidata, and several other websites, as well as the MediaWiki software.
Message
A translatable string.
Message documentation
While translating, documentation about the message is shown on the sidebar next to the translation. It is also known as "qqq" in MediaWiki developers' jargon.

For a more detail glossary of basic MediaWiki terms, see Translating:MediaWiki/Basic glossary.

Translation flow

You made some changes here? This is what happens then and how long it takes to take effect.

Export threshold
Messages do not start to be exported to MediaWiki until at least 13% of the core MediaWiki messages in that language have been translated (used to be 18%): under such amount, the export scripts automatically skip the language in question and developers won't add support for the language on MediaWiki. The threshold corresponds to the number of all most used messages in MediaWiki or more; see also Translatewiki.net languages.
Wikimedia sites—Wikipedia, Wikidata, Wikisource, Wikivoyage, etc.
Interface message changes should be reflected in projects once per week along with the usual deployments.
Everything else
New translations are shipped with each new MediaWiki release (1.x) and usually with maintenance releases too (1.x.y). There are only a few releases per year, and many sites do not update often.

Why translate on translatewiki.net



See also: Tips for translating MediaWiki software



MediaWiki is one of the few software packages that allow its users to translate it using itself. Thanks to translatewiki.net, however, localising it is even easier and more efficient. In addition to the general advantages of this wiki, compared to local translation:

  • Your translations are used on every MediaWiki wiki, this includes every Wikimedia wiki, see #Translation flow.
  • You can localise namespaces (Help, User, Talk, ...), special page names (Recentchanges, Allpages, ...), and magic words.
    The message groups above cannot be localised in a normal wiki, because they are buried deep down in the software. Here you can localise these message groups, and later on your changes can be used in every installation of MediaWiki again. See #Translation notes below.
    (temporarily disabled; see the section #AdvancedTranslate in this document and phab:T109235)
  • You can translate new messages faster than on a local wiki.
    We always have the latest version of the software. This means new messages show up much faster than on any other wiki and you have more time to translate them before they arrive to your wiki. This can also mean translatewiki.net uses an unstable version, but problems are usually solved quickly.
  • The only drawback is that your translations will not show up on your local wiki immediately, but after a few days to weeks; or, if you are using a release version, after the next update. However, for the previous point, there's no reason to be in a hurry: just check new messages regularly and translate them in time.
    See FAQ#How is the work done on translatewiki.net connected to other wikis?.

Extensions

All MediaWiki extensions are supported as long as they are in Wikimedia's Git repository or in GitHub and their developers are supportive enough of translators.

If you don't want your extension to be added to translation, because you're going to soon change many messages completely or to delete the extension altogether, please state it clearly somewhere so that we don't add it when it's still too soon. In both cases, cc Raymond to a changeset on gerrit if you feel your extension's case might have been neglected.

Translation notes

Recommended process for translating MediaWiki

Translators of other projects can ignore this list.

  • First translate the most often used messages.
  • Complete the core messages.
  • Check if you should translate any optional messages in core.
  • Do a consistency check (terminology, formal/informal) on your localisation.
  • Translate special page names, magic words and namespaces on [[Special:AdvancedTranslate]] (temporarily disabled; see the section #AdvancedTranslate in this document and phab:T109235)
  • Translate the extension messages used in Wikimedia wikis. There are more than 10,000 messages there, so for your convenience they are further subdivided into groups: main, advanced, media, fundraising, technical, etc.
  • After completing an extension, it's recommended to check whether there are any optional messages that should be translated. (Click "..." at the top of the translation interface and check the "Optional" box.) If they will be the same in your language as in English, don't translate them.
  • Translate the remaining extension messages.
  • Do a consistency check (terminology, formal/informal) on your localisation between core messages and extension messages
  • Start maintaining your language's localisation on a regular basis. At least once per week is recommended.

Read on if you want to know more. Reading on is not required, although advised for a proper understanding of more advanced localisation features. You could spend a few days translating, though, and come back when you think you need more information.

Message keys

Every message is identified by a unique key. A message key is a string. In the translation interface, the key appears above the source message as MediaWiki:message-key/language-code. On translatewiki, the message key is also used as the title of the wiki pages on which the source message and the translations are stored.

Most of the time, the translators don't need to deal directly with message keys. However, they are sometimes necessary. Here are the main reasons for using them:

  1. If you use a wiki in your language and you see a missing or a wrong translation and you want to fix it as directly as possible, you can find the precise message key by adding the string ?uselang=qqx to the URL of the wiki page. For example, if you're looking at the article Bali at the Indonesian Wikipedia and you see that something is not translated, go to the page https://id.wikipedia.org/wiki/Bali?uselang=qqx, and you'll see message keys instead of actual translations: instead of "Masuk log" you'll see "(pt-login)". Use that key to go the corresponding page in translatewiki: MediaWiki:Pt-login/id.
  2. If there is an issue with a message, such as missing documentation, unclear English formulation, or anything else, you should report this message to the developers using the Support page or Phabricator. When reporting, it's essential to mention the message key. If you use the Ask for more information link in the translation interface, the key will be mentioned automatically in the bug report, but sometimes you may have to use it manually.

On most wikis there is a page called Special:AllMessages. It helps you examine all the messages and their translations and local modifications. Administrators should regularly check that page and remove unnecessary local customizations.

Wiki syntax

Many messages use symbols such as ==, ===, [[]], {{}}, *, #, and so on. This is wiki syntax, also known as "wikitext" or "wiki markup". This is not a requirement, but it is recommended to be familiar with some wiki syntax by editing a few pages on another wiki site, such as Wikipedia, before translating MediaWiki messages at translatewiki.

Here are the most common and basic elements of wiki syntax that you should know:

[[target]]
Square brackets create a link to the word in the brackets.
[[target|text]]
When a pipe (|) is used in a link, the link will point to page whose name appears before the pipe (target), and the readers will see the text that appears after the pipe (text). Usually, the "text" should be translated to your language, but the target must remain in English, especially if the target is a special page such as [[Special:RecentChanges]]. If in doubt, check the documentation.
==, ===, ====
Repeated equal marks in the beginning and the end of the line are used to create page section headings. Simply copy them to the translation, and translate the text of the heading itself to your language. Make sure that the same number of equal signs appears in the beginning and the end of the line, and that it's the same as in the source message.
{{template}}, {{magicword}}, {{#magicword:parameter1|parameter2}}
In wiki sites curly braces are most often used for inserting templates, pieces of text that are stored once and are included repeatedly on many pages. They are also occasionally used for "magic words". In messages on translatewiki templates are not used frequently, however many messages include magic words. The most frequent magic words in messages are {{plural}} and {{gender}}. For more information, see the section on magic words on this page. If a magic word begins with #, it must appear in the translation. Usually, the names of templates and magic words must remain in English, but parameters can often be translated. When in doubt, check the message documentation or ask at Support.
*
When the asterisk (*) appears in the beginning of a line, it creates an item in a bullets list.
#
When the number sign (#), also known as hash mark, octothorp, hex, pound, etc., appears in the beginning of a line, it creates an item in a numbered list.

Magic words and language features

Most of what you will be translating is English text. However, some parts will be more technical: these are "variables" and "magic words". Here are the main ones that you need to know.

$1, $2, $3, etc.: variables

Many messages must show things that are not known during the time of the translation. The value is known only when the message is shown to the user ("run time"). Common examples of things that are shown instead of $1, $2, $3, etc. are usernames, page names, file names, and various numbers. They are known variables, parameters, or placeholders.

The documentation explains what will these variables be replaced with. Examples:

  • The message is "You received a message from $1" and the documentation says: "$1 is a username". When the message is shown to a user who received a message from the user Amire80, the message will say "You received a message from Amire80".
  • The message is "There are $1 pages in the category $2" and the documentation says: "$1 is the number of pages and $2 is a category name", then when you look at the category "19th-century Russian monarchs", the message will say "There are 7 pages in the category 19th-century Russian monarchs".

Put these variables in the place where the corresponding words or numbers appear in your language. It doesn't have to be the same as in English.

Note that you must always use the Western Arabic numerals: 1 2 3 4 5 6 7 8 9 0. If your language uses different numerals, such as ١ ٢ ٣, १ २ ३, ߁ ߂ ߃, etc. remember to switch your keyboard and use the Western Arabic numerals 1 2 3, etc., in variables with the dollar sign ($).

PLURAL:

If you see something like $1 {{PLURAL:$1|page|pages}} in a translatable message, this means that the word will be shown according to the value of the variable $1. Note that you must not change the PLURAL:$1 part, but you must translate the page|pages part which gives a list of translated plural forms.

Different languages have different grammatical rules for plural forms. English has one form (singular) for the number 1, and the plural form is used for zero and for all the other numbers: 0 pages, 1 page, 2 pages, 10 pages, etc. Polish uses singular for number 1, and different plural forms for numbers 2, 3, 4, and numbers from 5 and up. The translation to Polish will be $1 {{PLURAL:$1|strona|strony|stron}}; note that there are three forms, and not two, like in English. The output, depending on the number, will be:

  • when $1 is 1: 1 strona
  • when $1 is 2: 2 strony
  • when $1 is 4: 4 strony
  • when $1 is 5: 5 stron

The rules are defined in a standard called CLDR, which has information about many languages. If information about plural forms in your language is not defined, or if it is defined incorrectly, see the page CLDR for tips about how it can be fixed.

If your language has no plural forms at all, then simply write something like $1 {{PLURAL:$1|page}}, or $1 page{{PLURAL:$1|}} (with an empty list of forms when the invariable term is already placed elsewhere outside this special markup, but you must keep at least {{PLURAL:$1|}} to avoid a validation error where this code is required by the Translate UI in the translated message for the target language). Plural forms are given in parameters after the first pipe character | as a list of items, one for each form, and are also separated by pipes:

  • The text for the plural form given in each one item may be prefixed by a distinctive "selector" keyword or numeric value, followed by an equal sign=. These selectors can only be used only once in the list of plural forms.
    • The following selectors are recognized: one (or 1, singular), two (or 2, dual), few (paucal), many (also used for fractions if they have a separate class), other (or in last position with no selector), or zero (or 0); reserved keywords used as selectors must also remain in English.
    • The selector zero (or 0) is special and only supported in a few languages, and only with an explicit selector specified before the text of the translated form.
    • Note that the forms selected by zero, one or two do not necessarily mean that the numeric value is exactly 0, 1 or 2: the rules used to map one or more values to each any plural selector are language-specific and may only consider some digits in the numeric value; some values may also behave differently if they are integers and non-integers, or if there are decimals explicitly presented in the numeric value (including if they are all zeroes).
    • Some other selectors may be added (as defined in the CLDR standard) for languages needing them (see https://cldr.unicode.org/index/cldr-spec/plural-rules).
  • All listed form (except the last one) that are not prefixed by an explicit selector in an item are assumed to use the implicit selectors one,two,few,many (in that order, and as appropriate in the target language, which may support only the 1st one for most common languages, or even none of them for example in some Eastern Asian languages). In Mediawiki, most selectors are implicit and mapped according to this order.
  • The last given form not prefixed by an explicit selector in an item is assumed to use the implicit selector (other). This default form given is required (but its value may be empty text): it indicates the default form that will be returned (when none of the other selectors match the value specified in the 1st parameter between between PLURAL: and the 1st pipe|, using the plural rules defined for the target language). It is generally the most generic grammatical plural (for example used with large number values), but it may also be just the common singular form if there are no other suitable form, or if the terms must remain invariant according to the context of use, or if the language does not differentiate plural forms in the given terms (look at nouns, adjectives, verbs, pronouns, etc., or other alternate formulations).

For more technical information on PLURAL, see the page Plural.

GENDER:

Many messages depend on the grammatical gender of the users who are mentioned in them, masculine or feminine. Each logged in user can select their gender in their user preferences.

Here is an example of how gender is used in messages. The message is $1 {{GENDER:$1|mentioned}} you on {{GENDER:$1|his|her|their}} talk page, and the documentation says "$1 - user's name".

  • If you use MediaWiki in English, the verb "mentioned" will be the same everywhere, because English verbs don't change with gender, but the pronoun will be chosen according to gender:
    • When user Jack, who set his gender to "he" (masculine) in the preferences, mentioned you, you will see the following: "Jack mentioned you on his talk page".
    • When user Jane, who set her gender to "she" (feminine) in the preferences, mentioned you, you will see the following: "Jane mentioned you on her talk page".
    • When user Lee, who didn't set their gender in the preferences, mentioned you, you will see the following: "Lee mentioned you on their talk page".
  • If you use MediaWiki in Polish, the verb changes, but the pronoun in this sentence is the same. The translation to Polish is $1 {{GENDER:$1|wspomniał|wspomniała|wspomniał(a)}} o tobie na {{GENDER:$1|swojej}} stronie"
    • Jack wspomniał o tobie na swojej stronie.
    • Jane wspomniała o tobie na swojej stronie.
    • Lee wspomniał(-a) o tobie na swojej stronie.

If {{GENDER:parameter|forms...}}</nowiki> is used in the English message, but different gender forms are not needed in the translation to your language, just write {{GENDER:parameter|optional form}}</nowiki> with one form.

Do not translate the word GENDER and its following colon : into your language. It's a technical magic word, and it must remain in English.

For more technical information on GENDER, see the page Gender.

Other magic words

If you need to refer to the name of the site, you can use the magic word {{SITENAME}}. (It usually appears in the source message.)

If your language uses inflection or special punctuation, you should talk to the developers about implementing some support for it. Once this is done you can use forms like {{GRAMMAR:genitive|{{SITENAME}}}} to refer to the sitename in genitive.

You may also see HTML tags such as <strong>, <var>, <kbd>, <span>, and others in messages. You should usually copy the tags in the corresponding places in the translation. Sometimes you should translate the content inside these tags, and sometimes you should leave it as in the original message. Consult the documentation for each message.

Never translate magic words and HTML tags. They must always remain in English, as in the source message.

Links to special pages

Links to special pages in messages must always follow the syntax: [[Special:EnglishName|Translated name]]

The "Special:EnglishName" part must stay as is. Just copy it into the translation. The "Translated name" part, after the vertical bar (|), is shown to the reader, so translate it into your language in a way that will look natural and convenient as a link target and a part of a sentence. If there is no vertical bar (|) followed by link text in the original message, add them in the translation.

Subpage names that appear after a slash (/) after the special page name must also be left untranslated. Take the following message as an example: [[Special:Log/delete|Deletion log]]. Don't translate "Special:Log/delete", but do translate "Deletion log". For example, when translating into Russian, write like the following: [[Special:Log/delete|Журнал удалений]].

Translating namespace names

Every page on a MediaWiki site belongs to a namespace.

The main namespace, also known as the content space or the article space, includes the main content pages of the site. For example, on Wikipedia the encyclopedic articles are in the main namespace, on Wikivoyage the tour guide pages are in the main namespace, and so on. Other namespaces are for pages of discussions, help, documentation, user pages, and so on. See details below.

The name of the namespace appears in the beginning of the page, except for the pages in the main namespace. For example, all the pages in the Help namespace have names such as "Help:Editing", "Help:Uploading", and so on.

Pages in most (but not all) namespace can have a corresponding talk page, and these talk pages are in namespaces of their own. The talk namespace of the main namespace is called simply "Talk", the talk namespace of the Help namespace is called "Help talk", and so on.

Namespace names can be translated. If they aren't translated, they will appear in the fallback language. English namespace names can always be used in links to pages instead of the translated names.

Avoid namespace names that are identical to language codes in any letter case. This will create ambiguity with interlanguage links.

The translated namespace names must be consistent with the translations of the same words in MediaWiki messages.

Namespace name explanations

In the tables below, only the translation of the names in the "Namespace name" column is needed. The explanation is provided only for the convenience of the translators.

The namespaces that are used on all MediaWiki sites:

Core namespaces
Namespace name Description
Media This doesn't mean "journalism". This is short for "multimedia". This is a general name for various media files stored in a common media repository. For example: image file, audio file, video file, etc. This is quite technical and rarely used, and may simply be transliterated or left untranslated.
Special This is an adjective. It's a namespace for special pages, which cannot be edited by users. They provide various services, such as display of information about the wiki, Recent Changes, Watchlist, Statistics, and special administration and editing interfaces such as Blocking, managing user rights, Translation, etc.
Talk The talk page for the main namespaces. Talk pages is where discussion about other pages takes place.
User This is a user of the wiki. If there are masculine and feminine forms for the word "user" in your wiki, it's possible to add both.
User talk This is the talk page of a user. It's used for discussing things directly with a person, whereas article talk pages are for talking about an article.
Wikipedia talk This is for talk pages where the wiki site's internal administration pages are discussed. "Wikipedia" here is just given as an example because Wikipedia is often (though not always) is the first site in every language. It can also be "Wiktionary talk", "Wikisource talk", etc. In the namespaces translations file, it appears as "$1".
File A file, usually photos, videos, music, and PDFs. These pages show the file and some information about it. For example, File:Viang Xai, Laos - panoramio (3).jpg.
File talk A talk page for discussions about the file.
MediaWiki Each pages in this namespace stores a translatable message. If a page exists, its content overrides the translation in the source code and in translatewiki. This is a name "MediaWiki" and it must remain recognizable, so you must not translate the word "media", but you can adapt its spelling to your language.
MediaWiki talk A talk page for discussions about the message in the MediaWiki namespace.
Template A piece of text or code that can be embedded in other pages. Common examples of templates are infoboxes, citations, tags at the top of the article, etc. For example, Template:Citation needed and Template:Infobox writer are popular templates in the English Wikipedia.
Template talk A talk page for discussions about a template.
Help This is a namespace for help pages, which explain the users how to use the website. For example, the page Help:Table in the English Wikipedia explain how to edit tables.
Help talk A talk page about help pages.
Category These are pages that describe a category that includes other pages. For example, the Wikipedia articles about Leymah Gbowee, Andrei Sakharov, and Alva Myrdal all belong to the "Nobel Peace Prize laureates" category in the English Wikipedia, and are automatically listed on that category's page: Category:Nobel Peace Prize laureates.
Category talk A talk page about category pages.

The following namespaces are used in extensions that are installed on many wikis, and should be translated as well:

Extensions namespaces
Namespace name Description
Module Modules are pieces of code that can be embedded into pages. They are similar to templates, but they are written in a programming language and not in wiki syntax. This namespace requires the Scribunto extension to be installed.
Module talk A talk page about a module.
Page In Wikisource sites, the page namespace shows a single page from a file that represents a book, such as PDF or DjVu, and allows people to transcribe it to a digital text.
Page talk A talk page about a page.
Index In Wikisource sites, the Index namespace describes a file that represents a book, such as PDF or DjVu, and maps between page numbers and different parts of the book.
Index talk A talk page about an index.

AdvancedTranslate

Before 2015, it was possible to translate names of namespaces and special pages in translatewiki on the page Special:AdvancedTranslate (also known as Special:Magic). Unfortunately, it had to be disabled for technical reasons. See gerrit:211677.

While the page is disabled, you can get these translated by using one of the following options:

In some rare cases where an extension doesn't support translation of namespaces, translation needs to be done with a local configuration setting for each wiki instead. See #Namespace name aliases. The developers will tell you if this is the case, answering your request.

Namespace name aliases

Since 2015, AdvancedTranslate is disabled.

Since namespace name aliases cannot be localised via translatewiki.net's Special:AdvancedTranslate because of their highly technical nature, you must make a request at support. Please list pairs of alias names, and their corresponding English namespace names. As a rule of thumb, whenever you alter namespace names via Special:AdvancedTranslate, and there is a wiki using the affected language as its default language, do report it!

Sitename/project namespace on Wikimedia wikis

If the sitename at your project is not localized, you should contact the other contributors at your project and find consensus about translation, then open a request at Phabricator; see m:Requesting wiki configuration changes.

Other technical issues

On MediaWiki, much more can be localised: see mw:Localisation#What can be localised.

Exports

Languages with translation completion less than 0% are not committed to version control. If the project consists of multiple message groups, the limit is applied to each group separately.

Wikimedia Gerrit
Translation updates are exported to version control every day
GitHub
Translation updates are exported to version control every Monday and Thursday. (Export threshold is 25 %)

Activity


Translation statistics

The numbers shown below are cached and may not show the latest status. See this stats page for always up-to-date statistics.

Language Messages Untranslated Completion Reviewed Outdated
aae: Arbëresh 49,126 47,879 2% 0% 1%
abs: Ambonese Malay 49,126 48,133 2% 0% 1%
ace: Achinese 49,130 46,663 5% 7% 1%
acf: Saint Lucian Creole 49,126 47,919 2% 0% 0%
acm: Iraqi Arabic 49,127 44,685 9% 2% 1%
ady-cyrl: Adyghe (Cyrillic script) 49,126 47,359 3% 89% 1%
aeb-arab: Tunisian Arabic (Arabic script) 49,126 48,007 2% 0% 1%
af: Afrikaans 49,161 39,448 19% 8% 3%
aln: Gheg Albanian 49,141 46,931 4% 0% 2%
alt: Southern Altai 49,127 43,680 11% 88% 1%
am: Amharic 49,127 46,915 4% 4% 1%
ami: Amis 49,127 47,552 3% 0% 1%
an: Aragonese 49,173 44,874 8% 0% 2%
ang: Old English 49,127 47,045 4% 0% 1%
ann: Obolo 49,126 47,539 3% 0% 1%
anp: Angika 49,137 46,253 5% 68% 1%
apc: Levantine Arabic 49,126 47,896 2% 1% 1%
ar: Arabic 49,833 7,162 85% 67% 2%
arc: Aramaic 49,127 46,437 5% 1% 1%
arn: Mapuche 49,139 47,218 3% 0% 1%
arq: Algerian Arabic 49,127 47,060 4% 3% 1%
ary: Moroccan Arabic 49,146 45,769 6% 20% 1%
arz: Egyptian Arabic 49,249 42,738 13% 51% 1%
as: Assamese 49,206 40,541 17% 23% 2%
ast: Asturian 49,339 24,566 50% 4% 3%
atj: Atikamekw 49,126 47,675 2% 6% 1%
av: Avaric 49,138 47,468 3% 9% 1%
avk: Kotava 49,126 46,609 5% 20% 1%
awa: Awadhi 49,215 43,308 12% 28% 1%
az: Azerbaijani 49,319 31,083 36% 7% 1%
azb: South Azerbaijani 49,138 43,078 12% 21% 2%
ba: Bashkir 49,165 34,883 29% 43% 1%
ban: Balinese 49,374 39,162 20% 20% 1%
bar: Bavarian 49,130 46,974 4% 1% 1%
bbc-latn: Batak Toba (Latin script) 49,127 47,550 3% 0% 1%
bcc: Southern Balochi 49,228 45,335 7% 0% 2%
bci: Baoulé 49,150 46,353 5% 0% 1%
bcl: Central Bikol 49,151 42,097 14% 6% 2%
bdr: West Coast Bajau 49,126 47,772 2% 0% 1%
be: Belarusian 49,169 33,023 32% 9% 1%
be-tarask: Belarusian (Taraškievica orthography) 49,235 29,586 39% 8% 1%
bew: Betawi 49,131 39,153 20% 0% 1%
bg: Bulgarian 49,300 30,733 37% 80% 1%
bgc: Haryanvi 49,126 47,956 2% 0% 1%
bgn: Western Balochi 49,146 45,430 7% 0% 1%
bho: Bhojpuri 49,131 46,073 6% 11% 1%
bjn: Banjar 49,142 43,566 11% 1% 1%
blk: Pa'O 49,143 42,807 12% 39% 1%
bn: Bangla 49,488 25,287 48% 12% 1%
bo: Tibetan 49,126 47,854 2% 7% 1%
bpy: Bishnupriya 49,127 47,406 3% 0% 1%
bqi: Bakhtiari 49,161 45,600 7% 0% 1%
br: Breton 49,253 30,422 38% 0% 1%
bs: Bosnian 49,267 35,707 27% 10% 3%
btm: Batak Mandailing 49,126 47,596 3% 65% 1%
bto: Iriga Bicolano 49,128 47,764 2% 0% 1%
bxr: Russia Buriat 49,125 44,192 10% 66% 1%
ca: Catalan 49,241 29,771 39% 10% 2%
ccp: Chakma 49,126 47,063 4% 2% 0%
cdo: Mindong 49,140 46,886 4% 37% 1%
ce: Chechen 49,254 25,416 48% 0% 2%
ceb: Cebuano 49,126 47,703 2% 0% 1%
chn: Chinook Jargon 49,126 47,819 2% 0% 1%
ckb: Central Kurdish 49,230 39,230 20% 6% 2%
co: Corsican 49,126 47,668 2% 2% 1%
cpx-hans: Puxian (Simplified Han script) 49,126 48,044 2% 0% 1%
cpx-hant: Puxian (Traditional Han script) 49,126 48,015 2% 0% 1%
crh-cyrl: Crimean Tatar (Cyrillic script) 49,137 47,480 3% 0% 1%
crh-latn: Crimean Tatar (Latin script) 49,137 45,930 6% 0% 1%
crh-ro: Dobrujan Tatar 49,126 47,483 3% 0% 1%
cs: Czech 49,365 26,643 46% 30% 2%
csb: Kashubian 49,128 46,999 4% 9% 1%
cu: Church Slavic 49,132 47,226 3% 2% 1%
cv: Chuvash 49,145 42,090 14% 73% 1%
cy: Welsh 49,169 35,776 27% 9% 2%
da: Danish 49,210 32,418 34% 28% 2%
dag: Dagbani 49,132 43,506 11% 23% 1%
de: German 49,559 2,900 94% 24% 1%
de-formal: German (formal address) 49,127 47,362 3% 5% 1%
dga: Dagaare 49,125 45,127 8% 50% 1%
din: Dinka 49,126 48,105 2% 0% 1%
diq: Zazaki 49,349 34,823 29% 27% 2%
dsb: Lower Sorbian 49,164 39,873 18% 0% 3%
dtp: Central Dusun 49,130 46,959 4% 47% 1%
dty: Doteli 49,134 46,705 4% 3% 1%
dua: Duala 49,125 47,899 2% 0% 1%
dv: Divehi 49,127 48,039 2% 52% 1%
ee: Ewe 49,126 47,797 2% 0% 1%
efi: Efik 49,126 47,909 2% 0% 1%
egl: Emilian 49,128 47,163 3% 0% 1%
el: Greek 49,278 25,627 47% 17% 3%
en: English 50,437 0 100% 0% 0%
en-gb: British English 49,126 48,099 2% 47% 1%
eo: Esperanto 49,353 30,944 37% 8% 2%
es: Spanish 49,478 9,534 80% 24% 2%
et: Estonian 49,262 30,288 38% 11% 1%
eu: Basque 49,244 35,189 28% 73% 2%
ext: Extremaduran 49,142 47,066 4% 0% 1%
fa: Persian 49,467 18,891 61% 15% 2%
fat: Fanti 49,126 47,369 3% 22% 1%
ff: Fula 49,127 47,909 2% 0% 1%
fi: Finnish 49,371 19,922 59% 14% 1%
fit: Tornedalen Finnish 49,142 46,146 6% 0% 1%
fo: Faroese 49,134 44,828 8% 5% 2%
fon: Fon 49,126 47,761 2% 0% 1%
fr: French 50,239 1,093 97% 55% 1%
frc: Cajun French 49,128 47,808 2% 8% 1%
frp: Arpitan 49,251 39,502 19% 0% 3%
frr: Northern Frisian 49,134 44,088 10% 0% 1%
fur: Friulian 49,130 46,494 5% 1% 1%
fy: Western Frisian 49,218 41,585 15% 8% 1%
ga: Irish 49,143 46,425 5% 1% 1%
gaa: Ga 49,125 47,343 3% 3% 1%
gan-hans: Gan (Simplified Han script) 49,134 47,460 3% 0% 1%
gan-hant: Gan (Traditional Han script) 49,134 47,048 4% 0% 1%
gcf: Guadeloupean Creole 49,126 47,178 3% 22% 1%
gcr: Guianan Creole 49,129 47,285 3% 0% 1%
gd: Scottish Gaelic 49,248 44,333 9% 0% 1%
gl: Galician 49,506 16,351 66% 11% 1%
gld: Nanai 49,126 47,847 2% 2% 1%
glk: Gilaki 49,127 47,857 2% 0% 1%
gn: Guarani 49,127 47,325 3% 0% 1%
gom-deva: Goan Konkani (Devanagari script) 49,130 47,038 4% 25% 1%
gom-latn: Goan Konkani (Latin script) 49,133 45,780 6% 4% 1%
gor: Gorontalo 49,128 46,709 4% 0% 1%
got: Gothic 49,127 47,762 2% 0% 1%
gpe: Ghanaian Pidgin 49,126 47,224 3% 0% 1%
grc: Ancient Greek 49,131 45,635 7% 23% 1%
gsw: Alemannic 49,155 40,354 17% 0% 3%
gu: Gujarati 49,148 41,425 15% 9% 2%
guc: Wayuu 49,126 47,611 3% 13% 1%
gur: Frafra 49,126 43,224 12% 26% 1%
guw: Gun 49,127 44,633 9% 10% 1%
gv: Manx 49,127 47,635 3% 0% 1%
ha: Hausa 49,136 46,112 6% 14% 1%
hak: Hakka Chinese 49,147 47,327 3% 0% 1%
haw: Hawaiian 49,130 47,462 3% 0% 1%
he: Hebrew 49,401 34 99% 10% 1%
hi: Hindi 49,323 31,200 36% 13% 3%
hif-latn: Fiji Hindi (Latin script) 49,128 44,983 8% 0% 1%
hil: Hiligaynon 49,127 47,014 4% 1% 1%
hke: Hunde 49,126 47,925 2% 0% 1%
hr: Croatian 49,312 32,450 34% 18% 2%
hrx: Hunsrik 49,126 44,968 8% 1% 1%
hsb: Upper Sorbian 49,203 35,571 27% 4% 3%
hsn: Xiang 49,128 47,795 2% 0% 1%
ht: Haitian Creole 49,127 45,845 6% 0% 1%
hu: Hungarian 49,230 24,832 49% 17% 2%
hy: Armenian 49,193 40,718 17% 15% 1%
hyw: Western Armenian 49,149 45,969 6% 0% 1%
ia: Interlingua 49,415 4 99% 3% 0%
iba: Iban 49,126 46,297 5% 0% 1%
ibb: Ibibio 49,126 47,905 2% 0% 1%
id: Indonesian 49,398 23,787 51% 7% 2%
ie: Interlingue 49,131 46,135 6% 7% 1%
ig: Igbo 49,133 45,130 8% 1% 1%
igl: Igala 49,126 47,521 3% 0% 1%
ilo: Iloko 49,151 40,157 18% 0% 3%
inh: Ingush 49,137 43,151 12% 28% 1%
io: Ido 49,162 39,429 19% 0% 1%
is: Icelandic 49,479 37,573 24% 2% 1%
isv-cyrl: Interslavic (Cyrillic script) 49,126 44,160 10% 2% 1%
isv-latn: Interslavic (Latin script) 49,127 40,669 17% 0% 1%
it: Italian 49,338 16,952 65% 9% 1%
ja: Japanese 49,635 14,460 70% 15% 1%
jam: Jamaican Creole English 49,126 47,738 2% 0% 1%
jut: Jutish 49,127 47,596 3% 0% 1%
jv: Javanese 49,192 38,657 21% 2% 2%
ka: Georgian 49,304 35,535 27% 19% 3%
kaa: Kara-Kalpak 49,170 43,508 11% 6% 1%
kab: Kabyle 49,136 44,176 10% 1% 1%
kai: Karekare 49,126 47,831 2% 0% 1%
kbd-cyrl: Kabardian (Cyrillic script) 49,126 47,640 3% 0% 1%
kcg: Tyap 49,139 44,577 9% 0% 1%
kea: Kabuverdianu 49,126 47,781 2% 10% 1%
kge: Komering 49,126 45,440 7% 0% 1%
khw: Khowar 49,136 47,109 4% 0% 1%
kiu: Kirmanjki 49,137 47,488 3% 0% 1%
kjh: Khakas 49,131 44,331 9% 3% 1%
kjp: Eastern Pwo 49,135 46,847 4% 11% 1%
kk-arab: Kazakh (Arabic script) 49,190 47,363 3% 0% 2%
kk-cyrl: Kazakh (Cyrillic script) 49,249 39,193 20% 14% 3%
kk-latn: Kazakh (Latin script) 49,187 47,364 3% 0% 2%
km: Khmer 49,152 40,829 16% 1% 2%
kn: Kannada 49,135 43,498 11% 23% 1%
ko: Korean 49,427 15,137 69% 12% 2%
ko-kp: Korean (North Korea) 49,132 46,294 5% 3% 1%
koi: Komi-Permyak 49,126 44,041 10% 1% 1%
kr: Kanuri 49,126 47,874 2% 1% 1%
krc: Karachay-Balkar 49,231 36,509 25% 0% 1%
kri: Krio 49,126 47,673 2% 12% 1%
krl: Karelian 49,125 47,720 2% 88% 1%
ks-arab: Kashmiri (Arabic script) 49,169 45,587 7% 53% 1%
ksh: Colognian 49,454 33,257 32% 0% 5%
ksw: S'gaw Karen 49,130 47,762 2% 81% 1%
ku-latn: Kurdish (Latin script) 49,187 42,222 14% 22% 1%
kum: Kumyk 49,126 47,665 2% 28% 1%
kus: Kusaal 49,126 45,069 8% 0% 1%
kv: Komi 49,126 44,332 9% 0% 1%
kw: Cornish 49,131 46,824 4% 0% 1%
ky: Kyrgyz 49,181 42,961 12% 11% 1%
la: Latin 49,155 46,326 5% 2% 1%
lad: Ladino 49,146 47,256 3% 0% 1%
lb: Luxembourgish 49,279 23,865 51% 7% 2%
lbe: Lak 49,128 47,983 2% 3% 1%
lez: Lezghian 49,127 47,390 3% 9% 1%
lfn: Lingua Franca Nova 49,145 44,199 10% 18% 1%
lg: Ganda 49,129 47,985 2% 0% 1%
li: Limburgish 49,151 40,764 17% 2% 3%
lij: Ligurian 49,171 36,101 26% 5% 1%
lki: Laki 49,161 42,513 13% 0% 2%
lld: Ladin 49,126 47,003 4% 23% 1%
lmo: Lombard 49,148 38,209 22% 2% 1%
lo: Lao 49,131 47,496 3% 15% 1%
lrc: Northern Luri 49,185 44,065 10% 0% 2%
lt: Lithuanian 49,302 19,672 60% 10% 2%
lua: Luba-Lulua 49,125 47,753 2% 0% 1%
lus: Mizo 49,134 46,331 5% 0% 1%
luz: Southern Luri 49,128 47,431 3% 39% 1%
lv: Latvian 49,166 37,355 24% 10% 2%
lzh: Literary Chinese 49,171 46,071 6% 16% 1%
lzz: Laz 49,125 47,955 2% 0% 1%
mad: Madurese 49,130 47,577 3% 11% 1%
mag: Magahi 49,129 43,454 11% 0% 1%
mai: Maithili 49,158 43,411 11% 4% 1%
map-bms: Banyumasan 49,135 46,748 4% 4% 1%
mdf: Moksha 49,129 43,816 10% 5% 1%
mg: Malagasy 49,131 44,036 10% 0% 1%
mhr: Eastern Mari 49,130 43,066 12% 71% 1%
min: Minangkabau 49,175 44,131 10% 20% 1%
mk: Macedonian 49,786 6,257 87% 8% 1%
ml: Malayalam 49,333 35,993 27% 7% 3%
mn: Mongolian 49,140 45,649 7% 0% 1%
mnc: Manchu 49,126 47,374 3% 6% 1%
mnc-mong: Manchu (Mongolian script) 49,127 47,992 2% 0% 1%
mni: Manipuri 49,143 46,317 5% 11% 1%
mnw: Mon 49,137 45,523 7% 0% 1%
mos: Mossi 49,125 42,467 13% 0% 1%
mr: Marathi 49,242 38,039 22% 41% 3%
mrh: Mara 49,127 46,486 5% 70% 1%
mrj: Western Mari 49,127 44,221 9% 96% 1%
ms: Malay 49,264 31,219 36% 5% 3%
ms-arab: Malay (Jawi script) 49,138 46,825 4% 0% 1%
mt: Maltese 49,179 41,460 15% 5% 3%
mui: Musi 49,127 47,919 2% 0% 1%
mwl: Mirandese 49,144 46,347 5% 0% 1%
my: Burmese 49,174 37,808 23% 30% 1%
myv: Erzya 49,135 43,245 11% 29% 1%
mzn: Mazanderani 49,141 46,853 4% 0% 1%
nah: Nahuatl 49,131 46,889 4% 0% 1%
nan-hant: Minnan (Traditional Han script) 49,129 47,976 2% 0% 1%
nan-latn-pehoeji: Minnan (Pe̍h-ōe-jī) 49,144 47,336 3% 0% 1%
nan-latn-tailo: Minnan (Tâi-lô) 49,128 47,852 2% 0% 0%
nap: Neapolitan 49,157 39,594 19% 2% 2%
nb: Norwegian Bokmål 49,549 5,966 87% 12% 1%
nds: Low German 49,142 44,970 8% 0% 2%
nds-nl: Low Saxon 49,152 43,336 11% 0% 1%
ne: Nepali 49,348 37,929 23% 3% 2%
nia: Nias 49,132 47,204 3% 7% 1%
nit: Southeastern Kolami 49,130 47,963 2% 22% 1%
nl: Dutch 49,374 2,021 95% 20% 1%
nl-informal: Dutch (informal address) 49,131 48,020 2% 12% 1%
nmz: Nawdm 49,131 47,946 2% 7% 1%
nn: Norwegian Nynorsk 49,197 36,962 24% 1% 3%
nod: Northern Thai 49,133 47,733 2% 3% 1%
nog: Nogai 49,130 47,926 2% 4% 1%
nqo: N’Ko 49,148 40,545 17% 2% 1%
nso: Northern Sotho 49,131 47,838 2% 0% 1%
nup: Nupe 49,129 47,527 3% 0% 1%
nyn: Nyankole 49,130 47,839 2% 0% 1%
nyo: Nyoro 49,130 47,705 2% 0% 0%
nys: Nyungar 49,130 47,957 2% 24% 1%
nzi: Nzima 49,129 48,074 2% 0% 1%
oc: Occitan 49,185 36,027 26% 13% 2%
ojb: Northwestern Ojibwa 49,131 47,680 2% 0% 1%
olo: Livvi-Karelian 49,134 43,427 11% 32% 1%
om: Oromo 49,130 47,266 3% 91% 1%
or: Odia 49,167 41,749 15% 38% 3%
os: Ossetic 49,141 46,620 5% 1% 1%
pa: Punjabi 49,165 41,464 15% 23% 1%
pam: Pampanga 49,140 47,197 3% 0% 1%
pap: Papiamento 49,130 47,610 3% 66% 1%
pcd: Picard 49,132 47,731 2% 0% 1%
pcm: Nigerian Pidgin 49,130 47,859 2% 0% 1%
pdc: Pennsylvania German 49,132 47,650 3% 0% 1%
pfl: Palatine German 49,130 46,586 5% 1% 1%
piu: Pintupi-Luritja 49,132 48,096 2% 0% 0%
pl: Polish 49,438 15,368 68% 13% 2%
pms: Piedmontese 49,191 36,385 26% 0% 4%
pnb: Western Punjabi 49,208 42,121 14% 1% 2%
pnt: Pontic 49,125 47,969 2% 0% 1%
prg: Prussian 49,130 46,669 5% 0% 1%
ps: Pashto 49,264 40,929 16% 3% 2%
pt: Portuguese 49,440 4,950 89% 14% 2%
pt-br: Brazilian Portuguese 49,740 8,545 82% 30% 3%
pwn: Paiwan 49,133 47,696 2% 0% 1%
qqq: Message documentation 50,436 716 98% 3% 0%
qu: Quechua 49,149 44,172 10% 0% 2%
rif: Riffian 49,131 48,105 2% 43% 1%
rki: Arakanese 49,130 47,256 3% 93% 1%
rm: Romansh 49,135 46,092 6% 0% 2%
rmc: Carpathian Romani 49,129 47,673 2% 8% 1%
rn: Rundi 49,130 47,622 3% 0% 1%
ro: Romanian 49,253 31,928 35% 6% 2%
roa-tara: Tarantino 49,458 24,302 50% 26% 2%
rsk: Pannonian Rusyn 49,133 44,995 8% 0% 1%
ru: Russian 49,611 11,621 76% 27% 1%
rue: Rusyn 49,144 42,654 13% 1% 3%
rut: Rutul 49,130 47,874 2% 0% 0%
rw: Kinyarwanda 49,129 47,801 2% 0% 1%
ryu: Okinawan 49,130 47,948 2% 3% 1%
sa: Sanskrit 49,141 43,352 11% 4% 2%
sah: Yakut 49,150 40,206 18% 48% 2%
sat: Santali 49,133 46,797 4% 74% 1%
sc: Sardinian 49,156 46,398 5% 4% 1%
scn: Sicilian 49,187 36,871 25% 2% 2%
sco: Scots 49,132 42,190 14% 6% 2%
sd: Sindhi 49,273 37,931 23% 17% 1%
sdc: Sassarese Sardinian 49,139 45,852 6% 13% 1%
sdh: Southern Kurdish 49,150 46,319 5% 2% 1%
se: Northern Sami 49,165 38,802 21% 18% 1%
ses: Koyraboro Senni 49,276 45,775 7% 0% 1%
sgs: Samogitian 49,132 46,641 5% 0% 1%
sh-latn: Serbo-Croatian (Latin script) 49,196 32,139 34% 0% 2%
shi: Tachelhit 49,135 47,173 3% 64% 1%
shn: Shan 49,134 44,649 9% 24% 1%
shy-latn: Shawiya (Latin script) 49,130 47,182 3% 0% 1%
si: Sinhala 49,260 40,417 17% 3% 3%
sjd: Kildin Sami 49,146 47,076 4% 0% 1%
sje: Pite Sami 49,132 46,604 5% 1% 1%
sk: Slovak 49,195 35,972 26% 8% 3%
skr-arab: Saraiki (Arabic script) 49,168 40,292 18% 0% 1%
sl: Slovenian 49,907 5,901 88% 4% 1%
sli: Lower Silesian 49,130 46,751 4% 0% 1%
smn: Inari Sami 49,147 43,016 12% 9% 1%
sms: Skolt Sami 49,186 42,184 14% 0% 1%
sn: Shona 49,130 46,781 4% 3% 1%
so: Somali 49,131 47,134 4% 0% 1%
sq: Albanian 49,153 40,233 18% 9% 2%
sr-ec: Serbian (Cyrillic script) 49,489 23,510 52% 21% 1%
sr-el: Serbian (Latin script) 49,516 27,685 44% 1% 2%
sro: Campidanese Sardinian 49,130 47,759 2% 0% 1%
stq: Saterland Frisian 49,141 45,476 7% 0% 2%
sty: Siberian Tatar 49,130 47,744 2% 83% 1%
su: Sundanese 49,140 43,459 11% 12% 1%
sv: Swedish 49,409 12,403 74% 30% 2%
sw: Swahili 49,146 43,551 11% 9% 2%
syl: Sylheti 49,133 46,570 5% 41% 1%
szl: Silesian 49,132 46,063 6% 13% 1%
szy: Sakizaya 49,152 42,124 14% 0% 2%
ta: Tamil 49,157 39,621 19% 5% 2%
tay: Tayal 49,132 45,562 7% 96% 1%
tcy: Tulu 49,138 44,532 9% 33% 1%
tdd: Tai Nuea 49,131 46,570 5% 0% 1%
te: Telugu 49,341 33,493 32% 12% 3%
tet: Tetum 49,132 47,974 2% 0% 1%
tg-cyrl: Tajik (Cyrillic script) 49,182 43,709 11% 5% 2%
tg-latn: Tajik (Latin script) 49,141 46,548 5% 0% 1%
th: Thai 49,291 31,187 36% 16% 2%
ti: Tigrinya 49,168 45,522 7% 0% 1%
tig: Tigre 49,129 47,674 2% 0% 1%
tk: Turkmen 49,134 41,631 15% 0% 3%
tl: Tagalog 49,449 37,709 23% 4% 4%
tly: Talysh 49,141 44,142 10% 0% 1%
to: Tongan 49,132 48,119 2% 0% 1%
tok: Toki Pona 49,138 47,694 2% 0% 1%
tr: Turkish 49,491 6,268 87% 67% 2%
trv: Taroko 49,131 47,392 3% 62% 1%
tt-cyrl: Tatar (Cyrillic script) 49,220 40,538 17% 18% 1%
tt-latn: Tatar (Latin script) 49,146 47,337 3% 0% 1%
ttj: Tooro 49,130 47,661 2% 0% 0%
tum: Tumbuka 49,130 47,563 3% 0% 1%
tw: Twi 49,137 46,429 5% 3% 1%
tyv: Tuvinian 49,138 43,877 10% 30% 1%
tzm: Central Atlas Tamazight 49,150 48,031 2% 7% 1%
udm: Udmurt 49,133 43,689 11% 11% 1%
ug-arab: Uyghur (Arabic script) 49,194 43,862 10% 1% 2%
uk: Ukrainian 50,015 7,292 85% 55% 2%
ur: Urdu 49,243 37,155 24% 3% 2%
uz: Uzbek 49,184 42,760 13% 2% 1%
vec: Venetian 49,237 41,087 16% 0% 3%
vep: Veps 49,170 42,757 13% 4% 1%
vi: Vietnamese 49,540 24,965 49% 13% 2%
vmw: Makhuwa 49,129 47,873 2% 2% 1%
vo: Volapük 49,134 44,036 10% 1% 1%
vro: Võro 49,140 46,647 5% 11% 1%
wa: Walloon 49,141 45,847 6% 14% 1%
wal: Wolaytta 49,130 46,442 5% 7% 1%
war: Waray 49,138 45,723 6% 0% 1%
wls: Wallisian 49,135 47,238 3% 0% 1%
wlx: Wali 49,126 48,126 2% 0% 1%
wo: Wolof 49,143 47,213 3% 0% 1%
wuu-hans: Wu (Simplified Han script) 49,142 46,446 5% 0% 1%
wuu-hant: Wu (Traditional Han script) 49,135 46,811 4% 13% 1%
xal: Kalmyk 49,130 42,991 12% 2% 1%
xmf: Mingrelian 49,313 39,762 19% 3% 1%
xsy: Saisiyat 49,131 47,709 2% 0% 1%
yi: Yiddish 49,226 39,611 19% 3% 2%
yo: Yoruba 49,132 44,208 10% 6% 1%
yrl: Nheengatu 49,143 46,751 4% 8% 1%
yue-hant: Cantonese (Traditional Han script) 49,209 41,037 16% 0% 2%
zea: Zeelandic 49,130 48,072 2% 0% 1%
zgh: Standard Moroccan Tamazight 49,134 46,249 5% 20% 1%
zh-hans: Simplified Chinese 49,723 5,300 89% 25% 1%
zh-hant: Traditional Chinese 49,524 1,421 97% 7% 1%
All 405 languages together 19,924,652 16,738,448 15% 15% 1%

Map of translators

Loading map...

Add yourself to map See also: Category:MediaWiki translators — all users that registered their participation in their user page (including those not indicating their location).

Other statistics and information

See also Category:MediaWiki statistics.

Historical statistics

  • Group statistics in time – gives an overview of the number of languages that pass translation milestones in time (discontinued October 2010).
  • Current version installed on translatewiki.net: 1.43.0-alpha