Difference between revisions of "Template:Color Icons"
Line 12: | Line 12: | ||
The named "sep" parameter (optional) is the separator between icons. (Default: '') | The named "sep" parameter (optional) is the separator between icons. (Default: '') | ||
+ | |||
+ | The named "noinline" parameter (optional) is a flag which skips inlining on the color icons if present. (Default: '') | ||
+ | |||
==Example== | ==Example== | ||
Line 46: | Line 49: | ||
-->{{#ifexpr:{{#invoke:String|len|{{{1}}}}} > 4|{{#if:{{{3|}}}|[[{{{3}}}|{{#if:{{{4|}}}|<span title="{{{4|}}}">{{{sep|}}}</span>|{{{sep|}}}}}]]|{{{sep|}}}}}<!-- | -->{{#ifexpr:{{#invoke:String|len|{{{1}}}}} > 4|{{#if:{{{3|}}}|[[{{{3}}}|{{#if:{{{4|}}}|<span title="{{{4|}}}">{{{sep|}}}</span>|{{{sep|}}}}}]]|{{{sep|}}}}}<!-- | ||
-->{{Symbol|{{#invoke:String|sub|{{{1}}}|5|5}}|{{{2|14}}}|{{{3|}}}|{{{4|}}}|noinline=1}}}}<!-- | -->{{Symbol|{{#invoke:String|sub|{{{1}}}|5|5}}|{{{2|14}}}|{{{3|}}}|{{{4|}}}|noinline=1}}}}<!-- | ||
− | -->|{{#ifeq:{{#invoke:String|len|{{{1}}}}}|1|1}}}}}}}}</includeonly> | + | -->|{{#ifeq:{{#invoke:String|len|{{{1}}}}}|1|1}}<!-- |
+ | -->}}|{{{noinline|}}}}}}}</includeonly> |
Revision as of 09:17, 13 May 2020
Usage
Given a string of 1 to 5 letters representing colors, produces a corresponding series of space-separated color icons.
The first parameter is a sequence of upper-case letters from the set WUBRGCL.
The second parameter (optional) is the size of the icons (default = 14).
The third parameter (optional) is a wiki link for each icon (default: Mana).
The fourth parameter (optional) is hover text for each icon (default: the full name of the color).
The named "sep" parameter (optional) is the separator between icons. (Default: )
The named "noinline" parameter (optional) is a flag which skips inlining on the color icons if present. (Default: )
Example
The following mark-up:
{{Color Icons|UBR} {{Color Icons|UBR|24|sep= }}
Produces:
Implementation details
The following optimisations are applied to reduce output html size:
- Apply the inline span to the whole set of icons rather than each icon individually
- Skip the "nowrap" span if a single icon is produced
These optimisations are necessary to avoid a "Pages where template include size is exceeded" error on some large pages (e.g. elite pack contents pages).