Misplaced Pages

Template:Template link general/doc

Article snapshot taken from Wikipedia with creative commons attribution-sharealike license. Give it a read and then ask your questions in the chat. We can research this topic together.
< Template:Template link general

This is an old revision of this page, as edited by Grufo (talk | contribs) at 06:27, 21 April 2023 (Colour the examples). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Revision as of 06:27, 21 April 2023 by Grufo (talk | contribs) (Colour the examples)(diff) ← Previous revision | Latest revision (diff) | Newer revision → (diff)
This is a documentation subpage for Template:Template link general.
It may contain usage information, categories and other content that is not part of the original template page.
WarningThis template is used on approximately 21,000 pages and changes may be widely noticed. Test changes in the template's /sandbox or /testcases subpages, or in your own user subpage. Consider discussing changes on the talk page before implementing them.
Shortcut
This template uses Lua:

This template, often abbreviated as {{tlg}}, is used to provide stylized formatting to template displays without actually using the template itself. The code generated will be displayed inline. For a multi-line output, see {{Tj}}.

Parameters

With the exception of alttext, the named parameters are toggles that are either omitted (default in most cases) or activated (by being assigned a value such as "on", "yes", "true", "include", etc.). They may be included in any order (see Examples below). Certain templates have the parameter "on" by default; see the main table for all alternate options.

Parameter Action Use with
{{example}}
Default active
Default (without accessory parameters) {{example}}
brace Include braces as part of the template link {{example}} {{tlw}}/{{tn}}
braceinside Include innermost braces as part of the template link {{example}}
bold Renders the template link/name in bold {{example}} {{tlb}}, {{tlxb}}
code Display output using HTML <code>...</code> tags (monospaced font) {{example}} {{tlc}}, {{Template link expanded}}, etc.
italic Display any parameters accompanying the template link/name in italics {{example|param}} {{tlxi}}
kbd Display output using HTML <kbd>...</kbd> tags (monospaced font) {{example}}
nolink Don't render the template name as a link {{example}} {{tlf}}, {{tnull}}
nowrap Prevent the insertion of line breaks (word wrap) in the output {{example}}
nowrapname Prevent word wrapping in the output of template name/link (parameters will wrap if needed) {{example}}
plaincode Uses <code style="border:none; background:transparent;">...</code> {{example}} {{tltss}}
subst Include a subst: prefix before the template link/name {{subst:example}} {{tls}}, {{tlxs}}, etc
alttext= Replace with the actual label to be displayed for the template link {{Other}} {{tla}}
_show_result Will also display the result of the template {{Min|7|-5}} → -5
_expand Will add a link to the expanded template page {{Min|7|-5}}

Unnamed (Positional)

This template can take any number of unnamed parameters as parameters accompanying the template link (or name); see Examples below.

Examples

