Template:Tlc/doc

From Linux Web Expert

Revision as of 14:41, 13 December 2021 by imported>Baris6161TURK (Replacing <source> tag to <syntaxhighlight>.)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Purpose and naming

When a template name with braces is to be shown in documentation, the braces have to be escaped in some way so it doesn't become an actual call to the template. Instead of using ‎<nowiki>...‎</nowiki> tags you can write it more simply and concisely by using the {{tlc}} template.

It works similarly to {{tl}} and {{tlx}}, but doesn't make the template name into a link. When writing documentation you might want to avoid a lot of unnecessary links, since they can decrease readability. So on the first occurrence of a template name use {{tl}} or {{tlx}}, and then use {{tlc}} thereafter.

Basic operation

Here is how this template looks. Code is to the left; actual rendering to the right:

{{tlc|name|parameters}} = {{name|parameters}}

Documentation

Functional details

  • This template takes another template-name and some associated pipe-tricked (numbered) parameters (or 'pass parameters'), and displays them as an 'example demonstration' of how the template-name template could be coded, literally. Its primary use is in instruction and documentation.
  • Specifics here???
  • Features of {{tlc}}:
    • It shows a template name and up to eight parameters.
    • It also shows empty parameters. (See examples hereafter.)
    • It prevents line wraps in their output.

Usage

{{Tlc|Template|first_parameter|second|third|fourth|...|eighth}}{{Template|first_parameter|second|third|fourth|fifth|sixth|seventh|eighth}}

Examples

Note: Wikitables make the ‎<code>...‎</code> tags transparent, unfortunately, so the "code colouring" is missing in these examples.

Code Result Comment
{{tlc}} {{{{{1}}}}} Shows its own syntax.
name}} {{name}}
name|one}} one}}
name|one|two}} one|two}}
{{tlc|name|a|b|c|d|e|f|g|h|i|j}} a|b|c|d|e|f|g|h}} Shows up to eight parameters. The rest are dropped.
name three|four}} {{name three|four}} Also shows empty parameters.
name three }} {{name three }} Even shows empty parameters that come in the end.
name|one=a|two=b}} {{name}} The use of equal signs is a problem, but there is a fix; see next row.
name|one{{=}}a|two{{=}}b}} one=a|two=b}} Use {{=}} in place of an equal sign, so that it gets rendered properly.

An alternative to using constructs such as {{=}} to prevent characters from getting interpreted syntactically is to use <code><nowiki>...</nowiki></code>, which will prevent all characters from being interpreted. For example, in place of

{{tlc|name|one{{=}}{{tlc|IPA|/tʃ/}}|two}}

you can use

<code><nowiki>{{name|one={{IPA|/tʃ/}}|two}}</nowiki></code>

Both render as

{{name|one={{IPA|/tʃ/}}|two}}

If a vertical display with parameters on their own lines is desired, this can also be laid out manually in this manner, or more rapidly done with ‎<pre>...‎</pre>.

Here is the code to emulate {{tlc}} using ‎<nowiki>:

Using templates: Using ‎<nowiki>: Rendered result:
{{tlc|name|one{{=}}a|two{{=}}b}} <code><nowiki>{{name|one=a|two=b}}</nowiki></code> {{name|one=a|two=b}}

TemplateData

This is the TemplateData documentation for this template used by VisualEditor and other tools.

Tlc/doc

<templatedata> { "description": "Template link code", "format": "inline", "params": { "1": { "label": "Template", "description": "Linked template name", "required": true, "type": "wiki-template-name" }, "2": { "label": "Parameter 1", "description": "First parameter value", "type": "string" }, "3": { "label": "Parameter 2", "description": "Second parameter value", "type": "string" }, "4": { "label": "Parameter 3", "description": "Third parameter value", "type": "string" }, "5": { "label": "Parameter 4", "description": "Fourth parameter value", "type": "string" }, "6": { "label": "Parameter 5", "description": "Fifth parameter value", "type": "string" }, "7": { "label": "Parameter 6", "description": "Sixth parameter value", "type": "string" }, "8": { "label": "Parameter 7", "description": "Seventh parameter value", "type": "string" }, "9": { "label": "Parameter 8", "description": "Eight parameter value", "type": "string" } } } </templatedata>

See also

These tables: <span style="" title="<translate nowrap> View this template</translate>"><translate> view</translate> · <span style="" title="<translate nowrap> Discuss this template</translate>"><translate> talk</translate> · <span style="" title="<translate nowrap> Edit this template</translate>"><translate> edit</translate>

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
{{tlg}} options[note 1]
to achieve link style
N/A DEFAULT nolink=1 subst=1
normal DEFAULT
code code=1
monospace mono=1[note 4] N/A
plaincode plaincode=1[note 5]
kbd kbd=1[note 6]
  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 Prevents wrapping of text by placing it inside <span style="white-space:nowrap">...</span> tags.
  3. Allows links to templates in any namespace.
  4. 4.0 4.1 4.2 Displays monospaced font using <span style="font-family:monospace">...</span>.
  5. {{Template:Tlc/doc}} uses <code style="background:transparent;border:none">...</code> .
  6. {{Template:Tlc/doc}} uses ‎<kbd> tags.