Module:Flag
Lua-native alternative to popular flag templates. Can be used to reduce post-expand include size of pages with lots of templates, since it avoids calling multilevel templates.
Usage
Generic flag templates
- {{flag}} → {{#invoke:flag|}}
- {{flag country}} → {{#invoke:flag|country}}
- {{flag decoration}} (or {{flagdeco}}) → {{#invoke:flag|decoration}} (or {{#invoke:flag|deco}})
- {{flag icon}} → {{#invoke:flag|icon}}
- {{flag link}} → {{#invoke:flag|link}}
- {{flag+link}} → {{#invoke:flag|+link}}
Sports flag templates
- {{flag athlete}} → {{#invoke:flag|athlete}}
- {{flag medalist}} → {{#invoke:flag|medalist}}
- {{flag team}} → {{#invoke:flag|team}}
- {{flag IOC}} → {{#invoke:flag|IOC}}
- {{flag IOC 2}} → {{#invoke:flag|IOC 2}}
- {{flag IOC athlete}} → {{#invoke:flag|IOC athlete}}
- {{fb}} → {{#invoke:flag|fb}}
- {{fb-rt}} → {{#invoke:flag|fb-rt}}
- {{fbicon}} → {{#invoke:flag|fbicon}}
- {{ru}} → {{#invoke:flag|ru}}
Examples
Template | Module | ||||
---|---|---|---|---|---|
Code | Output | PEIS | Code | Output | PEIS |
{{flag|CHN}} |
CHN | 443b | {{#invoke:flag||CHN}} |
CHN | 128b |
{{flag country|CHN}} |
China | 577b | {{#invoke:flag|country|CHN}} |
China | 128b |
{{flag decoration|CHN}} /{{flag deco|CHN}} |
452b | {{#invoke:flag|decoration|CHN}} /{{#invoke:flag|deco|CHN}} |
107b | ||
{{flag icon|CHN}} |
548b | {{#invoke:flag|icon|CHN}} |
117b | ||
{{flag link|CHN|at the 2004 Summer Olympics}} |
China | 497b | {{#invoke:flag|link|CHN|at the 2004 Summer Olympics}} |
China | 198b |
{{flag+link|History of|CHN}} |
China | 663b | {{#invoke:flag|+link|History of|CHN}} |
China | 139b |
{{flag team|GBR}} |
Great Britain (GBR) | 804b | {{#invoke:flag|team|GBR}} |
Great Britain (GBR) | 193b |
{{flag athlete|Andy Murray|GBR}} |
Andy Murray (GBR) | 617b | {{#invoke:flag|athlete|Andy Murray|GBR}} |
Andy Murray (GBR) | 210b |
{{flag medalist|Andy Murray|GBR}} |
Andy Murray Great Britain |
469b | {{#invoke:flag|medalist|Andy Murray|GBR}} |
Andy Murray Great Britain |
129b |
{{flag IOC|CAN|1924 Winter|1}} |
Canada (1) | 326b | {{#invoke:flag|IOC|CAN|1924 Winter|1}} |
Canada (1) | 163b |
{{flag IOC 2|HKG|1954 Asian Games|1}} |
Hong Kong (1) | 368b | {{#invoke:flag|IOC 2|HKG|1954 Asian Games|1}} |
Hong Kong (1) | 184b |
{{flag IOC athlete|Mark Spitz|USA|1972 Summer}} |
Mark Spitz (USA) | 346b | {{#invoke:flag|IOC athlete|Mark Spitz|USA|1972 Summer}} |
Mark Spitz (USA) | 178b |
{{fb|CHN}} |
China | 560b | {{#invoke:flag|fb|CHN}} |
China | 151b |
{{fb-rt|CHN}} |
China | 482b | {{#invoke:flag|fb-rt|CHN}} |
China | 151b |
{{fbicon|CHN}} |
444b | {{#invoke:flag|fbicon|CHN}} |
163b | ||
{{ru|CHN}} |
China | 646b | {{#invoke:flag|ru|CHN}} |
China | 210b |
Caveats
When used inside a template, parameters from that template are passed to the module. This can be useful in some situations, but can lead to conflicts (for example, if the parent template has a parameter |country=
that is unrelated to the flag it is supposed to display). To prevent this behavior, add the |frameonly=
parameter to the module call, e.g. {{#invoke:flag|deco|CHN|frameonly=true}}
.