Template:Tlx/doc: Difference between revisions
m (Protected "Template:Tlx/doc": Robot: Protecting all pages from category templates ([edit=sysop] (indefinite) [move=sysop] (indefinite))) |
m (11 revisions imported) |
||
(6 intermediate revisions by one other user not shown) | |||
Line 1: | Line 1: | ||
{{tlx|tlx}} — an acronym for '''template link expanded''' — is a sort of more useful sister to {{tlx|tl}}. It allows you do demonstrate templates more fully, by letting you show not just the template name, but ''also the parameters''. It's almost always preferable to use {{tlx|tlx}} than {{tlx|tl}} — even when you're ''not'' demonstrating parameters — because it automatically converts to a highly readable monospaced font. | |||
Although our template pages automatically display mono-spaced fonts, no other commonly-used namespace does. Look at the difference in display: | |||
* This template takes another ''template-name'' and some associated [[ | <div style=font-family:sans-serif> | ||
* This uses {{tlx|tl}}: {{Tl|Tl}} | |||
* This uses {{tlx|tlx}}: {{Tlx|Tl}} | |||
</div> | |||
Clearly, {{tlx|tlx}} is much more readable. That's not to say there are no uses for {{tlx|tl}}, but {{tlx|tlx}} is often the clearest thing. And, perhaps more importantly, it's the only one of the two that will allow the demonstration of parameters. | |||
== Details == | |||
* This template takes another ''template-name'' and some associated [[Pipe trick|pipe-tricked]] [[m:Parameter#Parameters|(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:''''' Up to 10 pass parameters (numbered or nowiki-keywords) for the specified template are displayed as 'placeholders', and over 10 parameters can be displayed using a coded vertical-bar (as in "<small>&#124;</small>''...''"). A keyword parameter can be used with equals code &#61; or <nowiki>{{=}}</nowiki> or in nowiki-text: "<nowiki>size=10</nowiki>" or all parameters as a string in <nowiki>"<nowiki>"</nowiki> tags; see ''[[#Examples|Examples]]'' at bottom. For more details, see [[{{TALKPAGENAME}}|this talk]] page. | * '''''Specifics:''''' Up to 10 pass parameters (numbered or nowiki-keywords) for the specified template are displayed as 'placeholders', and over 10 parameters can be displayed using a coded vertical-bar (as in "<small>&#124;</small>''...''"). A keyword parameter can be used with equals code &#61; or <nowiki>{{=}}</nowiki> or in nowiki-text: "<nowiki>size=10</nowiki>" or all parameters as a string in <nowiki>"<nowiki>"</nowiki> tags; see ''[[#Examples|Examples]]'' at bottom. For more details, see [[{{TALKPAGENAME}}|this talk]] page. | ||
* '''''Exceptions:''''' If the intended template lists numerous parameters, then perhaps this template should really ''not'' be used, and just hardcode the usage with {{nowrap|<code><nowiki><code><nowiki></nowiki></code>}}, for example: {{nowrap|<code><nowiki><code><nowiki>{{Anytemplate|arg1=23|size=250px|</nowiki><var>other parameters...</var><nowiki>}}</nowiki></code></nowiki></code>}}. 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 {{nowrap|<code><nowiki><pre>...</pre></nowiki></code>}}. | * '''''Exceptions:''''' If the intended template lists numerous parameters, then perhaps this template should really ''not'' be used, and just hardcode the usage with {{nowrap|<code><nowiki><code><nowiki></nowiki></code>}}, for example: {{nowrap|<code><nowiki><code><nowiki>{{Anytemplate|arg1=23|size=250px|</nowiki><var>other parameters...</var><nowiki>}}</nowiki></code></nowiki></code>}}. 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 {{nowrap|<code><nowiki><pre>...</pre></nowiki></code>}}. | ||
* Comparatively, {{Tlx|Tl}} will not take or display additional parameters, and for minor technical reasons, may be preferred for mere listing and referencing in long pages involving a lot of template expansions. | * Comparatively, {{Tlx|Tl}} will not take or display additional parameters, and for minor technical reasons, may be preferred for mere listing and referencing in long pages involving a lot of template expansions. | ||
* {{tlx|Tlx}} has a named parameter ''subst''. Setting this parameter to any string of length 1 or greater will place the string "subst:" before the template name, linked to {{w|Help:Substitution}}. This is useful to indicate when a template should be substituted. For example {{tlx|Tlx|Welcome|<nowiki>subst=Y</nowiki>}} will display {{Tlx|Welcome|subst=Y}}. | |||
* {{tlx|Tlx}} has a named parameter ''subst''. Setting this parameter to any string of length 1 or greater will place the string "subst:" before the template name, linked to | |||
* Additionally, Tlx will take a 'named' parameter 'SISTER' to link interwiki to other sister projects such as one of these examples: '|SISTER=W:', 'Tlx|SISTER=M:', 'Tlx|SISTER=Q:', 'Tlx|SISTER=S:', allowing documentation or discourse about a template across interwiki boundaries. | * Additionally, Tlx will take a 'named' parameter 'SISTER' to link interwiki to other sister projects such as one of these examples: '|SISTER=W:', 'Tlx|SISTER=M:', 'Tlx|SISTER=Q:', 'Tlx|SISTER=S:', allowing documentation or discourse about a template across interwiki boundaries. | ||
* {{[[Template:{{BASEPAGENAME}}|{{BASEPAGENAME}}]]}} is a generalisation of {{Tl|Tl|x}}, {{Tl|Tlp|x|y}}, etcetera with arguably better readable output. This depends on the browser, but too narrow uses of "'''{'''", "'''|'''", "'''}'''" in conjunction with links can be hard to read. | |||
{{[[Template:{{BASEPAGENAME}}|{{BASEPAGENAME}}]]}} | |||
is a | |||
etcetera with arguably better readable | |||
output. This depends on the browser, but too narrow | |||
uses of "'''{'''", "'''|'''", "'''}'''" in conjunction | |||
with links can be hard to read. | |||
=== Usage === | === Usage === |
Latest revision as of 15:34, 24 May 2022
{{tlx}} — an acronym for template link expanded — is a sort of more useful sister to {{tl}}. It allows you do demonstrate templates more fully, by letting you show not just the template name, but also the parameters. It's almost always preferable to use {{tlx}} than {{tl}} — even when you're not demonstrating parameters — because it automatically converts to a highly readable monospaced font.
Although our template pages automatically display mono-spaced fonts, no other commonly-used namespace does. Look at the difference in display:
Clearly, {{tlx}} is much more readable. That's not to say there are no uses for {{tl}}, but {{tlx}} is often the clearest thing. And, perhaps more importantly, it's the only one of the two that will allow the demonstration of parameters.
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: Up to 10 pass parameters (numbered or nowiki-keywords) for the specified template are displayed as 'placeholders', and over 10 parameters can be displayed using a coded vertical-bar (as in "|..."). A keyword parameter can be used with equals code = or {{=}} or in nowiki-text: "<nowiki>size=10</nowiki>" or all parameters as a string in "<nowiki>" tags; see Examples at bottom. For more details, see this talk page.
- Exceptions: If the intended template lists numerous parameters, then perhaps this template should really not be used, and just hardcode the usage with
<code><nowiki>
, for example:<code><nowiki>{{Anytemplate|arg1=23|size=250px|other parameters...}}</nowiki></code>
. 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>
. - Comparatively, {{Tl}} will not take or display additional parameters, and for minor technical reasons, may be preferred for mere listing and referencing in long pages involving a lot of template expansions.
- {{Tlx}} has a named parameter subst. Setting this parameter to any string of length 1 or greater will place the string "subst:" before the template name, linked to {{{2}}}. This is useful to indicate when a template should be substituted. For example {{Tlx|Welcome|subst=Y}} will display {{subst:Welcome}}.
- Additionally, Tlx will take a 'named' parameter 'SISTER' to link interwiki to other sister projects such as one of these examples: '|SISTER=W:', 'Tlx|SISTER=M:', 'Tlx|SISTER=Q:', 'Tlx|SISTER=S:', allowing documentation or discourse about a template across interwiki boundaries.
- {{Tlx}} is a generalisation of {{Tl}}, {{Tlp}}, etcetera with arguably better readable output. This depends on the browser, but too narrow uses of "{", "|", "}" in conjunction with links can be hard to read.
Usage
- {{Tlx|template name}}
- {{Tlx|template name|param}}
- {{Tlx|template name|1|2|3|4|5|6|7|8|9|10}}
- {{Tlx|template name|1|2|3|4|5|6|7|8|9|10|more}}
- {{Tlx|template name|param=value}}
Up to 10 placeholders for parameters of the specified template
Examples
- 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 | Result | Remark |
---|---|---|
{{Tlx|x0}} | {{x0}} | |
{{Tlx|Abc}} | {{Abc}} | |
{{Tlx|ABC}} | {{ABC}} | |
{{Tlx|AbC}} | {{AbC}} | |
{{Tlx|x1|one}} | {{x1|one}} | |
{{Tlx|x2|one|two}} | {{x2|one|two}} | |
{{Tlx|x3|1|2|3|4|5|6|7|8|9|10}} | {{x3|1|2|3|4|5|6|7|8|9|10}} | |
{{Tlx|x4|1|2|3|4|5|6|7|8|9|10|11}} | {{x4|1|2|3|4|5|6|7|8|9|10|...}} | up to 10 parameters, then ... |
{{Tlx|x5|1|2|3|4|5|6|7|8|9|10|11}} | {{x5|1|2|3|4|5|6|7|8|9|10|11}} | | for more |
{{Tlx|convert|<nowiki>14|m|ftin|abbr=out|sp=us</nowiki>}} | unlimited parameters as one nowiki string | |
{{Tlx|x1|x=u}} | {{x1}} | = won't work |
{{Tlx|x1|x=u}} | {{x1|x=u}} | = is okay |
{{Tlx|x1|x{{=}}u}} | {{x1|x=u}} | {{=}} is okay |
{{Tlx|x1|<nowiki>x=u</nowiki>}} | {{x1|x=u}} | sticky nowiki is okay |
{{Tlx|x2| |two}} | {{x2|two}} | empty won't work |
{{Tlx|x2| |two}} | {{x2| |two}} |   is okay |
{{Tlx|x2| |two}} | {{x2| |two}} | is okay |
{{Tlx|x2| | two}} | {{x2| | two}} | | is okay |
{{Tlx|x2| {{!}} two}} | {{x2| | two}} | {{!}} is dubious |
{{Tlx|x2|2=|3=two}} | {{x2|two}} | empty really doesn't work |
{{Tlx|x2|2=one|two}} | {{x2|two}} | two clobbers 2=one |
{{Tlx|x2|3=two|2=one}} | {{x2|one|two}} | right to left okay |