Template:Tlx: Difference between revisions

From Jenny Everywhere Wiki
(code originally from wikipedia:template:tlx)
(No difference)

Revision as of 11:06, 22 April 2012


{{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:

  • This uses {{tl}}: {{Tl}}
  • This uses {{tlx}}: {{Tl}}

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 "&#124;..."). A keyword parameter can be used with equals code &#61; 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&#124;more}}
{{Tlx|template name|param&#61;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&#124;11}} {{x5|1|2|3|4|5|6|7|8|9|10|11}} &#124; 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&#61;u}} {{x1|x=u}} &#61; 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|&#32;|two}} {{x2| |two}} &#32; is okay
{{Tlx|x2|&nbsp;|two}} {{x2| |two}} &nbsp; is okay
{{Tlx|x2| &#124; two}} {{x2| | two}} &#124; 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