9,275 bytes added
, 19:17, 27 February 2014
m<includeonly><!-----------------Interwiki Doc page pattern------------------->
<small>''This '{{Tlx|Tlx}}' template documentation is [[w:Wikipedia:Template doc page pattern|transcluded]] for all ''Tlx family templates (Tlx, Tlxc, Tlxw, Tlxb)'' [<span class="plainlinks">[{{fullurl:Template:Tlx/doc |action=edit}} edit]</span>].{{#ifeq:{{SITENAME}}|Meta| |[[M:template:{{PAGENAMEE}}|Masterpage]]
}}</small></includeonly><noinclude>
{{Documentation subpage}}
{{-}}
</noinclude>
<!-- Parent template(s) usage begins: --->
Basically:
: {{Tlx|Tlx|Template|first parameter|second|third|...|tenth}} → {{Tlx|Template|first parameter|second|third|...|tenth}}
Where parameters might contain "=" characters, use {{Tlx|{{=}}}} instead
: {{Tlx|Tlx|Template|<nowiki>first parameter{{=}}anything|second|third{{=}}something|...|tenth</nowiki>}} → {{Tlx|Template|first parameter{{=}}anything|second|third{{=}}something|...|tenth}}
For more than 10 parameters, possibly also containing "=", use
: {{Tlx|Tlx|Template|<nowiki><nowiki>first|second|third=something|...|999th</nowiki></nowiki>}} → {{Tlx|Template|<nowiki>first|second|third=something|...|999th</nowiki>}}
The [[Ellipsis|three dots]] in the examples represent a number of arguments that have been omitted and are not an actual argument.
== Purpose and naming ==
[[Wikt:mnemonic|Mnemonically]] ''''T'''emplate '''l'''ink e'''x'''panded'. After <tt>{{tlx|Tl}}</tt> ''''T'''emplate '''l'''ink'.
* This template takes another ''template-name'' and some associated [[Help: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: "{{tag|nowiki|content=size=10}}" or all parameters as a string in "{{tag|nowiki|o}}" 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 {{tag|code|o}}{{tag|nowiki|o}}, for example: {{tag|code|content={{tag|nowiki|content=<nowiki>{{Anytemplate|arg1=23|size=250px|</nowiki><var>other parameters...</var><nowiki>}}</nowiki>}}}}. 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 {{tag|pre}}.
===Parameters===
* If given no additional parameters except ''<code> 'template name' (<nowiki>{{{1}}}</nowiki>), </code>'' it presents the same as the similar {{tl|Tl}} [[Macro (computer science)|macro]] template -- a blue link nested in [[brackets|curly-braces]]-- the same as a user would apply the template without parameters, but with a noticeably clearer font and spacing on most modern browsers.
** {{Tlx|Tl|Tl}} display compared to {{Tlx|Tlx|Tl}}: (Tl: {{Tl|Tl}} versus Tlx: {{Tlx|Tl}})
* 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 {{para|subst}}. Setting this parameter to any non-blank value will place the string "<code>subst:</code>" before the template name, linked to [[Help:Substitution]]. This is useful to indicate when a template should be substituted. For example {{tlx|Tlx|Welcome|3=subst=Y}} will display {{Tlx|Welcome|subst=Y}}. This is similar to the action of the {{tlx|tlxs}} template: {{tlx|Tlxs|Welcome}} will display {{Tlxs|Welcome}}.
* Additionally, Tlx will take a named parameter {{para|SISTER}} to link interwiki to [[H:IW|other sister projects]] such as one of these examples: {{para|SISTER|M:}} ([[m:|Meta]]), {{para|SISTER|Q:}} ([[q:|WikiQuote]]), {{para|SISTER|S:}} ([[s:|WikiSource]]), etc. allowing documentation or discourse about a template across interwiki boundaries.
* Tlx will also take a named parameter {{para|LANG}} to link to [[H:ILL|other language Wikipedias]], such as one of these examples: {{para|LANG|de:}} ([[:de:|German]]), {{para|LANG|sv:}} ([[:sv:|Swedish]]), etc. allowing documentation or discourse about a template across language boundaries.
== Documentation ==
{{[[Template:{{BASEPAGENAME}}|{{BASEPAGENAME}}]]}}
is a generalization of {{Tl|Tl|x}}, {{Tl|Tlp|x|y}},
et cetera 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 ===
:<tt>{{{{BASEPAGENAME}}{{!}}template name}}</tt>
:<tt>{{{{BASEPAGENAME}}{{!}}template name{{!}}param}}</tt>
:<tt>{{{{BASEPAGENAME}}{{!}}template name{{!}}1{{!}}2{{!}}3{{!}}4{{!}}5{{!}}6{{!}}7{{!}}8{{!}}9{{!}}10}}</tt>
:<tt>{{{{BASEPAGENAME}}{{!}}template name{{!}}1{{!}}2{{!}}3{{!}}4{{!}}5{{!}}6{{!}}7{{!}}8{{!}}9{{!}}10&#124;more}}</tt>
:<tt>{{{{BASEPAGENAME}}{{!}}template name{{!}}param&#61;value}}</tt>
''Up to 10 placeholders for parameters of the specified template''
=== Examples ===
{{#ifeq:{{SITENAME}}|Wikipedia|<!-- Skip message--->|
{{#ifeq:{{SITENAME}}|Meta|<!-- No note needed --->|<!-- Other Sisters Note: --->
;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.
}}}}
{| border="1" cellpadding="4" class="wikitable"
! Code
! Result
! Remark
|-
|{{Tlx|Tlx|x0}}
|{{Tlx|x0}}
|| 
|-
|{{Tlx|Tlx|Abc}}
|{{Tlx|Abc}}
|| 
|-
|{{Tlx|Tlx|ABC}}
|{{Tlx|ABC}}
|| 
|-
|{{Tlx|Tlx|AbC}}
|{{Tlx|AbC}}
|| 
|-
|{{Tlx|Tlx|x1|one}}
|{{Tlx|x1|one}}
|| 
|-
|{{Tlx|Tlx|x2|one|two}}
|{{Tlx|x2|one|two}}
|| 
|-
|{{Tlx|Tlx|x3|1|2|3|4|5|6|7|8|9|10}}
|{{Tlx|x3|1|2|3|4|5|6|7|8|9|10}}
|| 
|-
|{{Tlx|Tlx|x4|1|2|3|4|5|6|7|8|9|10|11}}
|{{Tlx|x4|1|2|3|4|5|6|7|8|9|10|11}}
|up to 10 parameters, then ...
|-
|{{Tlx|Tlx|x5|1|2|3|4|5|6|7|8|9|10&#124;11}}
|{{Tlx|x5|1|2|3|4|5|6|7|8|9|10|11}}
|align="right"|<tt>&#124;</tt> for more
|-
|colspan=2| {{Tlx|Tlx|convert|<nowiki><nowiki>14|m|ftin|abbr=out|sp=us</nowiki></nowiki>}}
|unlimited parameters as one nowiki string
|-
|{{Tlx|Tlx|x1|x=u}}
|{{Tlx|x1|x=u}}
|'''=''' won't work
|-
|{{Tlx|Tlx|x1|x&#61;u}}
|{{Tlx|x1|x=u}}
|align="right"|<tt>&#61;</tt> is okay
|-
|{{Tlx|Tlx|x1|x<nowiki>{{=}}</nowiki>u}}
|{{Tlx|x1|x{{=}}u}}
|align="right"|<tt><nowiki>{{=}}</nowiki></tt> is okay
|-
|{{Tlx|Tlx|x1|<nowiki>x=u</nowiki>}}
|{{Tlx|x1|<nowiki>x=u</nowiki>}}
|align="right"|sticky nowiki is okay
|-
|{{Tlx|Tlx|x2| |two}}
|{{Tlx|x2| |two}}
|empty won't work
|-
|{{Tlx|Tlx|x2|&#32;|two}}
|{{Tlx|x2| |two}}
|align="right"|<tt>&#32;</tt> is okay
|-
|{{Tlx|Tlx|x2|&nbsp;|two}}
|{{Tlx|x2| |two}}
|align="right"|<tt>&nbsp;</tt> is okay
|-
|{{Tlx|Tlx|x2| &#124; two}}
|{{Tlx|x2| | two}}
|align="right"|<tt>&#124;</tt> is okay
|-
|| {{Tlx|Tlx|x2| {{!}} two}}
|| {{Tlx|x2| {{!}} two}}
|align="right"|{{Tlx|!}} is dubious
|-
|| {{Tlx|Tlx|x2|<nowiki>2=</nowiki>|<nowiki>3=two</nowiki>}}
|| {{Tlx|x2|2=|3=two}}
|empty really doesn't work
|-
|| {{Tlx|Tlx|x2|<nowiki>2=one</nowiki>|two}}
|| {{Tlx|x2|2=one|two}}
|'''two''' clobbers '''2=one'''
|-
|| {{Tlx|Tlx|x2|<nowiki>3=two</nowiki>|<nowiki>2=one</nowiki>}}
|| {{Tlx|x2|3=two|2=one}}
|align="right"|right to left okay
|}
== See also ==
* [[Template:Tlxb]] – same as {{tl|Tlx}}, but gives the template name in boldface type (this can be useful when stressing the difference between two similarly named templates). [[Template:Tlb]] is the same, except it uses regular text instead of a monospaced non-proportional font.
* [[Template:Temt]], – same as {{tl|Tlx}}, but handles template names with the Template: prefix and templates not in the [[Wikipedia:Namespace|Template: namespace]] <nowiki>{{ns:10}}</nowiki>.
* [[Template:Para]] – for giving examples of template parameters and values only, instead of entire templates with parameters.
{{tl-nav}}
<!--- Categories applied to both /doc style Documentation page and to the parent templates --->
<!-- Add the Categories for this doc or usage page (only-- not for the calling template) BELOW THIS LINE --->
<includeonly>
<!-- EDIT IN (calling) TEMPLATE CATEGORIES BELOW THIS LINE -->
[[Category:Typing-aid templates |{{PAGENAME}}]]
[[Category:Internal link templates |{{PAGENAME}}]]
[[Category:Interwiki link templates |{{PAGENAME}}]]
<!-- EDIT/ADD TEMPLATE Interwiki's BELOW THIS LINE -->
</includeonly>
<includeonly>
[[de:Vorlage:Vorlage]]
</includeonly>