Template:Module link/doc

Template page

[[Template:]]  is used to display a module name as a link surrounded by braces with the {{#invoke}} parser function, thus showing the module name as code rather than actually invoking it. Its primary use is in instruction and documentation where it is used to refer to a module by name without invoking it. It is also supports the definition of a function and parameters.

Examples

Code Result Notes
{{ml|Example}} {{#invoke:Example|function}} Usage without function name. This does not produce a usable invocation.
{{ml|Example|hello}} {{#invoke:Example|hello}} Usage with a function name.
{{ml|Example|count_fruit|4=bananas=10|5=kiwis=5}} {{#invoke:Example|count_fruit|bananas=10|kiwis=5}} Usage with a function name and parameters.
{{ml|Example|count_fruit|Fred|bananas{{=}}10|apples{{=}}5}} {{#invoke:Example|count_fruit|Fred|bananas=10|apples=5}} Usage with a function name and parameters, using {{=}}.
{{ml|Example|}} {{#invoke:Example}} Omits the function name

TemplateData

This is the TemplateData for this template used by TemplateWizard, VisualEditor and other tools. Click here to see a monthly parameter usage report for this template in articles based on this TemplateData.

TemplateData for Module link

This template displays a module name as a link surrounded by braces with the {{#invoke}} parser function, thus showing how the module name would be used in code. Its primary use is in instruction and documentation.

Template parameters

ParameterDescriptionTypeStatus
module name1

the module name without the namespace prefix “Module:”, which is added automatically

Stringrequired
function name2

the function name within the module to call

Stringrequired
parameter 13

the name (and value) of the first parameter, use {{=}} to add an equal sign

Stringoptional
parameter 24

the name (and value) of the second parameter, use {{=}} to add an equal sign

Stringoptional
parameter 35

the name (and value) of the third parameter, use {{=}} to add an equal sign

Stringoptional

See also

  • {{mfl}} - Similar function but creates a link to the function paragraph in the documentation.
  • {{mlx}} - Similar function but surrounded in ‎<code>...‎</code> tags.
  • {{tl}} - A version of this template for templates instead of modules.

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 Linked with alternative text
{{tlg}} options[note 1]
to achieve link style
DEFAULT nolink=yes subst=yes nolink=yes|subst=yes braceinside=yes alttext=Foo
2=Foo
normal DEFAULT {{tlg}}[note 1]
{{tl}}
{{tlp|1|2|...}}[note 2]
{{Template:tlu}}[note 3]
{{tlf}}[note 2]
<template link>

This template, often abbreviated as {{}}, 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=[text] Replace [text] 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}} [1]

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
{{tls|Banner}} Template loop detected: Template:Tls Template:Banner does not exist. (Non-existent template is redlinked.)
{{tls|Abc}} Template loop detected: Template:Tls Template:Abc exists.
{{tls|abC}} Template loop detected: Template:Tls Template names are case-sensitive
{{tls|abc}} Template loop detected: Template:Tls (but the first letter is case-insensitive).
{{tls|x0}} Template loop detected: Template:Tls no parameters
{{tls|x1|one}} Template loop detected: Template:Tls one parameter
{{tls|x2|one|two}} Template loop detected: Template:Tls two parameters
{{tls|x3|1|2|3|4|5|6|7|8|9|10}} Template loop detected: Template:Tls ten parameters
{{tlg|convert|<nowiki>14|m|ftin|abbr=out|sp=us</nowiki>}} Template loop detected: Template:Tls Unlimited parameters, as one ‎<nowiki>...‎</nowiki> string.
{{tls|x2||two||}} Template loop detected: Template:Tls Empty parameters are discarded.
{{tls|x0|code=on}} Template loop detected: Template:Tls <code> style
{{tls|x0|plaincode=on}} Template loop detected: Template:Tls plaincode style
{{tls|x0|kbd=on}} Template loop detected: Template:Tls <kbd> style
{{tls|x0|bold=on}} Template loop detected: Template:Tls bold link/name
{{tls|x1|one|italic=on}} Template loop detected: Template:Tls parameter(s) in italics
{{tls|x0|nolink=on}} Template loop detected: Template:Tls
{{tls|x0|subst=on}} Template loop detected: Template:Tls
{{tls|x0|brace=on}} Template loop detected: Template:Tls all braces in link
{{tls|x0|braceinside=on}} Template loop detected: Template:Tls inside braces in link
{{tls|x0|alttext=x0 link}} Template loop detected: Template:Tls
{{tls|x0|bold=on|code=on|brace=on}} Template loop detected: Template:Tls Combine multiple parameter settings.
{{tlg|x1|{{spaces}}one{{spaces}}}} Template loop detected: Template:Tls Using {{spaces}} before and after a parameter.
{{tls|x2|bold=on|code=on|one|two}} Template loop detected: Template:Tls Can combine named and anonymous parameters ...
{{tls|x2|one|two|bold=on|code=on}} Template loop detected: Template:Tls ... in any order ...
{{tls|x2|one|code=on|two|bold=on|three}} Template loop detected: Template:Tls ... even intermixed ...
{{tls|x2|one|code=on|two|bold=on|three|italic=on}} Template loop detected: Template:Tls ... with many configurations.
{{tlg|x1|x=u}} Template loop detected: Template:Tls = won't work
{{tlg|x1|x&#61;u}} Template loop detected: Template:Tls &#61; is okay
{{tlg|x1|x{{=}}u}} Template loop detected: Template:Tls {{=}} is okay (see Template:=)
{{tlg|x1|x<nowiki>=</nowiki>u}} Template loop detected: Template:Tls Sticky nowiki is okay.
{{tls|x2|3=two|2=one}} Template loop detected: Template:Tls
Right-to-left is okay
{{tls}} tls With no arguments, it emits the current page name without braces.
{{tls|x2|3=one|4=two}} Template loop detected: Template:Tls Null parameter stops parsing.
Wrapping of long names (default)
Code Output
{{tls|long template name that would wrap to new line|this is a long value for the 1st parameter that would wrap}} Template loop detected: Template:Tls
Wrapping of long names (nowrap=on)
Code Output
{{tls|nowrap=on|long template name that would wrap to new line|long value for the 1st parameter that would wrap}} Template loop detected: Template:Tls
Wrapping of long names (nowrapname=on)
Code Output
{{tls|nowrapname=on|long template name that would wrap to new line|long value for the 1st parameter that would wrap}} Template loop detected: Template:Tls

See also

Template loop detected: Template:Template-linking templates


{{subst:Template:tlsu}}[note 3]

{{subst:tlsf}}[note 2]
<template link>
{{tn}} {{tla}}
code code=yes {{tl2}}
{{tlx}}
{{Template:tlxu}}[note 3]
{{tlc}}[note 2]
<template link>
{{tnull}}<template link>
{{subst:tlxs}} {{subst:tlsc}}[note 2]
<template link>
monospace plaincode=yes[note 4] {{subst:tltss}}[note 5]
kbd kbd=yes[note 5]
bold bold=yes {{tlb}}
bold+code bold=yes|code=yes {{tlxb}}
italic+code italic=yes|code=yes {{tlxi}}
  1. 1.0 1.1 1.2 {{tlg}} is the most general template, allowing any combination of text style and/or link style options.
  2. 2.0 2.1 2.2 2.3 2.4 Prevents wrapping of text by placing it inside ‎<span class="nowrap">...‎</span> tags.
  3. 3.0 3.1 3.2 Allows links to templates in any namespace.
  4. {{tlg|plaincode=yes}} uses ‎<code style="border:none; background-color:transparent;">...‎</code>.
  5. 5.0 5.1 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}}
Shows code and example
{{tln|Hatnote}} Template:Hatnote Produces a normal link to the template
{{elc|Template:Hatnote}}
{{elc|Template:Hatnote|Hatnote}}
[[Template:Hatnote]]
[[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|hello}} 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}} [[WP: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 [X]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:]] 
{{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}} {{Hatnote}}
{{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}} {{Hatnote}} (t/l)
{{twlh|Hatnote}} Template:Hatnote (links, talk)