
Language templates |
---|
Language names (ISO 639) |
|
Interwiki links |
Foreign-language text |
|
Other |
|
This template may be used to convert a language name ('Spanish', 'German') to an ISO 639 language code ('es', 'de') and vice-versa, or to determine if a given code or language is valid in ISO 639.
Usage
{{ISO 639 name|ISO code}}
{{ISO 639 name|fn=iso_639_code_to_name|ISO code}}
{{Iso 639 name|fn=iso_639_name_to_code|Language name}}
{{ISO 639 name|fn=iso_639|ISO code or language name|link=yes|hide-err=yes}}
{{iso 639 name|fn=iso_639_code_exists|ISO code}}
Parameters
There is one required parameter and four optional parameters:
|1=
– unnamed (positional) param: either an ISO 639 language code, or an ISO 639 language name (required)|fn=
– function name: identifies what to do with the code or name in param 1 (convert it, check if it exists; etc.) (optional). These are the most commonly used values:iso_639_code_to_name
– convert the ISO 639 code in param 1 to a language name. (This is the default if fn is omitted.)iso_639_name_to_code
– convert the language name in param 1 to an ISO 639 codeiso_639_code_exists
– return true if the value in param 1 is an ISO 639 code, otherwise emptyiso_639_name_exists
– return true if the value in param 1 is an ISO 639 language name, otherwise emptyiso_639
– try to convert the value in param 1 from a language name to an ISO 639 code, and if that fails then try the other way (code to language)
- (For more values of
|fn=
, see § Additional function values below).
|link=yes
– if a language name is returned, links it to the Wikipedia article about the language (optional, default=no)|label=any string
– if a language name is returned, and linked with|link=yes
, then you can alter the link text by setting this param|hide_err=yes
– blocks the error message returned upon failure of any of the three conversion functions (iso_639_code_to_name
,iso_639_name_to_code
,iso_639
) (optional; default=no)
Additional function values
The following function values are also available for parameter |fn=
:
iso_639_code_1_to_name
– same asiso_639_code_to_name
except constrained to the ISO 639-1 data tableiso_639_code_2_to_name
– same asiso_639_code_to_name
except constrained to the ISO 639-2 data tableiso_639_code_2B_to_name
– same asiso_639_code_to_name
except constrained to the ISO 639-2B data tableiso_639_code_3_to_name
– same asiso_639_code_to_name
except constrained to the ISO 639-3 data tableiso_639_code_5_to_name
– same asiso_639_code_to_name
except constrained to the ISO 639-5 data table
Language names and codes
For a list of language names and ISO-639 codes, see:
- List of Wikipedias
- Special:SiteMatrix
- Lists of ISO 639 codes
Examples
{{ISO 639 name|en}}
gives English{{ISO 639 name|fr}}
gives French
Notes
The {{ISO 639 name}}
template will trim extraneous IETF language tags to just the ISO 639 code. E.g.:
Sanskrit in Latin script, which IETF language tag is sa-Latn
, renders as:
{{ISO 639 name|sa-Latn}}
→ Sanskrit error: sa-Latn is an IETF tag (help)
The error message can be suppressed with |hide-err=yes
:
{{ISO 639 name|sa-Latn|hide-err=yes}}
→ Sanskrit
The rendered language name can be linked to the appropriate language article with |link=yes
:
{{ISO 639 name|sa-Latn|hide-err=yes|link=yes}}
→ Sanskrit
When linking, an alternate link label can be provided with |label=<label text>
:
{{ISO 639 name|sa-Latn|hide-err=yes|link=yes|label=sa-Latn}}
→ sa-Latn
The {{ISO 639 name link}}
template is the same as {{ISO 639 name}}
except that it presets |link=yes
.
Both of these templates can be safely substituted.
Error messages
This template produces error messages. These messages are:
- <code> is an IETF tag – IETF language tags are not ISO 639 language codes. When these tags are encountered, the template attempts to render the correct language and also emits this error message
- ISO 639-<part> code is required – where <part> is 1, 2, 3, 5; template was called without the required language code
- <code> is not an ISO 639-<part> code – <code> fails simple length validation; 639 part 1, language codes are two characters, for 639 parts 2, 3, and 5, language codes are three characters
- <code> not found in ISO 639-<part> list – <code> not found after searching ISO 639-<part> data
The module that does the work for this template has other functionality not supported by this template. See Module:ISO 639 name. Error messages related to that other functionality are:
- language name required – module function
iso_639_name_to_code()
only – this message emitted when a language name is not provided in the{{#invoke:}}
- <part> not an ISO 639 part – module functions
iso_639_name_to_code()
andiso_639()
only – this message emitted when <part> is not one of 1, 2, 3, or 5 - language code or name required – module function
iso_639()
only – this message emitted when a language name or a language code is not provided in the{{#invoke:}}
You must be logged in to post a comment.