Wiki Translation

From OpenStreetMap Wiki
Jump to: navigation, search
Available languages — Wiki Translation
  About   Guidelines   Organisation   Translation   Cleanup   Help ±
Chart of world writing systems.svg

Wiki Translation can be a good way to help develop the project across the world. The wiki holds a lot of important help content and documentation. We'd like to make at least some of this available in other languages. Note that translation efforts in other areas of the project are equally important if not more so (they usually happen on

Community cohesion

Unlike wikipedia, we are not aiming to capture vast amounts of knowledge in the wiki. Wikipedia decided that the best way to build their encyclopaedia was to split the communities up by language, and run them as almost entirely separate projects. The situation here is entirely different. The wiki is not the project. Translating wiki pages should be an exercise in improving community cohesion, helping everyone to understand each other, and ultimately helping to build the maps!

With this in mind we haven't deployed exactly the same wiki technology to support translations. We want the small fledging groups of people who do not speak English to feel welcome, and to have all the information they need, but we also want the community as a whole to stay together and stay focussed.

Wiki translation progress

Wiki translation is taking place on a somewhat ad-hoc basis, and you are encouraged to join in, but we also need to try and get more organised about this.

Translation efforts are still in very early stages in many languages. There are some wiki pages which are more important than others, so concentrate on these pages first.

How to translate

Single page

  • Find the English version of a page in the main namespace.
    If there is no English version, create one, for example by starting a new page from a search:
    Type the name of the page you want (say English page name) in the Search box, and start the search.
    The search results will say that no such page exists, but it will also include a (red) link to the (non existing) page. The message may say something like:
    Create the page "English page name" on this wiki!
    Click on the link and you will be starting to create the new page, in edit mode.
  • When you are reading the English version of the page, switch to edit mode.
    In order to have the languages tool bar displayed at the top (as you see on this page for example), be sure that the template {{Languages}} is present near the beginning of the page, otherwise insert the following wiki text in edit mode:
    {{Languages|English page name}}
    While you're in edit mode, copy the wiki text of the entire page to your clipboard. Save this English version with the Languages template added.
  • Where it says 'other languages', click 'show' and follow a red link to the language you want and begin creating the new wiki page. You will see that the new page will have the same title, but a language code prefix added.
  • Paste in the English text from your clipboard and now start translating it into your language and save the new translated page.
  • Finally, you may rename the new translated page with a translated title, but keep the language code prefix in the new name!
    Don't delete the redirecting page which is still needed for the interlanguage navigation bar to work properly.
    If you renamed a page that has subpages, you should also translate and rename the subpages the same way, using a consistant base page name for all subpages.

Technical notes:

  • Before saving the new page, your language is shown as a missing language in the preview. However, after you have saved it, your language may still be shown in the missing language box with black colour and bold type. This strange thing is caused by a template cache. Purge cache to rescan the available languages. Your language will be shown as available.
  • Due to technical reasons (limitations in the parser functions defined in the MediaWiki software showing this wiki), not all pages with existing translations will show by default in the list of available languages, but only languages for major languages of the world. The many other languages will be displayed in the second list of 'Other languages' without being tested for their existence, so this list may show both red links (missing major or minority languages), and blue links (missing minority languages). A solution is being developed and tested to solve this problem of inequal visibility, without using "costly" parser functions, but it is still not available. For now the costly parser functions only allow about 50 major languages to be tested and shown automatically in the list of available languages (other languages are listed in a second list, but their existence is never tested, they will be displayed there with blue links only when they exist: this second list is hidden by default as it frequently contains many missing languages shown with red links).

Additional steps:

  • Some templates transcluded in your translated page may need to be adapted: in some cases these are different templates rewritten in your language (also named with a language code prefix), but many templates now can autodetect the language they should display by internally using {{Langcode}} which returns the lowercase language code of the current page transcluding it, provided that this current page uses the correct language code prefix.
  • Categories listed at end of your page should to be converted to use the translated categories when they exist (see below for details about how to create them), instead of remaining in the English categories.

