Template:IPA
| Template documentation follows |
|---|
| Note: the template above may sometimes be partially or fully invisible. |
| Visit "Template:IPA/doc" to edit its documentation if it is available. (How does this work?) |
| This template is used on approximately 183,000 pages. To avoid major disruption and server load, any changes should be tested in the template's /sandbox or /testcases subpages, or in your own user subpage. The tested changes can be added to this page in a single edit. Consider discussing changes on the talk page before implementing them. |
| This template uses Lua: |
This template ensures proper display of a transcription in the International Phonetic Alphabet (IPA). It can also automatically provide a label indicating the language being transcribed and link to an explanatory guide. Its behavior changes drastically depending on whether more than one unnamed parameter is given. For broad transcriptions of English, use {{IPAc-en}} instead.
Usage
The behavior of this template changes significantly depending on whether more than one unnamed parameter is given.
| Markup | Renders as |
|---|---|
{{IPA|/ˌlɔːrəm ˈɪpsəm/}} |
/ˌlɔːrəm ˈɪpsəm/ |
{{IPA|la|ˌloːrɛm ˈɪpsʊm}} |
Latin pronunciation: [ˌloːrɛm ˈɪpsʊm] |
Basic mode
The basic usage of this template is just to pass an IPA transcription as the first argument, as in:
| Markup | Renders as |
|---|---|
{{IPA|/ˌlɔːrəm ˈɪpsəm/}} |
/ˌlɔːrəm ˈɪpsəm/ |
Which might not look different from just the transcription without the template (/ˌlɔːrəm ˈɪpsəm/), but it actually outputs:
<span class="IPA nowrap" lang="und-Latn-fonipa" title="Representation in the International Phonetic Alphabet (IPA)">/ˌlɔːrəm<span class="wrap"> </span>ˈɪpsəm/</span>
That is, it adds
- the
IPAclass, allowing registered users to assign a typeface of their choice (see Help:IPA § Rendering issues for how); - an IETF language tag indicating IPA as the writing system (see Template:Lang § Rationale for more);
- a title attribute, which appears as a tooltip when the mouse hovers over the transcription;
- the
nowrapclass, preventing line wrapping at inappropriate places like after/orˌ; - the
wrapclass to whitespace characters, allowing wrapping to occur at appropriate places.
All IPA text should be placed in the template, even if it consists entirely of ASCII characters, as in {{IPA|/mi/}}. This allows users to format all examples of IPA text consistently, and software like screen readers to interpret them accurately. If a substantial portion of a page uses IPA, post notice of that fact with {{IPA notice}}.
Issue with linking
If the template is inside a wikilink, the link may not display correctly in certain namespaces (including the mainspace):
| Markup | Renders as |
|---|---|
[[Lorem ipsum|{{IPA|/ˌlɔːrəm ˈɪpsəm/}}]] |
[[Lorem ipsum|/ˌlɔːrəm ˈɪpsəm/]] |
This is because the template by default inserts a category. To prevent it, add |cat=no, as in:
| Markup | Renders as |
|---|---|
[[Lorem ipsum|{{IPA|/ˌlɔːrəm ˈɪpsəm/|cat=no}}]] |
Optional parameters
lang- IETF language tag (e.g.
ar,pt-BR) to be followed by-Latn-fonipa, replacingund(undetermined). tooltip- Replaces the default tooltip "Representation in the International Phonetic Alphabet (IPA)". Leaving it blank means no tooltip.
Guide-linking mode
If more than one unnamed parameter is given, the first one is recognized as a language code and the second as the transcription. The transcription is automatically linked to one of the language-specific keys if a corresponding one exists, or to Help:IPA if not, and preceded by a label with the name of the language, as in {{langx}}. Unlike in the basic mode, brackets are automatically added so need not be included in the input.
| Markup | Renders as |
|---|---|
{{IPA|la|ˌloːrɛm ˈɪpsʊm}} |
Latin pronunciation: [ˌloːrɛm ˈɪpsʊm] |
{{IPA|pt-BR|sɐ̃w̃ ˈpawlu|lang|Br-SaoPaulo.ogg}} |
Brazilian Portuguese: [sɐ̃w̃ ˈpawlu] Audio file "Br-SaoPaulo.ogg" not found |
{{IPA|ki|ɣēkōjó|link=yes}} |
Notice the transcriptions are linked to language-specific keys in the first two examples, and to the generic guide in the rest. The language name and article link are automatically taken from Module:Lang by passing the language tag, unless overridden in Module:IPA/data.
The behavior in this mode mimics {{IPA-xx}} templates that were created for a number of languages. {{IPA}} consolidates and replaces those templates for better maintenance and consistency.
Parameters
- First unnamed parameter
- IETF language tag (e.g.
ar,pt-BR). See Template:Lang for more. - Second unnamed parameter
- Transcription, without brackets.
- Third unnamed parameter
- Label code. Leave it blank to have no label at all. The label "[language name] pronunciation:" is used if the input is not empty but none of the below.
lang: "[language name]:"ipa: "IPA:"pron: "pronounced"also: "also"alsolang: "also [language name]:"langalso: "[language name] also"local: "locally"localpron: "local pronunciation:"
- Fourth unnamed parameter
- Name of an audio file to accompany the transcription. Ignored if
|audio=is given. label- Text that precedes the transcription. Takes precedence over the third unnamed parameter.
link- If set to
yes, the language name in the label will be linked to the article about the language. small- If set to
no, the label appears in the same size as the surrounding text. Be sure to use this where the text is already smaller, per MOS:SMALLTEXT (references, infoboxes, and navboxes are excluded by default). generic- If set to
yes, the transcription is linked not to the language-specific key but to the generic Help:IPA. This is required if the transcription does not adhere to the conventions laid out in the language-specific key, such as with non-standard dialects.
List of keys
These are defined in Module:IPA/data.
Common parameters
These parameters can be used in either mode.
audio- Name of an audio file to accompany the transcription. Takes precedence over the fourth unnamed parameter.
wrap- If set to
none, wrapping is prevented for the entire transcription (i.e. thewrapclass is not added to spaces). If set toall, no wrapping prevention takes place (i.e. thenowrapclass is not added to the transcription). class- HTML class(es) added to the span element containing the transcription.
cat- If set to
no, the page will not be categorized under Category:Pages with plain IPA (basic mode) or a language-specific subcategory of Category:Pages with IPA (guide-linking mode).
Tracking categories
- A subcategory of Category:Pages with IPA (if this is a red link, create it with the content
{{IPA language category}}) - Category:IPA template errors – added if more than one parameter is given and the first is an invalid language tag
- Category:Pages including recorded pronunciations – added if the transcription has audio
These are added only in Module:Category handler's default namespaces. If |debug=yes is given, the categories that would be added are shown as links, no matter the namespace. This is for testcases only.
TemplateData
TemplateData for IPA
TemplateData
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
This template ensures proper display of transcriptions using the International Phonetic Alphabet (IPA). Its behavior changes drastically depending on whether more than one unnamed parameter is given. For dialect-neutral transcriptions of English, use IPAc-en instead.
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Conversion templates
Some language-specific templates allow you to enter ordinary letters (or conventional ASCII equivalents) in place of IPA characters, and convert them to the phonetic symbols used to transcribe the language.
| Language | Template | Code example | Result |
|---|---|---|---|
| Cantonese | {{IPAc-yue}} (uses) | {{IPAc-yue|h|ung|2|.|z|i|2}}
|
[hʊŋ˧˥.tsi˧˥] |
| Hungarian | {{IPAc-hu}} (uses) | {{IPAc-hu|'|m|a|gy|a|r}}
|
[ˈmɒɟɒr] |
| Mandarin | {{IPAc-cmn}} (uses) | {{IPAc-cmn|zh|ong|1|h|ua|2}}
|
[ʈʂʊ́ŋxwǎ] |
| Polish | {{IPAc-pl}} (uses) | {{IPAc-pl|'|sz|cz|e|ć|i|n}}
|
[ˈʂt͡ʂɛt͡ɕin] |
Some other conversion templates have also been created (see list at Special:PrefixIndex/Template:IPAc-), but they haven't been vetted by the community and may not produce output complying with the respective keys.
IPA templates | |
|---|---|
| Inline | |
| Charts | |
| Guidance | |
| Meta templates |
- Template:IPA invokes Module:Navbox using Lua.
Usage
This template can be used to make a standard navigation box. It is intended for use within another template that standardises the title and contents of the box (see Template:ShipNavbox). This template SHOULD NOT be used directly within articles, as it creates a maintenance burden to do so whenever the contents of the box have to be updated.
The purpose of this template is to standardise the attributes of all navigation boxes, for example, their colours and other CSS attributes. The template is fairly simple, and could be extended to add other features in the future. Using this template allows changes to be implemented much quicker and easier than editing each template separately.
Syntax
{{navbox
|state = uncollapsed, collapsed, plain, autocollapse (default)
|name = mandatory - name of the template
|style = optional - style for the whole table
|title = mandatory - navbox header
|gtitleN = optional - title of N-th group of items
|styleN = optional - style for groupN; i.e. text-align
|groupN = mandatory - list of groups of items
|fstyle = optional - style for footer ; i.e. text-align
|footer = optional - navbox footer
}}
- Groups: Currently there is no technical limit to the maximum number of groups.
- Groups of items can be added as parameters: group1, group2, group3, ... up to groupN.
- Group title: Each group has its own title parameter: gtitle1, gtitle2, gtitle3, ... up to gtitleN. Note that the default width for the first column is 15%.
- Group style: Style may also be customised to each group in: style1, style2, style3, ... up to styleN.
- Note that neither the title nor the items have any wiki-links built into the template. As a result, users of the template are free to use wiki-links as they wish.
- Line breaks: Line-breaks (
<br />) are unnecessary, as text wrapping is done automatically by the template. This also includes links and text in gtitleN and groupN. - Bullets: Create unordered lists with lines beginning with *.
- Pipe links: Because of the nature of template syntax, it may be necessary to use Template:! (
{{!}}).
States
- Autocollapse: By default, the state of a navbox is "autocollapsed". This means that if the number of navboxes in a page exceeds the maximum allocation of the collapsible navboxes, then the remaining navboxes are collapsed automatically. For more information (or to change the setting), see MediaWiki:Common.js.
- Currently, the autocollapse allocation is 2 (see MediaWiki:Common.js). This means that if there are 3 navboxes in a page, the third and subsequent navboxes will be collapsed automatically.
- Uncollapsed: Forces the navbox to be displayed.
- All of the navboxes in this documentation are in the uncollapsed state.
- Collapsed: The reverse of uncollapsed. Forces the navbox to be hidden instead.
- Navboxes with a height of more than 300 pixels will also be collapsed automatically. For more information (or to change the setting), see MediaWiki:Common.js.
- Plain: Removes the "show/hide" link.
Sub-groups
- For larger navboxes, it may be necessary to include sub-groups within a particular group of items. It is also possible to collapsible navboxes within the parent navbox, see Collapsible sub-groups.
- To create sub-groups within
{{navbox}}, certain parameters are to be included:- The parent navbox group (i.e. group2 in the example below) requires the type parameter (gtype2 = Subgroup).
- The nested navbox (sub-group) requires the inclusion of the sub-group parameter (subgroup = yes). This enables the template to differentiate between the sub-group and the parent navbox.
{{navbox
|name =
|title =
|gtitle1 =
|group1 =
|gtitle2 =
|gtype2 = Subgroup (mandatory)
|group2 =
{{navbox
|subgroup = yes (mandatory)
|gtitle1 =
|group1 =
|gtitle2 =
|group2 =
}}
}}
Collapsible sub-groups
- For extremely long navboxes, it is recommended to use collapsible navboxes within the parent navbox. Further sub-groups can then be added to these collapsible navboxes.
- To create collapsible sub-groups within
{{navbox}}, these parameters need to be included:- The parent navbox is almost always uncollapsed (state=uncollapsed).
- The parent navbox group (i.e. group1 in the example below) requires the type parameter (gtype1 = Subgroup).
- The nested collapsible navbox requires the inclusion of the collapsible parameter (collapsible = yes). This enables the template to differentiate between the collapsible navbox and the parent navbox.
- The nested collapsible navbox is forcefully collapsed (state=collapsed).
{{navbox
|state = uncollapsed
|name =
|gtype1 = Subgroup
|group1 =
{{navbox
|collapsible = yes
|state = collapsed
|title =
|gtitle1 =
|group1 =
|gtitle2 =
|group2 =
}}
}}
Use of images
- The use of images in navboxes is permitted, but please resize the images to keep them small. Inventory-sized images (25-30 pixels) are recommended.
- Please use {{t|plink}} to create links with images. Use {{t|plink}} for any case where text is not desired after the link. It functions the same as {{t|plink}}, but it does not produce a wikilink in text. Use {{t|chatl}} to link chatheads. These templates create links for both the image and text (except for {{t|plink}}) using far less wikicode than the standard syntax.
Link and file share the same name
{{plink|Item}}
File name differs from the link
{{plink|Item|File}}
Link and file share the same name, but different text is desired to display
{{plink|Item|alt=Text}}
File name differs from the link and different text is desired to display
{{plink|Item|File|alt=Text}}
Categorising
Navboxes are very useful for transcluding categories onto a large number of pages that share both a trait and the navigation box. For example: Template:ShipNavbox transcludes Category:Ships onto every page that uses it.
There are 2 methods of categorising pages with navboxes:
The first way is with {{t|Ctg}}. This is the preferred method, and can be used in most cases. The rules and operations for the Category handler template are very simple; however, they are enough to produce the desired results on most pages.
Categorisation should only be used on a template for large-scale addition. It is unhelpful, for example, to use a rule that only applies to 1 page.
Examples
To see the following navboxes in action, see Template:Navbox.
Single line navbox with centered list
{{navbox
|name =
|title =
|style1 = text-align:center
|group1 =
}}
Navbox with standard footer
{{navbox
|name =
|title =
|gtitle1 =
|group1 =
|footer = Centered footer
}}
Navbox with styled footer
{{navbox
|name =
|title =
|gtitle1 =
|group1 =
|fstyle = text-align:right
|footer = Right-aligned footer
}}
Multiple line navbox
{{navbox
|name =
|title =
|gtitle1 = Group title 1
|group1 =
|gtitle2 = Group title 2
|group2 =
|gtitle3 = Group title 3
|group3 =
}}
Collapsed navbox
{{navbox
|state = collapsed
|name =
|title =
|style1 = text-align:center
|group1 =
}}
Plain navbox with Tnavbar
{{navbox
|state = plain
|name =
|title =
|style1 = text-align:center
|group1 =
}}
Plain navbox without Tnavbar
{{navbox
|state = plain
|title =
|style1 = text-align:center
|group1 =
}}
Complicated navbox
{{navbox
|state = uncollapsed
|name =
|title =
|gtitle1 = Level 1 Title 1
|group1 =
|gtitle2 = Level 1 Title 2
|group2 =
|gtitle3 = Level 1 Title 3
|group3 =
|gtitle4 = Level 1 Title 4
|group4 =
|gtitle5 = Level 1 Title 5
|gtype5 = Subgroup
|group5 =
{{navbox
|subgroup = Yes
|gtitle1 = Level 2 Title 1
|group1 =
|gtitle2 = Level 2 Title 2
|group2 =
|gtitle3 = Level 2 Title 3
|gtype3 = Subgroup
|group3 =
{{navbox
|subgroup = Yes
|gtitle1 = Level 3 Title 1
|group1 =
|gtitle2 = Level 3 Title 2
|group2 =
}}
|gtitle4 = Level 2 Title 4
|group4 =
}}
|gtitle6 = Level 1 Title 6
|group6 =
|gtitle7 = Level 1 Title 7
|group7 =
|fstyle =
|footer =
}}
Preventing unwanted documentation
The Navbox template's documentation is automatically transcluded under the navbox on any Template namespace page. It is not transcluded when used as a sub-group or collapsible sub-group template (subgroup= yes or collapsible=yes).
Should the documentation appear when it is unwanted, it can be hidden by setting the doc parameter doc=no on the template. In most cases, the doc parameter is NOT used and the parameter is removed completely.