跳到内容

帮助:引用错误

来自维基教科书,开放的书籍,为开放的世界

Template:Redirect Template:Information page

维基百科脚注系统能够检测错误。本页记录了错误消息,并提供了对问题和解决方案的理解。

错误消息

[编辑 | 编辑源代码]

这些消息将被格式化为 错误,并在点击“发布更改”按钮后在渲染的页面上可见。

这些消息取决于Special:Preferences中的语言设置 - 此列表仅适用于“en — English”。

  • 无效的<ref>标签;没有名称的引用必须有内容
  • 打开的<ref>标签格式错误或名称错误
  • <ref>标签中的无效参数
  • 无效的<ref>标签;名称不能是简单的整数。使用描述性标题
  • <ref>标签缺少关闭的</ref>
  • 无效的<ref>标签;没有为名为$1的引用提供文本
  • <references>标签中的无效参数
  • 自定义反向链接标签用完。在MediaWiki:Cite references link many format backlink labels消息中定义更多。
  • <references>中的<ref>标签具有冲突的组属性“$1”。
  • MediaWiki:Cite error references missing group
  • <references>中定义的名称为“$1”的<ref>标签在之前的文本中未使用。
  • <references>中定义的<ref>标签没有名称属性。
  • 无效的<ref>标签;名称“$1”多次定义,但内容不同
  • <references>组“$2”中定义的名称为“$1”的<ref>标签没有内容。
  • $1

其他问题

[编辑 | 编辑源代码]

有些问题可能不会显示引用错误消息,而另一些问题可能不明显。

在引用名称中只使用直引号

[编辑 | 编辑源代码]

当你在一个页面上多次引用同一个来源时,只使用直引号" "将引用名称括起来。不要使用花括号引号Template:!mxt,它们被视为仅仅是另一个字符,而不是引号。如果原始引用和重复引用混合使用直引号和花括号引号,则会显示错误消息。定义命名引用的语法是

<ref name="name">content</ref>

重复命名引用

<ref name="name" />

页面显示在引用错误类别中,但没有显示引用错误

[编辑 | 编辑源代码]

如果<ref>...</ref>包含一个带有=的URL,并且如果引用在模板中,则模板将失败。根据URL的位置,引用错误消息可能不会显示,但该页面将包含在错误类别中。确保=被编码为&#61;

refTools应该解决这个问题。

例如,一个嵌套错误的引用,其中{{lower}}被用来使引用变小

{{#switch:{{{2}}}|nowiki|nw={{#tag:nowiki|{{{3}}}}}|{{{2}}}}}|white-space:-moz-pre-wrap; white-space:-pre-wrap; white-space:-o-pre-wrap; white-space:pre-wrap; word-wrap:break-word;{{{style|}}}">{{#switch:{{{1}}}|nowiki|nw={{#tag:nowiki|{{{2}}}}}|{{{1}}}}} }}
[编辑 | 编辑源代码]

这可能是由一个没有用}}正确关闭的模板引起的。

它也可能是由多个定义为使用相同名称的脚注引起的。两个脚注都会生成链接,但只有第一个会在引用列表中显示:例如

<ref name="foo">content1</ref>
<ref name="foo">content2</ref>

只有content1会显示。refTools会解决这个问题。

非文章页面上的内容丢失

[编辑 | 编辑源代码]

如果脚注没有关闭的</ref>,它会“吃掉”后面的文本,导致它不显示。这通常会显示引用错误,除非它是页面上的最后一个脚注。通常情况下,这会抑制<references />标签,生成错误,但非文章页面上的<references />标签缺失消息会被抑制。refTools会解决这个问题。

有些模板可能包含<ref>...</ref>标签;例如{{botanist}}。如果这种类型的模板包含在没有<references />标签的情况下,就会产生错误,但问题并不明显。refTools不会解决这个问题。

有几种方法可以解决这个问题。下面列出这些方法,按优先级排序。请注意,只需要一种方法,不需要全部方法。

方法1

如果模板有一个文档页面,就在那里添加<references />

方法2

将以下代码添加到模板末尾

<noinclude>
{{Template reference list}}
</noinclude>

方法3

将以下代码添加到模板末尾

<noinclude>
<div style="display: none"><references /></div>
</noinclude>

缺点:隐藏了引用,没有通知用户它在那里;编辑者无法检查引用的格式。

方法4

使用group参数在模板本身内包含<references />标签。参见Help talk:Cite errors/Testcases1了解示例。

缺点:创建了一个单独的引用部分,可能不明显;不允许在文章正文中重复使用引用。

refTools可以通过Preferences → Editing → Usability features启用。它包括一个针对常见问题的错误检查工具。

消息、命名空间和类别

[编辑 | 编辑源代码]

内部消息由Cite.php扩展生成,并作为MediaWiki消息显示。在Special:Version中查看安装的Cite.php版本的解析器挂钩部分。这些消息位于MediaWiki命名空间中,只能由管理员修改。

MediaWiki 消息使用{{broken ref}}来控制命名空间和类别。消息仅在主页面(文章)、用户、模板、类别、帮助和文件页面上显示。讨论页面不会显示错误消息。

类别的默认排序是按{{PAGENAME}}(主命名空间)和τ{{PAGENAME}}(模板、类别、帮助和文件命名空间)排序。

另请参阅

[编辑 | 编辑源代码]

模板:维基百科引用

华夏公益教科书