See also Wiki Help.


  • Use "Category:<languagecode>:<Adapted title>" convention.
  • Use {{Languages|ns=Category:|Original English title}} at top of your localized version in order to display the interlanguage navigation bar.
  • You need to keep "Category:<languagecode>:<Original English title>" as a redirecting page (example: category in English, redirect in Japanese, actual category in Japanese) so the the interlanguage navigation bar works.
  • In the redirecting category (still named in English), please also add {{Category redirect|<languagecode>:<Adapted title>}} so that any page that would still be categorized with the English title will be listed in that category visible as a subcategory of the translated category and not left in an orphaned category: it will ease the maintenance of those pages whose categorisation should be edited to use the adapted title.
  • Don't delete the redirecting category named in English, even if it is empty (and it should remain empty)! It is needed for links shown in the interlanguage navigation bar (which cannot guess the translated titles).

Translated pages with a title in a non-English language

If you want that a page translated to a national language have the title translated also, it is necessary to maintain anyway a page with english title preceded by language code and colon. This page would be a simply redirect to the actual page with title in national language.

Let's suppose that the English page name is "english_page_name", and you already have got a translated page with the title "XX:english_page_name" (where XX is the target language code like DE, IT, ...). Now you want the translated page to get a translated title "XX:translated_page_name" too. Do the following steps:

1. Go to the edit-view of the translated version (XX:english_page_name) and find the code-piece like {{Language}}
2. Change this code-piece to the following: {{Language|english_page_name}}. That is necessary to keep the language bar working after we moved the page.
3. Use the move function of the wiki to create a new translated title for the page: Click the small arrow next to the search bar, top right of the page, then move.
4. on the upcoming page, use the form like this:
To new title: the translated title
Move associated talk page: check this
click Move page

Now the content is moved to a page with the new translated page name "XX:translated_page_name". And also, a redirect is automatically established, so all old links to XX:english_page_name will be redirected to the new translated page.

