模块:List/sandbox/doc
< Module:List | sandbox
这是Module:List/sandbox的文档页面
本模块可以输出各种类型的列表。目前,它支持带点的无序列表、不带点的无序列表、水平列表、有序列表(数字的或字母的)、水平有序列表、直接连接列表和用自然语言连成的列表。它允许对各个列表项目进行单独的css样式。
用法
编辑快速使用
编辑模板链接:{{#invoke:list/sandbox|函数|第一项|第二项|第三项|…}}
所有参数
编辑- 位次参数
- 列表的内容
- start
- 有序列表的开始数字
- type
- 有序列表的标序类别
- liststyletype
- 有序列表标记的类型(使用CSS)
- class
- 类
- style
- 样式
- liststyle
- 列表的样式
- itemstyle
- 列表项的样式
- item1style、item2style、item3style
- 第1项的样式、第2项的样式、第3项的样式
- item1value、item2value、item3value
- 第1项的值、第2项的值、第3项的值
- indent
- 水平列表的缩进
以下参数为本站特有:
- arguments
- 指定参数的来源
- replacement
- 列表的每一项为将这个值中的%s替换为原始内容之后的值
- prefix
- 列表每一项的前缀
- suffix
- 列表每一项的后缀
从上级模板传递下来的参数
编辑模板链接:{{#invoke:list/sandbox|函数}}
函数
编辑| 函数名称 | 产生 | 示例输出 |
|---|---|---|
bulleted
|
带点的无序列表 |
|
unbulleted
|
不带点的无序列表 |
|
horizontal
|
水平无序列表 |
|
ordered
|
有序列表(数字标识和字母标识) |
|
horizontal_ordered
|
水平有序列表 |
|
concat
|
直接连接(本站特有) | 第一项第二项第三项 |
list_to_text
|
使用自然语言连接(本站特有) | 第一项、第二项和第三项 |
参数
编辑基本参数
编辑- 位次参数(positional parameters)(
1、2、3……)——这些是列表项。如果没有列表项,模块不输出任何值。 start——设置有序列表的开始。可以是数字序列列表的开始数字,也可以是字母列表的开始字母。水平有序列表只支持数字。type——有序列表使用的标识类别。比如,数字“1”(默认)、大写字母“A”、小写字母“a”、大写希腊字母“I”、小写希腊字母“i”。水平有序列表不支持。参考liststyletype参数。liststyletype——有序列表标识的类别,使用CSS样式,并且使用html标记比type参数拥有更多的可行类型。可用的值都列举在MDN的list-style-type页面。不同浏览器可能支持性不同。class——列表标签的自定义类。本模块不使用div标签。style——列表标签的自定义css样式,例如,font-size: 90%;。liststyle——同style参数。itemstyle——对于所有列表项的自动css样式。格式同style参数。item1style、item2style、item3style……——为每个列表项的自定义css样式。格式同style参数。item1value、item2value、item3value……对给定列表项的自定义值。给定一个,后面的值会从这个指定的值开始增加。这个值应该是正整数。(仅对有序列表有效。)indent——缩进列表,仅适用于水平列表和水平有序列表。值必须是一个数字,比如2。缩进成倍计算,是指定值的1.6倍。未指定时为零。arguments——参数的来源。self表示只接受通过#invoke调用模块时的参数,parent表示使用调用了此模块的模板时传入的参数,template表示位次参数视为parent,赋名参数为self,both表示同时考虑二者,且parent优先。默认为self。separation或sep——在类型为code或list_to_text时,将各项连接起来。conjunction或conj——在类型为list_to_text时,最后一项与倒数第二项的连接。
修改列表各项内容
编辑本模块支持对列表各项内容进行统一的修改。共有以下几种修改方法。注意以下这些修改方法只能选择一种,或者全都不选。
为了表述方便,我们将模板参数中输入的每一项内容称为原始内容,修改后的每一项的内容称为修改后内容,这个用于修改的函数(如有)称为修改函数。
替换格式
编辑你可以指定一个被替换文本,将被替换文本中的“%s”替换为原始内容之后即为修改后内容。这有点类似于string.format函数,但是可以替换可以多次,且不支持%a、%d等特殊用法。
| 代码 | 结果 |
|---|---|
{{#invoke:list/sandbox|bulleted|第一项|第二项|第三项
|replacement=这个%s和那个%s}}
|
|
{{#invoke:list/sandbox|bulleted|第一项|第二项|第三项
|replacement=[[User:%s|%s]]}}
|
前后缀
编辑你可以直接给原始内容加入前缀和后缀。这个当然也可以通过替换文字来实现,不过直接加前后缀显然更加简便。
| 代码 | 结果 |
|---|---|
{{#invoke:list/sandbox|bulleted|第一项|第二项|第三项
|prefix=这是}}
|
|
{{#invoke:list/sandbox|concat|第一项|第二项|第三项
|suffix=平安|sep=,}}
|
第一项平安,第二项平安,第三项平安 |
注意,前后缀可以同时都有,但是不能设置像|prefix={{|suffix=}}或|prefix=[[|suffix=]]这样的参数,因为这会直接影响维基文本的解析;即使加了nowiki也不行,因为这会直接导致文本不解析。虽然模块可以剥离nowiki并反转义,但谁愿意那样做呢?
示例
编辑带点的有序列表
编辑| 代码 | 结果 |
|---|---|
{{#invoke:list/sandbox|bulleted|第一项|第二项|第三项}}
|
|
{{#invoke:list/sandbox|bulleted|第一项|第二项|第三项|itemstyle=color:blue;}}
|
|
{{#invoke:list/sandbox|bulleted|第一项|第二项|第三项|item1style=background-color:yellow;|item2style=background-color:silver;}}
|
|
不带点的无序列表
编辑| 代码 | 结果 |
|---|---|
{{#invoke:list/sandbox|unbulleted|第一项|第二项|第三项}}
|
|
{{#invoke:list/sandbox|unbulleted|第一项|第二项|第三项|itemstyle=color:blue;}}
|
|
{{#invoke:list/sandbox|unbulleted|第一项|第二项|第三项|item1style=background-color:yellow;|item2style=background-color:silver;}}
|
|
水平列表
编辑| 代码 | 结果 |
|---|---|
{{#invoke:list/sandbox|horizontal|第一项|第二项|第三项}}
|
|
{{#invoke:list/sandbox|horizontal|第一项|第二项|第三项|indent=2}}
|
|
有序列表
编辑| 代码 | 结果 |
|---|---|
{{#invoke:list/sandbox|ordered|第一项|第二项|第三项}}
|
|
{{#invoke:list/sandbox|ordered|第一项|第二项|第三项|start=3}}
|
|
{{#invoke:list/sandbox|ordered|第一项|第二项|第三项|type=i}}
|
|
{{#invoke:list/sandbox|ordered|第一项|第二项|第三项|liststyletype=lower-greek}}
|
|
水平有序列表
编辑| 代码 | 结果 |
|---|---|
{{#invoke:list/sandbox|horizontal_ordered|第一项|第二项|第三项}}
|
|
{{#invoke:list/sandbox|horizontal_ordered|第一项|第二项|第三项|start=3}}
|
|
{{#invoke:list/sandbox|horizontal_ordered|第一项|第二项|第三项|indent=2}}
|
|
直接连接
编辑| 代码 | 结果 |
|---|---|
{{#invoke:list/sandbox|concat|第一项|第二项|第三项}}
|
第一项第二项第三项 |
{{#invoke:list/sandbox|concat|第一项|第二项|第三项|sep= / }}
|
第一项/第二项/第三项 |
{{#invoke:list/sandbox|concat|第一项|第二项|第三项|sep=、|conj=及}}
|
第一项、第二项及第三项 |
注:separation和sep等价,conjunction和conj等价。
用自然语言连接
编辑| 代码 | 结果 |
|---|---|
{{#invoke:list/sandbox|list_to_text|第一项|第二项|第三项}}
|
第一项、第二项和第三项 |
{{#invoke:list/sandbox|list_to_text|第一项|第二项|第三项|sep=,}}
|
第一项,第二项和第三项 |
{{#invoke:list/sandbox|list_to_text|第一项|第二项|第三项|conj=或}}
|
第一项、第二项或第三项 |