Template:Tlg

From Wikimedia Commons, the free media repository
Jump to navigation Jump to search

{{Template:Tlg}}

Template documentationview · edit · history · purge ]
This documentation is transcluded from Template:Tlg/doc.

{{Tlg}} (abbreviating "[t]emplate [l]ink (with) [g]eneral (options)") is a generalised version of the {{Tl}} ("template link") template. It can be used to replace or implement {{tl}} and related templates such as {{Tlb}}, {{Tlx}}, etc.

Usage

{{tlg |1= }}

Template parameters

ParameterDescriptionDefaultStatus
1emptyrequired
<templatedata>JSON</templatedata> ./. {{TemplateBox}}
TemplateData

TemplateData is a way to store information about template parameters (the description of those and of the whole template) for both humans and machines. It is used by VisualEditor and possibly other tools like Upload Wizard.


Existing template documentation
At Wikimedia Commons, it is recommended to use {{TemplateBox}} with either ‎useTemplateData=1 or ‎useTemplateData=only on the ‎/doc subpage and transcluding it with {{Documentation}} into the template. ‎<nowiki>-tags can be wrapped around the arguments, if required, to avoid templates being expanded.

Newly created template documentation and imports
Another option, especially for imported templates, or for users with JSON experience, is placing raw ‎<templatedata>-tags into the Wikitext of the template, as described in various Wikipediae.


Wikipedia's help about TemplateDataCommons-specific information

