「Template:Season」修訂間的差異
跳至導覽
跳至搜尋
Margotbean(討論 | 貢獻) |
(sync with english template) |
||
行 1: | 行 1: | ||
− | <includeonly>< | + | <includeonly><!-- |
− | | | + | |
− | | | + | // Define the allowed values, with handling for various quirks/oddities. |
− | | | + | // First column=icon name -> same in all languages |
− | | | + | // Second column=link (wiki page) name, generally same as displayed text -> needs translation |
− | | | + | // All other values are synonyms |
− | | | + | // Marriage, Deviations are for sake of NPC schedule sections (and translations) |
− | | | + | // For 'All Seasons' case, display text doesn't match icon or wiki-link, so |
− | |{{{ | + | // define default display text in $lang_allseasons, with parameter allowing any other preferred value |
+ | -->{{ParseInputValues|code=season|| | ||
+ | ,All Seasons Icon, 季节, Seasons, All, All Seasons, Any, Always, Any Season, 所有, 所有季节, 四季皆宜, | ||
+ | ,Spring, 春季, | ||
+ | ,Summer, 夏季, | ||
+ | ,Fall, 秋季, Autumn, | ||
+ | ,Winter, 冬季, | ||
+ | ,Mermaid's Pendant, 婚后, Marriage,婚姻, | ||
+ | ,Deviations, 调整, 偏差, | ||
+ | }}{{#arraydefine:$lang_allseasons | 所有 }}<!-- | ||
+ | |||
+ | // END OF translated text | ||
+ | |||
+ | // Check whether there's already a file link in {{{1}}}... implying this is probably a recursive call. Return immediately | ||
+ | -->{{#if:{{#pos:{{{1|}}}|{{Bracket|2}}File}}|{{{1}}}|<!-- | ||
+ | // Parse input data, then loop over all extracted entries | ||
+ | -->{{#arraydefine:$sseason|{{ParseInputValues|{{{1|}}}|code=season|default=true}}}}<!-- | ||
+ | -->{{#arrayprint:$sseason||@season@|<!-- | ||
+ | |||
+ | // Convert @season@ (icon name) into translated page name | ||
+ | -->{{#arraydefine:$slink_text|{{ParseInputValues|code=season|@season@|translate=true}}}}<!-- | ||
+ | |||
+ | // On first entry, add sort-key if requested. On other entries, add space and bullet. | ||
+ | -->{{#ifexpr:{{#arraysearch:$sseason|@season@}}>0 | ||
+ | | •  | ||
+ | |{{#if:{{{sortkey|}}}| | ||
+ | <span class="sortkey" style="display:none;">{{#if:{{#arrayprint:$slink_text}} | ||
+ | |{{#expr:{{ParseInputValues|code=season|@season@|translate=index}}+1}} | ||
+ | |0}}</span> | ||
+ | }}}}<span style="display:inline; margin-right:0; white-space: nowrap"><!-- | ||
+ | |||
+ | // Display the non-icon, non-linkable cases: Deviations, and unmatched text (detected by empty link_text) | ||
+ | // This is also where text_only option is handled | ||
+ | -->{{#ifeq:{{#arrayprint:$slink_text}}| | ||
+ | | {{ucfirst:@season@}} | ||
+ | | {{#ifexpr: {{#ifeq:@season@|Deviations|1|0}} or {{#if:{{{text_only|}}}|1|0}} | ||
+ | | {{#if:{{{no_translate|}}} | ||
+ | |{{#ifeq:@season@|All Seasons Icon|All|@season@}} | ||
+ | |{{#ifeq:@season@|All Seasons Icon|{{#arrayprint:$lang_allseasons}}|{{#arrayprint:$slink_text}}}}}} | ||
+ | |<!-- | ||
+ | |||
+ | // Display the normal cases: first display icon | ||
+ | -->[[File:@season@.png| | ||
+ | {{#if:{{{size|}}}|{{{size}}}px|{{{width|24px}}}}} | link={{#arrayprint:$slink_text}} | alt=]] <!-- | ||
+ | // Add day if provided | ||
+ | -->{{#if:{{{2|}}}|{{{2}}} }}<!-- | ||
+ | |||
+ | // Add link, with special treatment for text of All Seasons | ||
+ | -->[[{{#arrayprint:$slink_text}}|<!-- | ||
+ | -->{{#ifeq:@season@|All Seasons Icon | ||
+ | |{{#if:{{{all|}}}|{{{all|}}}|{{#arrayprint:$lang_allseasons}}}} | ||
+ | |{{#arrayprint:$slink_text}}}}]]<!-- | ||
+ | -->}}}}</span>}}}}</includeonly><noinclude>{{Englishdoc}}{{#ifexist:{{FULLPAGENAME}}/doc |<nowiki/> | ||
+ | {{{{FULLPAGENAME}}/doc}} }}</noinclude> |
於 2020年10月3日 (六) 18:40 的修訂
有關此模板的詳細信息,請參閱英語語言文檔頁。
用法
可以通過在相關頁面上輸入以下內容來使用此模板。
{{Season}}
結果是... Template:ParseInputValues[[File:Template:ParseInputValues.png|
24px | link=Template:ParseInputValues | alt=]] [[Template:ParseInputValues|Template:ParseInputValues]]