卡片模板存在问题

原文:Card template has a problem

Anki 最近在报告卡片模板中的错误时变得更为严格。过去,它会默默忽略一些问题,但会以意外的方式显示模 板。做出这个改变是为了让错误更容易被发现。

如果你没有自己编辑过卡片模板,那么很可能是你下载了一个共享牌组,其中原始牌组的作者在创建模板时出现了 错误。

你可以通过打开卡片模板界面来修正模板上的错误:

  • 在电脑版本中,编辑一张有问题的卡片,然后点击 卡片… 按钮
  • 在 AnkiMobile 中,在复习界面查看有问题的卡片时,点击齿轮图标,然后选择 卡片模板。

当你修正了一个错误时,它会更新所有该模板的卡片 - 你不需要对使用该模板的每张卡片进行相同的更改。

需要更改的内容将取决于你收到的消息。

已找到「{{字段}}」,但字段「字段」不存在。

这表明你的模板中包含了一个不存在的字段名称。要修复此问题,请在卡片模板中找到 {{字段}} 并将其删除。

「{{字段」中缺少「}}」

当模板中找到了 {{ 但没有无匹配的 }} 时,会显示此消息。例如,如果你有

{{字段

则需要更改为

{{字段}}

缺少「{{/字段}}」

这意味着 Anki 在卡片模板中找到了 {{#字段}}{{^字段}},但没有匹配的 {{/字段}}。从模板中移除 {{#字段}}{{^字段}} 会修复此错误。

已找到「{{/字段1}}」,但需要「{{/字段2}}」

条件替换需要按照打开的顺序关闭。例如,下面的模板是不正确的:

{{#字段1}}
  {{#字段2}}
    {{字段3}}
  {{/字段1}}
{{/字段2}}

为了修正此问题,模板应更改为:

{{#字段1}}
  {{#字段2}}
    {{字段3}}
  {{/字段2}}
{{/字段1}}

已找到「{{/字段}}」,但缺少「{{#字段}}」或「{{^字段}}」

闭合标签必须由打开标签匹配。例如,以下是无效的,因为开头没有 {{#字段2}}{{^字段2}}

  {{字段}}
{{/字段2}}

可以通过移除闭合标签来修复:

{{字段}}