Template:Language

From Wikipedia, the free encyclopedia
Jump to: navigation, search

Unrecognised language code

[edit] [history] [purge] Documentation icon Template documentation

This template is used to convert ISO 639 language codes into language names

Contents

Usage

  • Parameter 1 (compulsory) is the ISO 639-1 (two-letter) or ISO 639-2 (three letter) code for the language to output.
  • Parameter 2 (optional) is the two- or three-letter code for the language the result should be displayed in. If no valid parameter is given, the default is en

A list of language codes can be found at ISO 639-1 language matrix, List of ISO 639-1 codes, and List of ISO 639-2 codes.

Please note that this system requires a huge number of separate language names (~35,000) and so is currently very incomplete. If the required name has not already been defined for a particular language, the template will display an error (if no translations have been specified for the language, english translations will be returned). If you feel confident enough with a language that is not already defined, please take a few moments to create a new set of definitions for it.

Examples

  • {{language|en}} → English
  • {{language|fr}} → French
  • {{language|en|fr}} → anglais
  • {{language|fr|en}} → French
  • {{language|fr|fr}} → français

Technical details

This template works by calling a subpage (list) with the relevant language code for the second parameter (the return language); this subpage contains a switch statement that converts the first parameter into the name in the appropriate language. See for instance {{language/en}}, which is called to translate codes into English.

Because some language codes are very uncommon, it is possible to split a language into two subpages, eg /fr and /fr+. The /fr page is called first, and should contain the more common languages. Less common languages should be added to the /fr+ page, which is called only if no translation is found in the main subpage; between them, the two pages should contain all the available translations.

See also


Personal tools
Namespaces
Variants
Actions
Navigation
Interaction
Toolbox
Languages