Help:扩展

来自Rotaeno中文维基
盐棋讨论 | 贡献2024年4月20日 (六) 00:20的版本 (创建页面,内容为“{{ 提示 | 编辑页面正在建设 |提醒}} ''参见: mw:Category:Extensions'' ---- 本帮助文档是关于如何在Rotaeno中文维基使用扩展特性的说明。 自1.18版本开始,MediaWiki的可下载版本默认随附了一些捆绑的扩展和皮肤,参考mw:Bundled_extensions_and_skins。具体内容可在特殊:版本#安装的扩展查看。 == 引述 == 引述可以让在页面中加入脚注。 引述引入了两个解析器…”)
(差异) ←上一版本 | 最后版本 (差异) | 下一版本→ (差异)

参见: mw:Category:Extensions


本帮助文档是关于如何在Rotaeno中文维基使用扩展特性的说明。

自1.18版本开始,MediaWiki的可下载版本默认随附了一些捆绑的扩展和皮肤,参考mw:Bundled_extensions_and_skins。具体内容可在特殊:版本#安装的扩展查看。

引述

引述可以让在页面中加入脚注。

引述引入了两个解析器标签,用<ref />标签插入脚注文本,用<references />标签指定脚注位置。

可以插入多个<references />标签,标签之前组号相同的所有<ref />都会插入到这里。 如果没有<references />标签,那么参考引述(无组号脚注)仍会显示在页面结尾,其余不显示。

建议不要在模板中使用<references />标签。

说明 维基文本 渲染
太阳很大。<ref>E. Miller, ''The Sun'', (New York: Academic Press, 2005), 23–25.</ref> 然而月亮不大。<ref>R. Smith, "Size of the Moon", ''Scientific American'', 46 (April 1978): 44–46.</ref>

参考资料:

<references />

太阳很大。[1] 然而月亮不大。[2]

参考资料:

  1. E. Miller, The Sun, (New York: Academic Press, 2005), 23–25.
  2. R. Smith, "Size of the Moon", Scientific American, 46 (April 1978): 44–46.
使用<ref name="name">复用脚注。用相同的name区分脚注。只有首个标签内的文本起作用。

注意name属性使用的标识符必须要有字母字符,以数字开头会报错。建议名称保持简单并限制为ASCII字符集。

这是多个引用使用一个脚注的例子。<ref name="multiple">记住当你多次引用相同的脚注时,会使用第一个引用中的文本。</ref>

有多个语句来自同一個的来源时,这種引用特別有用。<ref name="multiple" /> 任何复用标签都不应该包含额外文本,否则会产生错误。 仅使用空标签。

进行多次引用的简洁方法是使用空的ref标签,在末尾加上斜杠。
尽管这样子减少繁杂工作,但是请注意,如果以后有个编辑者移除了第一个引用,后面使用空的ref标签的引用都会丢失。<ref name="multiple" />

注:

<references />

这是多个参考使用一个脚注的例子。[1]

有多个语句来自相同来源时,这样引用来源会特別有用。[1] 任何复用标签都不应该包含额外文本,否则会产生错误。 仅使用空标签。

进行多次引用的简洁方法是使用空的ref标签,在末尾加上斜杠。 尽管这样子减少繁杂工作,但是请注意,如果以后有个编辑者移除了第一个引用,后面使用空的ref标签的引用都会丢失。[1]

注:

  1. 1.0 1.1 1.2 记住当你多次指向相同的脚注时,会使用第一个引用中的文本。
使用<references group="group" />为脚注分组,生成单独的引用列表。

注意group属性使用的标识符必须要有字母字符,以数字开头会报错。建议名称保持简单并限制为ASCII字符集。

科学家称,太阳很大。<ref>E. Miller, ''The Sun'', (New York: Academic Press, 2005), 23–25.</ref> 事实上,非常大。<ref group="footnotes"> 相信他们的话。 千万不要直视太阳!</ref>

脚注:

<references group="footnotes" />

参考资料:

<references />
科学家称,太阳很大。[1] 事实上,非常大。[footnotes 1]

脚注:

  1. 相信他们的话。 千万不要直视太阳!

参考资料:

  1. E. Miller, The Sun, (New York: Academic Press, 2005), 23–25.
将部分或全部引述文本移动到<references />标签内,防止大段引述影响阅读。可用于从文本中拆分参考资料。

注意需要自行维护参考的标号和顺序。


太阳很大。<ref name="miller" /> 然而月亮不大。<ref name="smith" />

参考资料:

<references>
<ref name="smith">R. Smith, "Size of the Moon", ''Scientific American'', 46 (April 1978): 44–46.</ref>
<ref name="miller">E. Miller, ''The Sun'', (New York: Academic Press, 2005), 23–25.</ref>
</references>

太阳很大。[1] 然而月亮不大。[2]

参考资料:

  1. E. Miller, The Sun, (New York: Academic Press, 2005), 23–25.
  2. R. Smith, "Size of the Moon", Scientific American, 46 (April 1978): 44–46.
使用<ref follow="name">为具名脚注追加参考文献内容。
这是将多个文本合并到相同脚注的例子。<ref name="main">记住所有的文本都会包含在含有name="…"属性的参考中。</ref>

<ref follow="main">在带有follow="…"属性的标签内,简单包含额外文本,并符合第一个参考的名称。</ref>

参考资料:

<references/>

这是将多个文本合并到相同脚注的例子。[1]


参考资料:

  1. 记住所有的文本都会包含在含有name="…"属性的参考中。 在带有follow="…"属性的标签内,简单包含额外文本,并符合第一个参考的名称。

替换引用和嵌入解析器函数

由于Cite的<ref />标签是在MediaWiki的解析器函数(如{{#ifexpr:…}})、变量(如{{PAGENAME}})或subst:之前解析的,因此在引述的参考内不会起效果。 反之,你应该使用魔术字{{#tag:…}}才对。

维基文本 结果
Foo<ref>这不起作用,参见{{subst:#time:Y-m-d|now}}</ref> bar baz…
Foo{{#tag:ref|而这样就会起作用,参见{{subst:#time:Y-m-d|now}}}} bar baz…
<references />

Foo[1] bar baz… Foo[2] bar baz…

  1. 这不起作用,参见{{subst:#time:Y-m-d|now}}
  2. 而这样就会起作用,参见2024-04-19

解析器函数

#expr

使用下面这个函数计算并返回数学表达式的结果。

{{#expr: 表达式 }}

使用布尔代数时,0表示false,其他任何非0数值(无论正负)均表示true。

空表达式返回空值,错误的表达式返回错误信息。

置于数字前的加减号会被视为正负号而不会报错。

以下是支持的运算符。

运算符的说明参见meta-wiki

类型 运算符号
分组 ( )
数字 1234.5   e (2.718)   pi (3.142)
二进制操作者e 一元 +,-
Unary not ceil trunc floor abs exp ln sin cos tan acos asin atan
二进制 ^
* / div mod
+ -
取整 round
逻辑 = != <> > < >= <=
and
or

#if

此函数判断一个字符串是否为空。只包含半角空格的字符串被视为空字符串,这意味着,全角空格 是不被当做空字符串的。

{{#if: 字符串 | 空值返回 | 非空值返回 }}

当字符串是空值时返回第二个参数,当字符串不是空值时返回第三个参数。 当字符串填写参数来判断是否赋值时,需要添加竖线:

{{#if: {{{参数名|}}} | 空值返回 | 非空值返回 }}

返回值不一定需要填写可以为空,这样就不会返回内容。这对于下面判断类型的解析器函数一致适用。

#ifeq

此函数判断两个输入字符串是否相同,并根据结果输出两个字符串的其中一个。如果需要更多的比较和输出字符串,请考虑使用#switch

{{#ifeq: 字符串1 | 字符串2 | 相同返回 | 不相同返回 }}

注意:区分大小写。

#switch

此函数将一个输入值与多个测试用例进行比较,如果找到匹配项,则返回关联的字符串。

{{#switch: 输入值 
 | 值1 = 输入值是值1时返回的内容 
 | 值2 = 输入值是值2时返回的内容
 | 当找不到一样的值时返回的内容 }}

还有一种高级的switch-true用法可以支持更多功能。

{{#switch: 1 
 | {{#ifexpr: 表达式 | 1 | 0 }} =
 | {{#if: 页面 | 1 | 0 }} = 返回值1
 | {{#ifeq: 字符串1 | 字符串2 | 1 | 0 }} = 返回值2 }}

#iferror

此函数以一个字符串为输入,然后在两条预选结果中取其一而返回。

{{#iferror: 字符串 | error返回 | correct返回 }}

这个函数可以认定解释器函数和模板等的错误。

{{#iferror: {{#expr: 表达式 }} | error | correct }}

与其他不同的是,如果不填写correct返回的内容,那么correct返回的内容会是被测字符串本身。

#ifexpr

此函数会判断数学表达式并根据其布尔值结果返回对应的字符串。

{{#ifexpr: 表达式 | true返回 | false返回 }}

#ifexist

此函数将一组字符串作为输入,并翻译成页面标题,然后根据在本地wiki上是否存在该页面而返回对应的值。

{{#ifexist: 页面名 | 存在时返回 | 不存在时返回 }}

#rel2abs

此函数将相对文件路径转换为绝对文件路径。

{{#rel2abs: 相对路径 | 基路径 }}

“相对路径”可以使用以下类型的句法:

  • . → 本级路径
  • .. → 回到上一级
  • /foo → 向下一级进入子目录/foo

“基路径”默认为函数所在页面的绝对路径。

例如,若指定基路径为用户:用户名/sandbox/模板:测试

./style.css用户:用户名/sandbox/模板:测试/style.css
../style.css用户:用户名/sandbox/style.css

#time

此解析器函数需要日期和/或时间,并根据给定的语法设置其格式。可以指定日期/时间对象;默认值是魔法词的值,即页面最后呈现到 HTML 的时间。

{{#time: format string }}
{{#time: format string | date/time object }}
{{#time: format string | date/time object | language code }}
{{#time: format string | date/time object | language code | local }}

#timel

此函数等效于#time函数将local参数设置为true,因此它始终使用 wiki 的本地时间。

#titleparts

此函数根据斜杠将页面标题分隔为段,然后返回其中一些段作为输出。

{{#titleparts: 页面路径 | 要返回的段数 | 第一个返回段 }}