模板:=/文档
插入一个等号 =
,而不引起解析器的混淆。
功能
在 MediaWiki 中,等号 =
用于指定参数和值的关系,例如{{模板名|参数1=值1|参数2=值2}}
。
如果参数名或编号参数值中包含等号,解析器会误将其视为语法的一部分,导致解析错误。类似的情况也会出现在解析器函数和表格等等 Wikitext 语法中。
这种简单一致的解决方案被许多Wiki采用,因此 MediaWiki 从 1.39 版本开始,将{{=}}
加入魔术字(Magic Word),默认支持此特性。目前 BWiki 的版本是1.37.0,因此这一模版是手动创建的。
示例
对于模板的编号参数,以模板:划掉重说为例:
- 正常:{{划掉重说|1+1+1|2+2+2}} ->
1+1+12+2+2 - 异常:{{划掉重说|1=2-1|2=3-1}} ->
2-13-1
异常例子中,1=2-1
被视为向模板提供名为 1
的参数,其值为 2-1
。
此时,可加入本模板避免解析错误:{{划掉重说|1{{=}}2-1|2{{=}}3-1}} -> 1=2-12=3-1
类似的,对于以下#switch
语句:
{{#switch: 1=2
| 1=2 = raw
| 1<nowiki>=</nowiki>2 = nowiki
| 1{{=}}2 = template
| default
}}
结果:template
相关特性
魔术字{{!}}
{{!}}
是一个魔术字,用于插入一个竖线 |
。MediaWiki 从 1.24 版本开始默认支持此特性。
调试 Wikitext
特殊:展开模板页面可用于调试 Wikitext。极少数情况下,解析器对 Wikitext 的解析可能不符合编写者预期。
其中较为常见的情况,是解析器将内容中的换行、等号、竖线等视为 Wikitext 语法的一部分,本模板就是用于处理其中等号被视为 Wikitext 语法的情况。
相关资料
- BWiki - Tools wiki 社区文档:调试Wikitext
- MediaWiki帮助文档
#switch
使用中的等号问题 https://www.mediawiki.org/wiki/Help:Extension:ParserFunctions#Raw_equal_signs - MediaWiki 魔术字文档 https://www.mediawiki.org/wiki/Help:Magic_words/en#Other