[[:Template:Tlg|<span style="font-family:monospace,monospace;">&#123;&#123;Tlg&#125;&#125;</span>]] (abbreviating "[t]emplate [l]ink <small style="font-size:85%;">(with)</small> [g]eneral <small style="font-size:85%;">(options)</small>") is a generalised version of the [[:Template:Tl|<span style="font-family:monospace,monospace;">&#123;&#123;Tl&#125;&#125;</span>]] ("template link") template. It can be used to replace or implement <span style="white-space:nowrap;">&#123;&#123;tl&#125;&#125;</span> and related templates such as [[:Template:Tlb|<span style="font-family:monospace,monospace;">&#123;&#123;Tlb&#125;&#125;</span>]], [[:Template:Tlx|<span style="font-family:monospace,monospace;">&#123;&#123;Tlx&#125;&#125;</span>]], etc.

Template parameters[Edit template data]

This template prefers inline formatting of parameters.

ParameterDescriptionTypeStatus
1

Unknownrequired

Additional information

The template is intended to be used in the following namespaces: all namespaces

The template is intended to be used by the following user groups: all users

Parameters

Named

With the exception of alttext, {{tlg}}'s named parameters are toggles that are either omitted (default) or activated (by being assigned a value such as "on", "yes", "true", "include", etc.). They may be included in any order (see Examples below):

Parameter Action As in
brace Include braces as part of the template link
braceinside Include innermost braces as part of the template link {{Tlw}}
bold
boldlink
boldname
Renders the template link/name in bold {{Tlb}}, {{Tlx}}, etc.
code Display output using HTML ‎<code>...‎</code> tags (monospaced font) {{Tlc}}, {{Tlx}}, etc.
plaincode Uses ‎<code style="border:none; background:transparent;">...‎</code>
kbd Display output using HTML ‎<kbd>...‎</kbd> tags (monospaced font) {{Tltt}}, {{Tltt2}}, etc.
italic
italics
Display any parameters accompanying the template link/name in italic/s {{Tlxi}}
nolink Don't render the template name as a link {{Tlf}}
nowrap Prevent the insertion of line breaks (word wrap) in the output {{Tlp}}, {{Tlf}}, etc.
nowrapname Prevent word wrapping in the output of template name/link (parameters will wrap if needed)
subst Include a subst: prefix before the template link/name {{Tls}}
|alttext=[text] Use [text] as the label for the template link {{Tla}}

Unnamed (Positional)

{{tlg}} may take up to ten unnamed parameters as parameters accompanying the template link (or name); see Examples below.

Examples

Note
On the source sister projects, en.wikipedia and Meta, X0, X1, X2, …, X9 are sandbox templates for experimentation on involved templates that need be in template space. An auto-cleansing software facility exists that might be used to duplicate the facility on other Sister projects.
Code Output Remarks
{{tlg|Termometro}} {{Termometro}} Termometro template does not exist. Be aware with linking to non-existing templates, although desired.
{{tlg|ok}} {{ok}} ok template does exist
{{tlg|convert|<nowiki>14|m|ftin|abbr=out|sp=us</nowiki>}} {{convert|14|m|ftin|abbr=out|sp=us}} Unlimited parameters as one ‎<nowiki>...‎</nowiki> string
{{tlg|Abc}} {{Abc}}
{{tlg|abC}} {{abC}} template names are case-sensitive
{{tlg|abc}} {{abc}} first letter is case-insensitive though
{{tlg|abc|{{spaces}}{{{1}}}{{spaces}}}} {{abc| {{{1}}} }} Using {{Spaces}} before and after {{{1}}} parameter.
{{tlg|x0}} {{x0}}
{{tlg|x0|code=on}} {{x0}} <code> style
{{tlg|x0|plaincode=on}} {{x0}} plaincode style
{{tlg|x0|kbd=on}} {{x0}} <kbd> style
{{tlg|x0|bold=on}} {{x0}} bold link/name
{{tlg|x1|one|italic=on}} {{x1|one}} parameter/s in italics
{{tlg|x0|nolink=on}} {{x0}}
{{tlg|x0|subst=on}} {{subst:x0}}
{{tlg|x0|brace=on}} {{x0}} all braces in link
{{tlg|x0|braceinside=on}} {{x0}} inside braces in link
{{tlg|x0|alttext=x0 link}} {{x0 link}}
{{tlg|x0|bold=on|code=on|brace=on}} {{x0}} No reason you can't combine multiple parameter settings
{{tlg|x1|one}} {{x1|one}}
{{tlg|x2|one|two}} {{x2|one|two}}
{{tlg|x2|bold=on|code=on|one|two}} {{x2|one|two}} Can combine named and anonymous parameters …
{{tlg|x2|one|two|bold=on|code=on}} {{x2|one|two}} … in any order …
{{tlg|x2|one|code=on|two|bold=on|three}} {{x2|one|two|three}} … even intermixed …
{{tlg|x2|one|code=on|two|bold=on|three|italic=on}} {{x2|one|two|three}} … with many different configurations.
{{tlg|x3|1|2|3|4|5|6|7|...}} {{x3|1|2|3|4|5|6|7|8|9|10}}
{{tlg|x4|1|2|3|4|5|6|7|...}} {{x4|1|2|3|4|5|6|7|8|9|10|11}} up to 10 parameters, then …
{{tlg|x5|1|2|3|4|5|6|7|...}} {{x5|1|2|3|4|5|6|7|8|9|10|11}}
&#124; for more
{{tlg}} {{Template:Tlg}} with no arguments, the current page name is substituted
{{tlg|x1|x=u}} {{x1}} = won't work
{{tlg|x1|x&#61;u}} {{x1|x=u}}
&#61; is okay
{{tlg|x1|x{{=}}u}} {{x1|x=u}}
{{=}} is okay (see template equal sign)
{{tlg|x1|x<nowiki>=</nowiki>u}} {{x1|x=u}}
sticky nowiki is okay
{{tlg|x2||two||}} {{x2|two}} empty parameters work too, even at the end
{{tlg|x2|3=two|2=one}} {{x2|one|two}}
right to left okay
Wrapping of long names (default)
Code Output
{{tlg|long template name that would wrap to new line|this is a long value for the 1st parameter that would wrap}} {{long template name that would wrap to new line|this is a long value for the 1st parameter that would wrap}}
Wrapping of long names (nowrap=on)
Code Output
{{tlg|nowrap=on|long template name that would wrap to new line|long value for the 1st parameter that would wrap}} {{long template name that would wrap to new line|long value for the 1st parameter that would wrap}}
Wrapping of long names (nowrapname=on)
Code Output
{{tlg|nowrapname=on|long template name that would wrap to new line|long value for the 1st parameter that would wrap}} {{long template name that would wrap to new line|long value for the 1st parameter that would wrap}}

See also

[edit subpage]

List of templates using {{T/main}}
Code Result Notes lock

{{T|example}}

{{Example}} makes brackets part of the link

{{T0|example}}

Example just link, without the brackets

{{T1|example}}

{{Example}} inner brackets are part of the link

{{T2|example}}

{{Example}} brackets are not a part of the link

{{Tl|example}}

{{Example}} makes brackets around the link

{{Tlr|User:Example}}

{{User:Example}} like {{tl}} but for any namespace

{{Tls|example}}

{{subst:example}} no parameters, adds "subst:"
Templates showing parameters 0 Meta template {{Tle}} is easiest to parametrize.

{{Tle|T=F|p1=1|v1|p2=2|v2|p3=3|v3}}

{{ F | 1 = v1 | 2 = v2 | 3 = v3 }} describes template parameters by names and values

{{Tlx|example|1|2|3|4|5||7|8|9}}

{{example|1|2|3|4|5|7|8|...}} up to 8 parameters

{{Tlf|example|1|2|3|...up to 8}}

{{example|1|2|3|...up to 8}} up to 8 parameters, no link

{{Tlc|example|1|2|3|4|||7|up to 8|9 is ignored.}}

{{example|1|2|3|4|||7|up to 8}} up to 8 parameters, no link, <code> style

{{Tld|example|1|2||3||}}

{{example|1||2|3||}} up to 8 parameters, <code> style[clarification needed]

{{Tlsu|User:Example}}

{{subst:User:Example}} like {{Tls}}, but supporting parameters
Alternative forms 0 These ignore empty parameters.

{{Tlp|example|1|2|3|4|5||7|8|9 is ignored.}}

{{example|1|2|3|4|5|7|8}} up to 8 parameters; ignores empty parms

{{Tl2|example|p1|p2}}

{{example|p1|p2}} up to 2 parameters, <code> style

{{Tlsp|example|1|2|3|4|5|6|7|8|9}}

{{subst:example|1|2|3|4|5|6|7|8|...}} up to 8 parameters, adds linked "subst:"

{{Tlsx|example|1|2|3|4|5|6 and above are ignored.|7}}

{{subst:example|1|2|3|4|5|...}} up to 5 parameters, adds linked "subst:", <code> style

General-purpose formatting

Comparison of template-linking templates according to the styles of generated text and link produced
Text style ↓ {{tlg}} options[note 1]
to achieve text style
Link style
Linked Unlinked Linked with subst Unlinked with subst Linked including braces
{{tlg}} options[note 1]
to achieve link style
N/A DEFAULT nolink=yes subst=yes nolink=yes|subst=yes braceinside=yes
normal DEFAULT N/A
code code=yes
N/A
monospace mono=yes[note 4] N/A
N/A
plaincode plaincode=yes[note 5]
kbd[clarification needed] kbd=yes[note 6]
  1. a b c {{tlg}} is the most general template, allowing any combination of text style and/or link style options.
  2. a b c d e Prevents wrapping of text by placing it inside <span class="nowrap">...</span> tags.
  3. a b c Allows links to templates in any namespace.
  4. a b c d Displays monospaced font using <span style="font-family: monospace;">...</span>.
  5. {{tlg|plaincode=yes}} uses <code style="border: none; background-color: transparent;">...</code>.
  6. {{tlg|kbd=yes}} uses <kbd>...</kbd>.