{{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

<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.

Discussion
There is an ongoing discussion about that matter. Feel invited to comment if you are experienced in either way, your time permits and if you like to share your opinion or to make a suggestion.


Wikipedia's help about TemplateDataCommons-specific information

Template link general

Template parameters

ParameterDescriptionTypeStatus
Link Brackets?brace

Whether to include both brackets as part of the linked template name.

Default
0
Auto value
1
Booleanoptional
Link Inner Brackets?braceinside

Whether to include the inner brackets as part of the linked template name.

Default
0
Auto value
1
Booleanoptional
Bold?bold

Whether to add “<span style="font-weight:bolder">” around the linked template name.

Default
0
Auto value
1
Booleanoptional
Code?code

Whether to add “<code>”.

Default
0
Auto value
1
Booleanoptional
Italic?italic

Whether to add “<span style="font-style:italic">” around parameters.

Default
0
Auto value
1
Booleanoptional
Kbd?kbd

Whether to add “<kbd>”.

Default
0
Auto value
1
Booleanoptional
Mono?mono

Whether to add “<span style="font-family:monospace">”.

Default
0
Auto value
1
Booleanoptional
No Link?nolink

Whether to not create a link to the template.

Default
0
Auto value
1
Booleanoptional
No Wrap?nowrap

Whether to add “<span style="white-space:nowrap">”.

Default
0
Auto value
1
Booleanoptional
No Wrap Name?nowrapname

Whether to add “<span style="white-space:nowrap">” around the linked template name.

Default
0
Auto value
1
Booleanoptional
Plain Code?plaincode

Whether to add “<code style="background:transparent;border:none">”.

Default
0
Auto value
1
Booleanoptional
Subst?subst

Whether to use “subst:”.

Default
0
Auto value
1
Booleanoptional
Link Subst?link subst

Whether the “subst:” prefix should link to the help page on substitution.

Default
0
Auto value
1
Booleanoptional
Display Textalttext

Displayed link text.

Default
{{{1}}}
Lineoptional
Template1

Linked template name

Templaterequired
Parameter 12

First parameter value

Contentoptional
Parameter 23

Second parameter value

Contentoptional
Parameter 34

Third parameter value

Contentoptional
Parameter 45

Fourth parameter value

Contentoptional
Parameter 56

Fifth parameter value

Contentoptional
Parameter 67

Sixth parameter value

Contentoptional
Parameter 78

Seventh parameter value

Contentoptional
Parameter 89

Eighth parameter value

Contentoptional
Parameter 910

Ninth parameter value

Contentoptional
Parameter 1011

Tenth parameter value

Contentoptional
Edit parameter translations

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 edit

Named edit

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) edit

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

Examples edit

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

[edit subpage]

Template links edit

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

{{T|example}}

{{Example}} makes brackets part of the link; see docu

{{T0|example}}

Example just link, without the brackets; see docu

{{T1|example}}

{{Example}} inner brackets are part of the link; see docu

{{T2|example}}

{{Example}} brackets are not a part of the link; see docu

{{Tl|example}}

{{Example}} makes brackets around the link; see docu

{{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 }} decribes 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; see docu

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

{{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; see docu

{{Tlr|User:Example}}

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

{{Tlsu|User:Example}}

{{subst:User:Example}} like {{tlr}}, but also adds "subst:"
Alternative forms 0 These ignore empty parameters.

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

{{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; see docu

{{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:"; see doc

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

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

General-purpose formatting edit

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 plaincode=yes[note 4] N/A
N/A
kbd kbd=yes[note 5]
  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. {{tlg|plaincode=yes}} uses <code style="border: none; background-color: transparent;">...</code>.
  5. a b c d Displays monospaced font using <span style="font-family: monospace;">...</span>.