But there is one problem left. Sometimes there are already some pages redirecting to the old english named page (our new redirecting page). Then there would occur a double redirection, and that causes problems because the Wiki-System will stop the second redirection (see To prevent this from happening:

5. open again the XX:english_page_name - Oh yeah, you can't open it because you will be redirected. Just use the link in the upper left corner: (Redirected from XX:english_page_name)
6. Now we opened the old page title which is now just a redirecting page
7. open the link What links here in the left menu.
8. now check if there are any pages where is written (redirect page) in black color.
9. Open this page, edit them and change the redirect directly to XX:translated_page_name

This would fix the double redirect problem and you have done a clean fresh title translation.

Instructions for the Languages template

This is a template that lists all languages available. It is based on parser functions from mediawiki and the ISO 639-1 language code.
This automatically generates a language menu consisting of links to the original page (in English) and all translated pages. The links are written in the respective language: Deutsch, English, French, etc.

The complete syntax is:

{{Languages|ns=NameSpace:|English page name}}

The parameter Page name is not necessary if the title of current page is equal to English page title, because his default value is assumed to be exactly the title of current page (however it is recommended to keep it to ease the translation of English pages and then renaming them in the actual target language).
The parameter ns= is only required if the translated page (or referred pages) stay in a different namespace than current page (this initially concerned pages translated in a few languages that have a dedicated namespace, listed in the table below or wikilink to page located in a different namespace). Anyway the default value is null and then refers to main namespace. Now this parameter is needed only for pages outside the main article space or one of the dedicated namespaces.

Example for actually implemented namespaces and languages:

Page_name (should be in English)
Cs:Page_name (Czech)
DE:Page_name (German)
ES:Page_name (Spanish)
FR:Page_name (French)
IT:Page_name (Italian)
JA:Page_name (Japanese)
NL:Page_name (Dutch)
RU:Page_name (Russian)
Uk:Page_name (Ukrainian, not United Kingdom!!!)

Brief instruction

  1. For correct work of the template all page names are in English.
    Every translated page needs a page name with a language code as a prefix, followed by a colon and the english page name. If you want to translate the title then make sure that the page with the prefix is redirected to a localized article.
    1. If the "plain" English page name content is written in English, the English page name does not have a prefix in the file name.
      Example: Page_name (English content) - FR:Page_name - DE:Page_name
    2. If the "plain" English page name should be a redirect to a page in some other language, the English translated page does need a prefix of "EN".
      Example: Page_name (redirect to non-English page) - EN:Page_name - FR:Page-name - DE:Page_name
  2. the following has to be included in each page: {{Languages|Page_name}}

If you click on "missing languages", and then you click on a red link, it automatically opens a new page with the right prefix and the right page name. Copy the original text to this page and translate it. In the first line you put {{Languages|Page_name}}

Language prefixes and namespaces

Many languages are supported merely as a wiki page naming convention, while some of the more widely used ones are set up as proper namespaces within the wiki software, allowing features like tickboxes on the advanced search. Pages can be listed by prefix (for any language) using Special:PrefixIndex.

Note that only a few languages (for which there are ample contents on this wiki and enough maintainers) have a dedicated namespace on this wiki (for historic reasons, these namespaces are using capital letters). These namespaces allow to perform searches in the many pages created in those languages. Most languages won't have this dedicated namespace. This wiki should progressively be updated to use autotranslatable templates (in a way similar to Wikimedia Commons), instead of having to maintaining a lot of separate pages for each language, for contents that can be maintained in one place independantly of the language displayed.

All other translated pages are stored in the main namespace, using a language-code prefix that should be written in lowercase (only the first letter of the prefix will be automatically uppercased, but this letter case is not significant). This wiki may still contain a few languages for which the language code was uppercased. But to ease the maintenance of links be consistant with the letter case of codes already used in the Languages template shown at the top of translated pages.

Note that most language codes used in prefixes are using lowercase letters. But for legacy reasons on this wiki, some languages have their own dedicated article namespaces that are named using capital letters (for translated articles in the following 7 namespaces: DE, ES, FR, IT, JA, NL, RU). The letter case is significant for prefixes that are not declared on this wiki with a dedicated namespace. But the lettercase of recognized namespace names is not significant, so you can safely use lowercase letters everywhere for all language codes (this will simplify maintenance tasks for links, notably by avoiding the creation of additional redirects on thiw wiki).

The letter case of language code prefixes however remains significant outside article namespaces and their associated talk pages (such as Template: or Category:), because the language code prefix after the namespace prefix is an actual part of the page title. For reasons of coherence and to help reduce the number of needed redirects and their maintenance, languages prefixes for pages in those namespaces should be lowercase everywhere except for the 7 languages listed above which should have their prefix capitalized (e.g. with "Category:Categories"; "Category:FR:Categories" soft-redirecting to "Category:FR:Catégories"; "Category:DE:Categories" soft-redirecting to "Category:DE:Kategorien"; "Category:Cs:Categories". But not "Category:Fr:Category", or "Category:CS:Categories"; the same applies to templates).

In a few cases, the original article was actually not written in English, but an English version (generally limited as a stub or partly translated) can use temporarily the capitalized prefix "EN:". However the interlanguage navigation bar does not work well in this case because it cannot properly detect that the unprefixed page name is not in English. To allow interlanguage navigation, the original page in other language than English should also use its own language code prefix, so that its translation to English could have its "EN:" prefix removed. The interlanguage navigation bar will link to the English page using the "EN:" prefix only where it exists, otherwise it will use the unprefixed page name (assuming that this unprefixed page name is in English).

Note also that categories cannot be simply hard-redirected (unlike articles, talk pages or templates). When a translated category with an English title (but a language code prefix) is renamed with a translated title (keeping its language code prefix), the category with the untranslated title becomes a hard redirect. If any page is categorized is a redirected category, the categories listed at bottom of these pages will be italicized: clicking on this category will redirect to the renamed category that will not list that page, listed only in the English-named category (this is an old limitation/bug of the MediaWiki software). To help diagnose those cases, an additional template should be added immediately after this renaming, so that the English-named category be listed within the translated category as long as the English-named category is populated.

For new language, please use language codes conforming to the BCP 47 standard — check the Registry of language subtags on the site (according to the BCP 47 standard, currently in RFC 5646): generally this means using the ISO 649-1 two-letter code where it exists, otherwise the two-letter technical ISO 646-2 language code, otherwise the three-letter ISO 649-3 code; avoid using obsolete language codes that are marked in this registry as being replaced by another one, or deprecated and merged into another one; for some languages, the language code may be followed by a ISO 15924 script code; it may also be followed by a ISO 3166-1 country/region code, but this usage is no longer recommended for coding a language variant, and this wiki will prefer to be really international and edited in a way acceptable in all regions where the same language is written. If for some language variants you need region/script subtags after a main language subtag, please write them in lowercase, even if BCP 47 preferably lists them with uppercase letters, but remember that letter case in BCP 47 language tags are not significant but only suggested.

Note also that a few language codes used for Wikipedia editions (and in interwiki links) do not apply to this scheme, for historical reasons, and have still not been converted or redirected to use the recommended BCP 47 codes (which is the universal standard for the web). Also some languages used on this wiki do not have an exact match with a linguistic edition of Wikipedia or this OSM wiki still makes distinctions which are no longer relevant in Wikipedia (such as script variants, because Wikipedia natively supports transliterators between those variants when this wiki still does not have this support). These exceptions are highlighted in the table below.

OSM wiki Wikipedia BCP 47
(RFC 5646 or later)
(in English)
af af af Afrikaans Afrikaans No No No
am am am አማርኛ Amharic No No No
as as as অসমীয়া Assamese No No No
ar ar ar العربية Arabic No Yes Yes
ast ast ast asturianu Asturian No No No
az az az azərbaycanca Azerbaijan No Yes No
bg bg bg български Bulgarian No Yes No
bn bn bn বাংলা Bengali No Yes No
br br br brezhoneg Breton No No No
bs bs bs bosanski Bosnian No Yes No
ca ca ca català Catalan (Valencian) No Yes No
co co co corsu Corsican No No No
cs cs cs čeština Czech No Yes No
da da da dansk Danish No Yes No
DE de de Deutsch German Yes Yes No
diq diq diq Zazaki Zazaki No No No
dv dv dv ދިވެހިބަސް Maldivian No No Yes
el el el Ελληνικά Greek No Yes No
EN en en English English No (default namespace) Yes No
eo eo eo Esperanto Esperanto No No No
ES es es español Spanish Yes Yes No
et et et eesti Estonian No Yes No
eu eu eu euskara Basque No No No
fa fa fa فارسی Farsi (Persian) No Yes Yes
fi fi fi suomi Finnish No Yes No
FR fr fr français French Yes Yes No
fy fy fy Frysk Western Frisian No No No
ga ga ga Gaeilge Irish Gaelic No No No
gd gd gd Gàidhlig Scottish Gaelic No No No
gl gl gl galego Galician No No No
gcf none gcf Kréyòl gwadloupéyen Guadeloupean Creole French No No No
gsw gsw gsw Alemannisch Alemannic / Alsatian No No No
gu gu gu ગુજરાતી Gujarati No No No
ha ha ha Hausa Hausa No No No
he he he עברית Hebrew No Yes Yes
hi hi hi हिन्दी Hindi No Yes No
hr hr hr hrvatski Croatian No Yes No
ht ht ht Kreyòl ayisyen Haitian Creole No No No
hu hu hu magyar Hungarian No Yes No
hy hy hy Հայերեն Armenian No Yes No
ia ia ia interlingua Interlingua No No No
id id id Bahasa Indonesia Indonesian No Yes No
ig ig ig Igbo Igbo No No No
is is is íslenska Icelandic No Yes No
IT it it italiano Italian Yes Yes No
JA ja ja 日本語 Japanese Yes Yes No
jv jv jv Basa Jawa Javanese No No No
ka ka ka ქართული Georgian No Yes No
kk kk kk қазақша Kazakh No Yes No
km km km ភាសាខ្មែរ Khmer (Cambodian) No Yes No
kn kn kn ಕನ್ನಡ Kannada No No No
ko ko ko 한국어 Korean No Yes No
ku ku ku Kurdî Kurdish No No No
lb lb lb Lëtzebuergesch Luxembourgish No No No
lo lo lo ລາວ Laotian No Yes No
lt lt lt lietuvių Lithuanian No Yes No
lv lv lv latviešu Latvian No Yes No
mg mg mg Malagasy Malagasy No No No
min min min Baso Minangkabau Baso Minangkabau No No No
mk mk mk македонски Macedonian No Yes No
ml ml ml മലയാളം Malayalam No Yes No
mn mn mn монгол Mongolian No Yes No
mr mr mr मराठी Marathi No No No
ms ms ms Bahasa Melayu Malaysian No No No
mt mt mt Malti Maltese No No No
my my my မြန်မာဘာသာ Myanmarese (Burmese) No No No
nan nan nan Bân-lâm-gú Min Nan No No No
nds nds nds Plattdüütsch Low German No No No
nds-nl nds-nl nds-NL Nedersaksies Low Saxon No No No
ne ne ne नेपाली Nepalese No No No
NL nl nl Nederlands Dutch/Flemish Yes Yes No
nn nn nn norsk nynorsk Norwegian (Nynorsk) No Yes No
no no no norsk bokmål Norwegian (Bokmal) No Yes No
oc oc oc occitan Occitan No No No
om om om Oromoo Oromo No No No
or or or ଓଡ଼ିଆ Oriya No Yes No
pa pa pa ਪੰਜਾਬੀ Panjabi No No No
pl pl pl polski Polish No Yes No
ps ps ps پښتو Pushto No No Yes
pt pt pt português Portuguese No Yes No
pt-br none, see pt pt-BR português do Brasil Brazilian Portuguese No Yes No
ro ro ro română Romanian No Yes No
RU ru ru русский Russian Yes Yes No
sd sd sd سنڌي Sindhi No No Yes
si si si සිංහල Sinhalese No No No
sk sk sk slovenčina Slovak No Yes No
sl sl sl slovenščina Slovenian No Yes No
so so so Soomaaliga Somali No No No
sq sq sq shqip Albanian No Yes No
sr sr sr српски / srpski Serbian No Yes No
sv sv sv svenska Swedish No Yes No
sw sw sw Kiswahili Swahili No No No
ta ta ta தமிழ் Tamil No Yes No
te te te తెలుగు Telugu No Yes No
tg tg tg тоҷикӣ Tajik No No No
th th th ไทย Thai No Yes No
tm tm tm tm Turkmen No No No
tr tr tr Türkçe Turkish No Yes No
uk uk uk українська Ukrainian No Yes No
ur ur ur اردو Urdu No Yes Yes
uz uz uz oʻzbekcha Uzbek No No No
vi vi vi Tiếng Việt Vietnamese No Yes No
wo wo wo Wolof Wolof No No No
wuu wuu wuu 吴语 Wu No No No
xh xh xh isiXhosa Xhosa No No No
yi yi yi ייִדיש Yiddish No No Yes
yo yo yo Yorùbá Yoruba No No No
yue yue yue 粵語 Cantonese No No No
za za za Vahcuengh Zhuang No No No
zh-hans none, see zh zh-Hans 中文(简体)‎ Simplified Chinese No Yes No
zh-hant none, see zh zh-Hant 中文(繁體)‎ Traditional Chinese No Yes No
zu zu zu isiZulu Zulu No No No


  • The Min Nan language spoken in Taiwan ("zh-min-nan-TW" in the old RFC 3066, or better now "nan-TW" or just "nan", see BCP 47) is normally written in the Latin script (rather than the simplified Han script, for which it is almost impossible to differentiate from Chinese written with the Simplified Han orthography), and has its own distinctive language code "nan". Taiwanese Chinese (zh-TW) is completely unrelated to Min Nan; the use of zh-TW is deprecated, use Traditional Chinese ("zh-Hant") instead. Feel free to create pages translated in Min Nan, if you need, using the standard "nan" language code.
  • See Chinese Wikipedia for informations about Chinese languages on WP ! If the transcoder is implemented here on this wiki, we would no longer need to maintain separate pages with orthographic differences between "zh-Hans" (essentially the same for the P.R. of China mainland, and Singapore) and "zh-Hant" (essentially the same for Taiwan, Hong Kong SAR, and Macau SAR)
  • Since Moldavian "ro-md"/"mo"" is not needed and should be removed! See Closure of Moldovan Wikipedia ! The only remaining difference of Moldovan was when the Romanian language was written in the Cyrillic script by people living in Moldova before its independance from USSR. The Russian minority living in the cessessionist Eastern part of Moldova, use the Russian language written in the Cyrillic scipt, not Moldovan/Romanian, but the other Moldovans do speak Romanian (with just minor vocabulary differences that have been developed when Moldova was occupied by USSR, differences that are now disappearing fast with the increased exchanges with Romanian medias and the return to the use of the Latin alphabet, and with which people of both countries can coexist with an excellent and evident mutual understanding.
  • The column "major (tested)" indicates which languages are automatially tested for looking for translated pages that are transcluding Template:Languages at top of pages. This navigation template will automatically detect the existence of translated pages and will avoid showng red links. But such detection is limited to about 50 languages, for technical reasons in this wiki. All other languages are only listed as "Other languages" in this navigation box, in a list with many red links hidden by default. For this reason, only major languages (or regional languages for which this wiki has significant contents content to show) will be part of the tested language list which is not hidden by default.
  • Many other languages may be referenced for the translations of toponyms and POIs in the OSM database (for example for name=*, using BCP47 language codes as suffixes), but most of these languages are not used for translations in this documentation wiki (they will probably never appear as "major (tested)" in the list above).