2023年政策修订增补工作正在进行中,欢迎参与!
  • Moegirl.ICU:萌娘百科流亡社群 581077156(QQ),欢迎对萌娘百科运营感到失望的编辑者加入
  • Moegirl.ICU:账号认领正在试运行,有意者请参照账号认领流程

Template:扩展时间线

萌娘百科,万物皆可萌的百科全书!转载请标注来源页面的网页链接,并声明引自萌娘百科。内容不可商用。
跳转到导航 跳转到搜索
Template-info.svg 模板文档  [查看] [编辑] [历史] [刷新]

简介

本模板目的在于对于{{时间线}}显示进行扩展。

现已实现功能:

  • 按照类似表格的方式分割时间文本与文字内容。
  • 增添点击标签筛选显示特定内容的功能。
  • 增添按照特定标签传递事件的功能。

其他功能有待扩展。比如特定文字格式化功能、统计功能等分割功能。另外也可以考虑多个时间线的合并功能(也许很有价值)。

参数

可选参数

  • 特殊:
    • 排列参数sortargssort):排序参数。设置关于时间线模板的使用与否。具体参考{{时间线}}中相关描述。需要注意的是,设置为false的场合,可能会导致部分标签无法正常使用。
    • auto:自动标签识别。使用lua的正则表达式对事件文本匹配从而自动产生标签。方便但可能消耗更多时间。值格式中不同标签由#分开,标签名与表达式间用:分开,如标签名1:正则表达式#标签名2:正则表达式。允许重复赋值作为追加或。
  • 格式参数:
    • 显示标题indexi):默认开启。设置为false使用模拟标题,不具有编辑标签,不加入目录。
    • 间隔宽度columnwidthcw)时间与事件间的间隔宽度。默认为120px。设置为none则关闭分栏。
  • 标签:用于指示事件的特殊性质。
    • 折叠标签clpscollapsible):设置事件可以折叠。赋值标签用#隔开,如标签名1#标签名2#标签名3-标签名表示事件默认隐藏。设置为all对所有标签生效。实现所使用的标签为mw-customcollapsible-标签名。建议使用{{菜单栏}}设置折叠按钮。也可以使用{{折叠标签}}作为标签切换按钮。事实上任意影响mw-customcollapsible-标签名的结构都可以。
    • 传递标签var):信息传递。指示含有该标签的事件赋值/获取对应的#var设置值。赋值标签用#隔开,如标签名1#标签名2#标签名3。如果在模板执行时,该局部变量存有值,则会将其视为具有着设定的标签的调用作为匿名参数的一部分。模板执行后,会将标记相关标签的值作为局部变量保存。

匿名参数

匿名参数皆为事件。在之后追加##作为标签文本的开始。标签允许使用正规的布尔表达式进行书写。顺序默认从左到右。 标签文本采用模块:TextPredicate作为识别支持,使用#代替|。 其中:

  • #代表或
  • &代表与
  • -代表非
  • ()内优先运算

一个合法的标签文本可以为##a&-b#(p&d)。当然,一般情况下不需要如此复杂的标签式。 使用##标签1#标签2#标签3作为并列标签足以应对多数情况。

调用

最简调用示例{{扩展时间线|事件1##tag1|事件2##tag2|事件3##tag1#tag2}} 这样的调用会使事件1在tag1打开时显示,事件2在tag2打开时显示,事件3在tag1tag2打开时显示。

示例

直接套用

与时间线模板相同,该模板可以直接套用在已有时间线上。但默认格式与时间线模板有所区别。

代码 效果
{{扩展时间线|
*1911年到1989年,无事发生
*1990年到2020年,神秘纪元
**1992年2月1日,地球毁灭了
***同日,月球毁灭了
**2020年4月2日,神龙出世(排序错误)
**2012年10月5日,ufo降临地球
}}
  • 1911年到1989年无事发生
  • 1990年到2019年神秘纪元
    • 1992年2月1日地球毁灭了
      • 同日月球毁灭了
    • 2012年10月5日ufo降临地球
    • 2020年4月2日神龙出世(排序错误)

标签折叠

代码
{{折叠标签|唱歌|唱歌-off|唱歌-on}}{{折叠标签|跳舞|跳舞-on|跳舞-off}}
{{扩展时间线|clps=-唱歌#跳舞
|2011年1月,唱了歌##唱歌
|2022年3月,跳了舞##跳舞
|2223年8月,或唱或跳##唱歌#跳舞
|2225年8月,或唱或没跳##唱歌#-跳舞
|2225年8月,唱且没跳##唱歌&-跳舞
}}
效果
唱歌-off唱歌-on
跳舞-on跳舞-off
  • 2011年1月唱了歌
  • 2022年3月跳了舞
  • 2223年8月或唱或跳
  • 2223年8月或唱或跳
  • 2223年8月或唱或跳
  • 2225年8月或唱或没跳
  • 2225年8月或唱或没跳
  • 2225年8月或唱或没跳
    • 同月唱且没跳

时间线传递

利用var进行时间线内容的共享传递。

代码
时间线1
{{扩展时间线|var=唱歌
|2011年1月,唱了歌##唱歌
|2022年3月,跳了舞##跳舞
|2223年8月,或唱或跳##唱歌#跳舞
|2225年8月,或唱或没跳##唱歌#-跳舞
|2225年8月,唱且没跳##唱歌&-跳舞
}}
时间线2
{{扩展时间线|var=唱歌|
}}
效果

时间线1

  • 2011年1月唱了歌
  • 2022年3月跳了舞
  • 2223年8月或唱或跳
  • 2225年8月或唱或没跳
    • 同月唱且没跳

时间线2

  • 2011年1月唱了歌
  • 2223年8月或唱或跳
  • 2225年8月或唱或没跳

自动标签

利用auto进行自动匹配标签。auto使用的是lua的正则表达式。如果匹配成功,则为事件自动增加一个对应标签,与在事件后设置标签效果等同。匹配内容复杂可能会较为消耗时间。

代码
{{折叠标签|唱歌|唱歌-off|唱歌-on}}{{折叠标签|跳舞|跳舞-on|跳舞-off}}
{{扩展时间线|auto=唱歌:唱|clps=唱歌#-跳舞
|2011年1月,唱了歌
|2022年3月,跳了舞##跳舞
}}
效果
唱歌-off唱歌-on
跳舞-on跳舞-off
  • 2011年1月唱了歌
  • 2022年3月跳了舞