Template:Module link/doc

From the AARoads Wiki: Read about the road before you go
Jump to navigation Jump to search

[[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. See a monthly parameter usage report for Template:Module link in articles based on its TemplateData.

TemplateData for Module link

<templatedata>{ "description": "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.", "params": {

 "1": {
   "label": "module name",
   "description": "the module name without the namespace prefix “Module:”, which is added automatically",
   "type": "string",
   "required": true
 },
 "2": {
   "label": "function name",
   "description": "the function name within the module to call",
   "type": "string",
   "required": true
 },
 "3": {
   "label": "parameter 1",
   "description": "the name (and value) of the first parameter, use = to add an equal sign",
   "type": "string"
 },
 "4": {
   "label": "parameter 2",
   "description": "the name (and value) of the second parameter, use = to add an equal sign",
   "type": "string"
 },
 "5": {
   "label": "parameter 3",
   "description": "the name (and value) of the third parameter, use = to add an equal sign",
   "type": "string"
 }

}}</templatedata>

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>
{{subst:tls}}
{{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. ^ 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 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|MURA}} [[AA:MURA]] Takes a shortcut suffix in project namespace and displays it with brackets and the AA: 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}} 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}} {{Hatnote}} (t/l)
{{twlh|Hatnote}} Template:Hatnote (links, talk)