Code Output Remarks
{{tlg|Banner}} {{Banner}} Template:Banner does not exist. (Non-existent template is redlinked.)
{{tlg|Abc}} {{Abc}} Template:Abc exists.
{{tlg|abC}} {{abC}} Template names are case-sensitive
{{tlg|abc}} {{abc}} (but the first letter is case-insensitive).
{{tlg|x0}} {{x0}} no parameters
{{tlg|x1|one}} {{x1|one}} one parameter
{{tlg|x2|one|two}} {{x2|one|two}} two parameters
{{tlg|x3|1|2|3|4|5|6|7|8|9|10}} {{x3|1|2|3|4|5|6|7|8|9|10}} ten parameters
{{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|x2||two||}} {{x2|two}} Empty parameters are discarded.
{{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}} Combine multiple parameter settings.
{{tlg|x1|{{spaces}}one{{spaces}}}} {{abc| one }} Using {{spaces}} before and after a parameter.
{{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 configurations.
{{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:=)
{{tlg|x1|x<nowiki>=</nowiki>u}} {{x1|x=u}} Sticky nowiki is okay.
{{tlg|x2|3=two|2=one}} {{x2|one|two}} Right-to-left is okay
{{tlg}} tlg With no arguments, it emits the current page name without braces.
{{tlg|x2|3=one|4=two}} {{x2}} Null parameter stops parsing.
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

These tables:

General-purpose formatting

Comparison of template-linking templates according to the styles of generated text and link produced
Text style ↓ {{tlg}} options
to achieve text style
Link style
Linked Unlinked Linked with subst Unlinked with subst Linked including braces Linked with alternative text
{{tlg}} options
to achieve link style
DEFAULT nolink=yes subst=yes nolink=yes|subst=yes braceinside=yes alttext=Foo
2=Foo
normal DEFAULT {{tlg}}
{{tl}}
{{tlp|1|2|...}}
{{Template:tlu}}
{{tlf}}
{{subst:tls}}
{{subst:Template:tlsu}}
{{subst:tlsf}}
{{tn}} {{tla}}
code code=yes {{tl2}}
{{tlx}}
{{Template:tlxu}}
{{tlc}}

{{tnull}}
{{subst:tlxs}} {{subst:tlsc}}
monospace plaincode=yes {{subst:tltss}}
kbd kbd=yes
bold bold=yes {{tlb}}
bold+code bold=yes|code=yes {{tlxb}}
italic+code italic=yes|code=yes {{tlxi}}
  1. ^ {{tlg}} is the most general template, allowing any combination of text style and/or link style options.
  2. ^ Prevents wrapping of text by placing it inside <span class="nowrap">...</span> tags.
  3. ^ Allows links to templates in any namespace.
  4. {{tlg|plaincode=yes}} uses <code style="border:none; background-color:transparent;">...</code>.
  5. ^ Displays monospaced font using <span style="font-family:monospace;">...</span>.

Other formatting templates

Templates producing specialised formatting effects for given templates, modules or parameters
Code example Effect Notes
{{Tj|Hatnote|Some text|selfref: yes|category: no|lang: fr}} {{Hatnote
| Some text
| selfref = yes
| category = no
| lang = fr
}}
Supports colors, placeholder texts, named and unnamed parameters
<syntaxhighlight lang="wikitext">
{{Hatnote
   | Some text
   | selfref = yes
   | category = no
   | lang = fr
}}
</syntaxhighlight>
{{Hatnote
    | Some text
    | selfref = yes
    | category = no
    | lang = fr
}}
Same as above
{{Tji|Hatnote|Some text|selfref: yes|category: no|lang: fr}} {{Hatnote|Some text|selfref=yes|category=no|lang=fr}} Supports colors, placeholder texts, named and unnamed parameters
<syntaxhighlight lang="wikitext" inline>{{Hatnote|Some text|selfref=yes|category=no|lang=fr}}</syntaxhighlight> {{Hatnote|Some text|selfref=yes|category=no|lang=fr}} Same as above
{{tl2|Hatnote|lang=fr}} {{hatnote}} Supports linking to sister projects (e.g., fr:Hatnote)
{{demo|<nowiki>{{Hatnote|lang=fr|Some text}}</nowiki>}}
{{hatnote|lang=fr|Some text}}
Some text
Shows code and example
{{tln|Hatnote}} Template:Hatnote Produces a normal link to the template
{{elc|Template:Hatnote}}
{{elc|Template:Hatnote|Hatnote}}
]
]
Formats wikilink, with optional piped link text and blended suffix
{{ml|Example|hello}} {{#invoke:Example|hello}} Counterpart to {{tl}} for linking to Lua modules
{{mfl|Example|hello}} {{#invoke:Example|hello}} Similar to {{ml}}, but expects the function to be documented and creates a link to the corresponding section
{{mlx|Example|hello}} {{#invoke:Example|hello}} Counterpart to {{tlx}} for linking to Lua modules
{{ml-lua|Module:Example}} require('Module:Example') Link to Lua modules and built-in libraries, showing Lua code.
{{para|title|<var>book title</var>}} |title=book title Formats template parameters for display, with or without values
{{sclx|LASTING}} ] Takes a shortcut suffix in project namespace and displays it with brackets and the WP: alias in a <code>...</code> tag.
{{tag|ref}}
{{xtag|templatedata}}
<ref>...</ref>
<templatedata>
Formats HTML tags; can add content, choose opening, closing, or self-closing
{{dtl|Ping project}} {{d:Ping project}} Wikidata counterpart to {{tl}}
{{pf|if}}
{{pf|if|{{{1}}}|true|false}}
{{#if}}
{{#if:{{{1}}}|true|false}}
Parser function equivalent to {{tl}}
{{magic word|uc:}} {{uc:}} Magic word links

With utility links

Templates producing utility links for a given template (Hatnote used here as example)
Code example Effect
{{lt|Hatnote}} Template:Hatnote (edit | talk | history | links | watch | logs)
{{lts|Hatnote}} Template:Hatnote(edit talk links history)
{{t links|Hatnote}} {{Hatnote}} (edit talk history links # /subpages /doc /doc edit /sbox /sbox diff /test)
{{tfd links|Hatnote}} Template:Hatnote (talk · history · transclusions · logs · subpages)
{{tetl|Hatnote}} {{Hatnote}}
links talk edit
{{tsetl|Hatnote}} {{subst:Hatnote}}
 links talk edit
{{ti|Hatnote}} Template:Hatnote (talk · links · edit)
{{tic|Hatnote}} Template:Hatnote (talk links edit)
{{tim|Hatnote}} m:Template:Hatnote (backlinks edit)
{{tiw|Hatnote}} Template:Hatnote (backlinks edit)
{{tlt|Hatnote}} {{Hatnote}} (talk)
{{ttl|Hatnote}} Template:Hatnote (links, talk)
{{twlh|Hatnote}} Template:Hatnote (links, talk)
Semantic markup templates
Template  Example output  Use 
{{strong}} Important! To indicate <strong> importance, seriousness, or urgency instead of just simple typographical boldfacing
{{strongbad}} "Never use ..." Same as {{strong}} but in red
{{stronggood}} "Only use ..." Same as {{strong}} but in green
{{em}} "An emphatic phrase" To indicate <em> stress emphasis (not just purely typographical italicization like for book titles or foreign terms)
{{var}} strPrefix To indicate text is a variable name. Use for any variable names except those including "I" (uppercase i) and/or "l" (lowercase L); for these, {{var serif}} should be used to ensure a noticeable distinction
{{var serif}} strIllustratePrefix (see {{var}} above)
{{tld}} {{DEFAULTSORT:Y, X}} To display wikicode variables and magic words as they would appear in code
{{para}} |year=2008 To display template parameters with or without values
{{param}} {{{title|alt}}} To display parameters as used in code (i.e. with triple braces), especially to indicate relationships between them. May be combined with {{para}} above
{{tjp}} selfref=yes To display template parameters with colors (as they would appear in the {{tj}} and {{tji}} templates)
{{param value}} ··2·blanks·fore·and·aft·· To display parameter values lightly bordered; replaces <code>...</code>, especially when value contains embedded or leading/trailing blanks; visualized here with middot (·) but can use ␠, ▯, or any character.
{{tlx}} etc. {{Template|1|2|...|10}} To display a template call (with or without parameters and values) as code
{{tji}} {{hatnote|Hello|selfref=yes|category=no}} To showcase with colors in horizontal format the syntax of any template, while providing an easy way to display placeholder texts using colons as separators
{{tag}} "The <img>...</img> tags ..." To render HTML elements ("tags") in prose
{{code}}/{{codett}} "Ensure the alt= parameter ..." To indicate text is source code. To nest other templates within {{code}}, use <code>...</code>. {{codett}} differs only in styling: someMethod becomes someMethod
{{PreCode}} "FORTH has keyword ?BRANCH." Like {{code}}, but prevents line breaks inside the code. Only for very short code parts.
{{subst:codenowiki}} {{small|small text example}} To wrap example code in <code><nowiki>...</nowiki></code>
{{subst:kbdnowiki}} {{large|large text example}} To wrap example code in <kbd><nowiki>...</nowiki></kbd>
{{syntaxhighlight}}     ( or {{sxhl}} )  Wrapper for <syntaxhighlight>...</syntaxhighlight>, but will wrap overflowing text
{{deprecated code}} "Do not use <blink>." ( or {{dc}} )  To indicate deprecated source code in template documentation, articles on HTML specs, etc. The {{dc2}} variant uses strike-through (<blink>) while {{dcr}} uses red (<blink>).
{{pre}}     For larger blocks of source code and other pre-formatted text
{{tj}}     To showcase with colors and multiple lines (vertical format) the syntax of any template, while providing an easy way to display placeholder texts using colons as separators
{{quote}}     For block quotations (only – never for non-quotations)
{{block indent}}     For indented blocks of material; visually identical to {{quote}} but without quote markup
{{kbd}} user input To indicate user input
{{key press}} Ctrl+x To indicate specific-keystroke input, including combinations
{{key top}} Left shift Similar; includes more symbols, but does not directly support combinations
{{button}} Don't save To indicate a button in a user interface
{{samp}} example output To indicate sample or example output