Template:Defn/doc: Difference between revisions

From Official Kodi Wiki
Jump to navigation Jump to search
(Remove unneeded Sandbox other template)
m (Fix redlink)
 
(2 intermediate revisions by the same user not shown)
Line 6: Line 6:
Pro forma usage is thus:
Pro forma usage is thus:


  {{Tnull|Glossary}}
  {{Tlx|Glossary}}
  {{Tnull|Term|1{{=}}<var>term</var>}}
  {{Tlx|Term|term&equals;<var>term</var>}}
  <span class="example example-bold" style="font-weight: bold; color: #006400;">{{Tnull|Defn|1{{=}}<var>Definition.</var>}}</span>
  <span class="example example-bold" style="font-weight: bold; color: #006400;">{{Tlx|Defn|defn&equals;<var>Definition.</var>}}</span>
  {{Tnull|Glossary end}}
  {{Tlx|Glossary end}}


Links, inline templates, reference citations, wikimarkup styles, etc., can be applied to the definition. Technically, the {{Para|1}} part is optional if the content of the definition does not contain the '=' character, but as any editors can add content, including templates with this character in them, it is always safest to explicitly name the parameter. The {{Para|1}} parameter can also be called {{Para|defn}} for those who don't care for unnamed or numeric parameters.
Links, inline templates, reference citations, wikimarkup styles, etc., can be applied to the definition. Technically, the {{Para|1}} part is optional if the content of the definition does not contain the '=' character, but as any editors can add content, including templates with this character in them, it is always safest to explicitly name the parameter. The {{Para|1}} parameter can also be called {{Para|defn}} for those who don't care for unnamed or numeric parameters.
Line 17: Line 17:


More complex usage might be:
More complex usage might be:
<blockquote>{{Tnull|Defn|1{{=}}<var>Definition.</var>&nbsp;|num{{=}}<var>#</var>&nbsp;|term{{=}}<var>term_id</var>}}</blockquote>
<blockquote>{{Tlx|Defn|1&equals;<var>Definition.</var>|num&equals;<var>#</var>|term&equals;<var>term_id</var>}}</blockquote>


where {{Para|num|<var>#</var>}} gives a leading number for a definition in a list of definitions, and {{Para|term|<var>term_id</var>}} provides the name of the term used in the {{Tnull|Term}} template to which this definition pertains.
where {{Para|num|<var>#</var>}} gives a leading number for a definition in a list of definitions, and {{Para|term|<var>term_id</var>}} provides the name of the term used in the {{Tlx|Term}} template to which this definition pertains.


=== Images, hatnotes and other content ===
=== Images, hatnotes and other content ===
Images, hatnotes and other "add-in" content intended to immediately follow the {{Tnull|Term}} <em>must be used at the top of (inside) the first {{Tnull|Defn}} of the {{Tnull|Term}}.</em> They <strong>cannot</strong> be placed between the {{Tnull|Term}} and {{Tnull|Defn}} or it will break the glossary markup. Images can, of course, be placed elsewhere within the {{Tnull|Defn}}, and bottom-notes like {{Tnull|More}} can be placed at the ends of, but <em>inside</em> the content of {{Tnull|Defn}}s.
Images, hatnotes and other "add-in" content intended to immediately follow the {{Tlx|Term}} <em>must be used at the top of (inside) the first {{Tlx|Defn}} of the {{Tlx|Term}}.</em> They '''cannot''' be placed between the {{Tlx|Term}} and {{Tlx|Defn}} or it will break the glossary markup. Images can, of course, be placed elsewhere within the {{Tlx|Defn}}, and bottom-notes like {{Tlx|See also}} can be placed at the ends of, but <em>inside</em> the content of {{Tlx|Defn}}s.


{| style="border: 2px groove darkslategray; border-collapse: collapse;"
{| style="border: 2px groove darkslategray; border-collapse: collapse;"
  | style="border: 1px solid black; padding: 1.5em; vertical-align: top;" | <syntaxhighlight lang="moin">
  | style="border: 1px solid black; padding: 1.5em; vertical-align: top;" | <syntaxhighlight lang="moin">
{{Glossary}}
{{Glossary}}
{{Term |1=colour ball |content=colour ball {{Anchor|coloured ball|coloured balls|colour|colours|color ball}}}}
{{Term|term=color ball|content=color ball {{Anchor|colored ball|colored balls|color|colors|color ball}}}}
{{Defn|1=
{{Defn|defn=
[[File:Set of Snookerballs.png|thumb|right|150px|A complete set of snooker balls, with six '''colour balls''']]
[[commons:File:Set of Snookerballs.png|thumb|right|150px|A complete set of snooker balls, with six '''color balls''']]
<p class="glossary-hatnote"><span>Also '''coloured ball(s)''', '''colour(s)'''; American spelling '''color''' sometimes also used.</span></p>
<p class="glossary-hatnote"><span>Also '''colored ball(s)''', '''color(s)'''.</span></p>
In snooker, any of the object balls that are not reds.
In snooker, any of the object balls that are not reds.
}}
}}
Line 37: Line 37:
  | style="border: 1px solid black; padding: 1.5em; vertical-align: top;" | <blockquote>
  | style="border: 1px solid black; padding: 1.5em; vertical-align: top;" | <blockquote>
{{Glossary}}
{{Glossary}}
{{Term |1=colour ball |content=colour ball {{Anchor|coloured ball|coloured balls|colour|colours|color ball}}}}
{{Term|term=color ball|content=color ball {{Anchor|colored ball|colored balls|color|colors|color ball}}}}
{{Defn|1=
{{Defn|defn=
[[File:Set of Snookerballs.png|thumb|right|150px|A complete set of snooker balls, with six '''colour balls''']]
[[commons:File:Set of Snookerballs.png|thumb|right|150px|A complete set of snooker balls, with six '''color balls''']]
<p class="glossary-hatnote"><span>Also '''coloured ball(s)''', '''colour(s)'''; American spelling '''color''' sometimes also used.</span></p>
<p class="glossary-hatnote"><span>Also '''colored ball(s)''', '''color(s)'''.</span></p>
In snooker, any of the object balls that are not reds.
In snooker, any of the object balls that are not reds.
}}
}}
Line 48: Line 48:


=== Multiple definitions for one term ===
=== Multiple definitions for one term ===
If a single {{Tnull|Term}} has multiple definitions, they are simply numbered with the {{Para|2|parameter}} explicitly. Think of the parameter as standing for "<strong>2</strong>nd or later definition". You can also call it {{Para|num}}, if you prefer.
If a single {{Tlx|Term}} has multiple definitions, they are simply numbered with the {{Para|2|parameter}} explicitly. Think of the parameter as standing for "<strong>2</strong>nd or later definition". You can also call it {{Para|num}}, if you prefer.


Example:
Example:
Line 55: Line 55:
  | style="border: 1px solid black; vertical-align: top;" | <syntaxhighlight lang="moin">
  | style="border: 1px solid black; vertical-align: top;" | <syntaxhighlight lang="moin">
{{Glossary}}
{{Glossary}}
{{Term|1=blubbermonster}}
{{Term|term=blubbermonster}}
{{Defn|1=Lorem ipsum dolor sit amet. |num=1}}
{{Defn|defn=Lorem ipsum dolor sit amet.|num=1}}
{{Defn|1=Consectetur adipisicing elit. |num=2}}
{{Defn|defn=Consectetur adipisicing elit.|num=2}}
{{Glossary end}}</syntaxhighlight>
{{Glossary end}}</syntaxhighlight>
  |-
  |-
  | style="border: 1px solid black; vertical-align: top;" | <blockquote>
  | style="border: 1px solid black; vertical-align: top;" | <blockquote>
{{Glossary}}
{{Glossary}}
{{Term|1=blubbermonster}}
{{Term|term=blubbermonster}}
{{Defn|1=Lorem ipsum dolor sit amet. |num=1}}
{{Defn|defn=Lorem ipsum dolor sit amet.|num=1}}
{{Defn|1=Consectetur adipisicing elit. |num=2}}
{{Defn|defn=Consectetur adipisicing elit.|num=2}}
{{Glossary end}}
{{Glossary end}}
</blockquote>
</blockquote>
Line 72: Line 72:


Because of the uneven length of definitions, it is usually more convenient to put the {{Para|2|}} before the {{Para|1}} description:
Because of the uneven length of definitions, it is usually more convenient to put the {{Para|2|}} before the {{Para|1}} description:
<blockquote>{{Tnull|Defn&nbsp;|2{{=}}1&nbsp;|1{{=}}Lorem ipsum dolor sit amet.}}</blockquote>
<blockquote>{{Tlx|Defn|2&equals;1|1&equals;Lorem ipsum dolor sit amet.}}</blockquote>
or
or
<blockquote>{{Tnull|Defn&nbsp;|num{{=}}1&nbsp;|1{{=}}Lorem ipsum dolor sit amet.}}</blockquote>
<blockquote>{{Tlx|Defn|num&equals;1|1&equals;Lorem ipsum dolor sit amet.}}</blockquote>


This is a very robust method, because it permits complex content like block quotations, nested lists, cross-reference hatnotes, and other block-level markup inside each definition. The definitions can also be independently linked.
This is a very robust method, because it permits complex content like block quotations, nested lists, cross-reference hatnotes, and other block-level markup inside each definition. The definitions can also be independently linked.
Line 166: Line 166:


The {{Para|class}} parameter will pass one or more space-separated CSS classes on to {{Tag|dd|o}} element, in addition to the automatically included class <code>glossary</code>. ''There is rarely any reason to do this.''<includeonly>
The {{Para|class}} parameter will pass one or more space-separated CSS classes on to {{Tag|dd|o}} element, in addition to the automatically included class <code>glossary</code>. ''There is rarely any reason to do this.''<includeonly>


<!-- CATEGORIES HERE, THANKS -->
<!-- CATEGORIES HERE, THANKS -->
[[Category:Glossary templates]]
[[Category:Definition list templates]]
[[Category:Definition list templates]]</includeonly>
[[Category:Glossary templates]]</includeonly>

Latest revision as of 02:50, 11 September 2022


Usage

The template {{Defn}} is used in template-structured glossaries and other lists which express correlated properties in pairs to show how something is defined. It is a wrapper for <dd>...</dd>, the description list definition HTML element.

Pro forma usage is thus:

{{Glossary}}
{{Term|term=term}}
{{Defn|defn=Definition.}}
{{Glossary end}}

Links, inline templates, reference citations, wikimarkup styles, etc., can be applied to the definition. Technically, the |1= part is optional if the content of the definition does not contain the '=' character, but as any editors can add content, including templates with this character in them, it is always safest to explicitly name the parameter. The |1= parameter can also be called |defn= for those who don't care for unnamed or numeric parameters.

  • This will work: {{defn|1=The concept that the mass of a body is a measure of its energy content, expressed by the formula E=MC²}}
  • This will work: {{defn|defn=The concept that the mass of a body is a measure of its energy content, expressed by the formula E=MC²}}
  • This will fail: {{defn|The concept that the mass of a body is a measure of its energy content, expressed by the formula E=MC²}}

More complex usage might be:

{{Defn|1=Definition.|num=#|term=term_id}}

where |num=# gives a leading number for a definition in a list of definitions, and |term=term_id provides the name of the term used in the {{Term}} template to which this definition pertains.

Images, hatnotes and other content

Images, hatnotes and other "add-in" content intended to immediately follow the {{Term}} must be used at the top of (inside) the first {{Defn}} of the {{Term}}. They cannot be placed between the {{Term}} and {{Defn}} or it will break the glossary markup. Images can, of course, be placed elsewhere within the {{Defn}}, and bottom-notes like {{See also}} can be placed at the ends of, but inside the content of {{Defn}}s.

{{Glossary}}
{{Term|term=color ball|content=color ball {{Anchor|colored ball|colored balls|color|colors|color ball}}}}
{{Defn|defn=
[[commons:File:Set of Snookerballs.png|thumb|right|150px|A complete set of snooker balls, with six '''color balls''']]
<p class="glossary-hatnote"><span>Also '''colored ball(s)''', '''color(s)'''.</span></p>
In snooker, any of the object balls that are not reds.
}}
{{Glossary end}}
color ball
thumb|right|150px|A complete set of snooker balls, with six color balls

Also colored ball(s), color(s).

In snooker, any of the object balls that are not reds.

Multiple definitions for one term

If a single {{Term}} has multiple definitions, they are simply numbered with the |2=parameter explicitly. Think of the parameter as standing for "2nd or later definition". You can also call it |num=, if you prefer.

Example:

{{Glossary}}
{{Term|term=blubbermonster}}
{{Defn|defn=Lorem ipsum dolor sit amet.|num=1}}
{{Defn|defn=Consectetur adipisicing elit.|num=2}}
{{Glossary end}}
blubbermonster
1.  Lorem ipsum dolor sit amet.
2.  Consectetur adipisicing elit.

Because of the uneven length of definitions, it is usually more convenient to put the |2= before the |1= description:

{{Defn|2=1|1=Lorem ipsum dolor sit amet.}}

or

{{Defn|num=1|1=Lorem ipsum dolor sit amet.}}

This is a very robust method, because it permits complex content like block quotations, nested lists, cross-reference hatnotes, and other block-level markup inside each definition. The definitions can also be independently linked.

Making the definition independently linkable

HTML5 update:

Most of the restrictions on the content of id have been removed, so id values no longer have to begin with an [a-z][A-Z] alphabetic character, avoid most punctuation marks, or suffer other such limitations. The MediaWiki engine is smart enough to auto-escape any problematic characters, on the fly.

To enable a link directly to a specific definition, name the definition with its {{term}} (or it must be the |id=foo value, if any, used in {{term}}). This must be unique on the page for each term, but should be the same for multiple definitions of the same term). This is done with the {{defn}}'s |term= parameter. This will produce a #-link target ID in the form term-defn#, where the # is the number of the definition (see #Multiple definitions for one term, above), defaulting to "1".

Example:

{{Glossary}}
{{Term|1=blubbermonster}}
{{Defn|num=1 |1=Lorem ipsum dolor sit amet. |term=blubbermonster}}
{{Defn|num=2 |1=Consectetur adipisicing elit. |term=blubbermonster}}
{{Term|1=snorkelweasel (noun)}}
{{Defn|1=Ut enim ad minim veniam |term=snorkelweasel (noun)}}
{{Glossary end}}
blubbermonster
1.  Lorem ipsum dolor sit amet.
2.  Consectetur adipisicing elit.
snorkelweasel (noun)
Ut enim ad minim veniam
 HTML output:
<dl class="glossary">
  <dt class="glossary" id="blubbermonster" style="margin-top: 0.4em;"><dfn class="glossary">blubbermonster</dfn></dt>
  <dd class="glossary" id="blubbermonster-defn1">1.&nbsp;&nbsp;Lorem ipsum dolor sit amet.</dd>
  <dd class="glossary" id="blubbermonster-defn2">2.&nbsp;&nbsp;Consectetur adipisicing elit.</dd>
  <dt class="glossary" id="snorkelweasel_(noun)" style="margin-top: 0.4em;"><dfn class="glossary">snorkelweasel (noun)</dfn></dt>
  <dd class="glossary" id="snorkelweasel_(noun)-defn1">Ut enim ad minim veniam</dd>
</dl>

Note that some characters in snorkelweasel (noun)" have been converted on the fly by MediaWikia by the time it sends the ID to the browser as snorkelweasel_.28noun.29-defn1. You can still link to it on this page as #snorkelweasel (noun)-defn1 (view page source and see for yourself – that link has href=#snorkelweasel_.28noun.29-defn1).

The IDs blubbermonster-defn1, blubbermonster-defn2,  and snorkelweasel_(noun)-defn1 are all individually linkable, e.g. as [[Glossary of weird terms#blubbermonster-defn1]]. This is especially useful for cross-references within the glossary, e.g. See also [[#blubbermonster-defn2|"blubbermonster", sense 2]].

To add more than one linkable anchor, use the {{Anchor}} template at the beginning of the definition's content:

{{defn|num=2|1={{anchor|elit|Elit}}Consectetur adipisicing elit.|term=blubbermonster}}

Examples

This shows both a very simple then a rather complex instance:

<div style="color: #000000; background: none; overflow: hidden; page-break-after: avoid; font-size: 1.5em; font-family: Georgia,Times,serif; margin-top: 1em; margin-bottom: 0.25em; line-height: 1.3; padding: 0; border-bottom: 1px solid #AAAAAA;">A&ndash;M</div>
{{Glossary}}
{{Term|1=applesnorkel}}
{{Defn|1=Definition of term 1.}}
{{Term|term=arglefarst |content=''arglefarst''{{Anchor|argle-farst|argle farst}} }}
{{Defn|num=1 |defn=
Beginning of first definition of term 2
<blockquote style="margin-top: 0; margin-bottom: -0.5em;">Block quotation in first definition of term 2.</blockquote>
Conclusion of first definition of term 2.
}}
{{Defn|num=2 |defn=Second definition of term 2.}}
{{Glossary end}}
A–M
applesnorkel
Definition of term 1.
arglefarst
1.  Beginning of first definition of term 2

Block quotation in first definition of term 2.

Conclusion of first definition of term 2.
2.  Second definition of term 2.

Applying CSS styles to the definition

The |style= parameter will pass CSS styling on to the <dd> element, e.g. |style=font-family:serif; or whatever. I.e., this styles the definition itself, not the term it applies to, other definitions, or the glossary as a whole. This feature is rarely if ever needed in articles, but can be useful elsewhere for things like matching custom user page style.

Other parameters

The |id= parameter can be used to assign a one-word, case-sensitive ID name to definition. It must be unique on the page. This can be used as a #link target, and could have other metadata uses. See the #Making the definition independently linkable section for how to normally make a definition linkable. Probably the only reason to use this feature is if there are two terms with the same name on the page, which would result in conflicting IDs.

The |class= parameter will pass one or more space-separated CSS classes on to <dd> element, in addition to the automatically included class glossary. There is rarely any reason to do this.