模組: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=或}}
|
第一項、第二項或第三項 |