產生卡片 Card Generation
- 反向卡片 Reverse Cards
- 產生與刪除卡片 Card Generation & Deletion
- 選擇性產生卡片 Selective Card Generation
- 條件式取代 Conditional Replacement
- 背面空白 Blank Back Sides
- Anki 較舊版本的限制 Limitations in Older Anki Versions
- 新增空白筆記 Adding Empty Notes
- 克漏字模板 Cloze Templates
反向卡片 Reverse Cards
使用內建的「基本型(含反向卡片)」筆記類型,Anki 會建立兩張正背面相反的卡片(即「正面→背面」和「背面→正面」)。
若僅部分筆記需要反向卡片,你可以使用「基本型(選擇性反向卡片)」筆記類型。若你僅在正面和背面欄位中輸入了文字,則 Anki 只會為你建立一張「正面→背面」卡片。需要反向卡片時,只要在「加入反向卡片」欄位中輸入任意文字(如「1」),Anki 就會再建立一張反向卡片。「加入反向卡片」欄位中的文字不會出現在卡片中。
產生與刪除卡片 Card Generation & Deletion
當卡片正面沒有內容時,Anki 不會建立這些卡片。若有一則筆記的「我的欄位」欄位為空,且有一個卡片類型的正面模板僅為 {{我的欄位}}
,則這則筆記不會產生這個類型的卡片。
編輯已有筆記時,若你新增的內容使部分卡片的正面不再是空白,則 Anki 會自動為你建立這些卡片。但反過來,如果你移除了一些內容後,有些卡片正面變成空白的,則 Anki 不會自動刪除這些卡片,以防因不小心刪除欄位內容而造成資料遺失。要移除空白卡片,請在主視窗中前往「工具」→「空白卡片」。若有空白卡片,則彈出的視窗中會列出所有空白卡片清單,並可選擇刪除。
囿於卡片產生機制,你無法手動刪除單張卡片,否則每次編輯筆記時,刪掉的卡片都會被重新建立。要刪除不需要的卡片,你應該把卡片正面模板中的相關「條件式取代」欄位留空,然後執行「空白卡片」工具。
Anki 判斷是否產生卡片時不會考慮特殊欄位和非欄位文字。因此雖然以下卡片「國家」欄位外有文字:
{{國家}}在哪個洲?
但只要「國家」為空就不會產生卡片。
選擇性產生卡片 Selective Card Generation
你可以使用「基本型(選擇性反向卡片)」筆記類型來為重點卡片多加一張卡片。要自己建立這樣的筆記類型,請先新增一個欄位。然後在卡片模板中,你可以設定依欄位有無內容來確定是否要建立卡片。請繼續閱讀〈條件式取代〉章節來進一步了解如何設定。
條件式取代 Conditional Replacement
你可以依欄位有無內容為條件,決定要不要為卡片加入文字、欄位或 HTML 碼。例如:
這句話永遠會被顯示
{{#欄位名稱}}
這句話只有當「欄位名稱」中有文字時才會被顯示
{{/欄位名稱}}
{{^欄位名稱}}
這句話只有當「欄位名稱」為空時才會被顯示
{{/欄位名稱}}
以下實際案例只有當欄位不為空時才會顯示欄位前的文字(「標籤:」):
{{#Tags}}
標籤:{{Tags}}
{{/Tags}}
再舉例,假如你的筆記類型可以在較難的卡片背面附上備註,你可能想在複習時知道哪些筆記有備註,以便多花一點時間來耐心回答較難的卡片。要讓「目標欄位」僅當有備註時才顯示為藍色字型,請參照以下設定:
{{#備註}}
<span style="color:blue;">
{{/備註}}
{{目標欄位}}
{{#備註}}
</span>
{{/備註}}
利用 Anki 不會建立正面空白的卡片的特點,你還可以使用條件式取代來控制要不要產生卡片。假設你的卡片模板如下:
{{原文}}
{{備註}}
正常情況下,只要「原文」和「備註」中有一個欄位不為空,就會產生卡片。要讓卡片僅在「原文」有內容時才產生,你可以將模板改成這樣:
{{#原文}}
{{原文}}
{{備註}}
{{/原文}}
要讓卡片僅在兩個欄位都有內容時才產生,你可以使用兩個條件式取代:
{{#原文}}
{{#備註}}
{{原文}}
{{備註}}
{{/備註}}
{{/原文}}
注意,僅在卡片正面使用這樣的條件式取代才能控制卡片產生;放在背面則會產生背面空白的卡片。另外,因為這是利用了 Anki 不會建立正面空白的卡片的特點,如果你不把整個正面都放進條件式取代中,可能會達不到預期效果:
{{#原文}}
{{原文}}
{{/原文}}
{{備註}}
背面空白 Blank Back Sides
產生卡片時只會檢查卡面正面。假設你的卡片正面為:
{{欄位一}}
背面模板為:
{{欄位二}}
只要「欄位一」不為空,卡片就會被產生。若「欄位二」為空,卡片仍會被產生,且卡片背面將為空白。
要避免產生背面空白的卡片,你需要在卡片正面模板加上條件式取代,像這樣:
{{#欄位二}}
{{欄位一}}
{{/欄位二}}
這樣,只有當「欄位一」和「欄位二」都不為空時,才會產生卡片。
Anki 較舊版本的限制 Limitations in Older Anki Versions
以下限制不套用於 Anki 2.1.28+ 和 AnkiMobile 2.0.64+ 版本。
在較舊的版本中,Anki 無法在產生卡片時使用否定條件式取代。例如,在 Anki 2.1.28 版本中,以下模板產生卡片的條件為,「空白時新增」欄位為空,且「正面」欄位不為空:
{{^空白時新增}}
{{正面}}
{{/空白時新增}}
但版本較舊的 Anki 會無視這條否定條件式,因此是否產生卡片僅取決於「正面」欄位是否為空。
在條件中混合使用邏輯且 (AND) 和或 (OR) 也會在較舊版本中造成問題。這是一個能正常運作的例子(若 A或B或C 不為空,則新增卡片):
{{A}}
{{B}}
{{C}}
這是另一個能正常運作的例子(若 A且B且C 不為空,則新增卡片):
{{#A}}
{{#B}}
{{#C}}
{{A}}
{{/C}}
{{/B}}
{{/A}}
但以下混用了邏輯且和或的例子(若 A或(B且C) 不為空,則新增卡片)則無法正常運作:
{{A}}
{{#B}}
{{#C}}
{{B}}
{{/C}}
{{/B}}
新增空白筆記 Adding Empty Notes
在 Anki 2.1.28+ 和 AnkiMobile 2.0.64+ 版本中,若新增筆記時沒有產生任何卡片,則 Anki 會使用第一個模板來建立一張空白卡片。這樣是為了在內容不完整時也能先新增筆記,等到日後完善筆記內容或修改模板後,方可使卡片生效。若不想要保留空白筆記,請執行「空白卡片」功能以移除。
在版本較舊的 Anki 中,當筆記不會產生卡片時,筆記將無法被新增/匯入。
克漏字模板 Cloze Templates
請參閱〈克漏字空格〉章節來了解背景資訊。
普通的筆記類型可以自訂卡片類型的數量,但在克漏字筆記類型中,筆記中所有空格都共用同一個唯一的卡片類型。
在上面的章節中,我們談到普通卡片產生的條件是問題面中指定的欄位不為空。但克漏字筆記類型的規則不同:
-
Anki 將首先檢查正面模板中的克漏字取代,如「{{cloze:欄位名稱}}」。
-
然後,Anki 將檢查「欄位名稱」欄位中的所有克漏字引用,如「{{c1::文字}}」。
-
最後,依空格序號將產生卡片,序號相同的空格將被包含在同一張卡片中。
由於這一機制僅限於克漏字卡片,因此「{{cloze:…}}」標籤無法用於普通筆記類型。
條件式取代可以用來自訂各空格序號所產生的卡片。若要在第一張克漏字卡片中顯示「提示一」欄位,在第二張克漏字卡片中顯示「提示二」欄位,請參照以下模板:
{{cloze:文字}}
{{#c1}}
{{提示一}}
{{/c1}}
{{#c2}}
{{提示二}}
{{/c2}}