Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

欄位取代 Field Replacements(原文)

基本取代

最基本的模板長這樣:

{{正面}}

當你用花括號包住文字時,Anki會尋找名為括號中文字的欄位,並取代上欄位中的實際內容。

欄位名稱分大小寫如果你的欄位名稱是Front,模板中則不能寫作{{front}},否則將無法正常運作。

除了欄位,你還可以在模板中加入普通文字。若你在背各國首都,並在筆記類型中建立了「國家」欄位,你可以把正面模板改成這樣:

{{國家}}的首都是?

這是預設的背面模板:

{{FrontSide}}

<hr id=answer>

{{背面}}

這樣表示,顯示正面的內容,然後顯示一條分隔線,最後顯示「背面」欄位。

「id=answer」表示問題和答案的界線。當你在一張較長的卡片上按一下「顯示答案」時,Anki會自動滾動至答案部分(在螢幕較小的行動裝置上相當實用)。如無需答案前的橫線,可改用段落或div等其他HTML元素。

換行

因為卡片模板跟網頁一樣,所以換行時需要使用特殊的指令。如果你的模板如下:

一
二

在預覽時,你將看到: 一 二

要換行,請在行末加入代碼 <br>:

一<br>
二

代碼「br」來自「換行」的英文「(line) br(eak)」。

欄位間要換行也一樣,例如

{{欄位1}}<br>
{{欄位2}}

欄位文字轉語音

僅Anki 2.1.20+、AnkiMobile 2.0.56+ 及AnkiDroid 2.17+ 版本支援這個功能。

要使用美國英語唸出「正面」欄位中的內容,你可以在卡片模板中寫出:

{{tts en_US:正面}}

在Windows、macOS和iOS上,Anki會使用系統內建的語音。Linux上沒有內建語音,但你可使用附加元件來加入語音,像是這個附加元件

要檢視所有可用的語言/語音,請在卡片模板中寫下:

{{tts-voices:}}

若所需語言有多種聲音可用,你可以將這些聲音列成清單,Anki會使用清單中第一個可用的聲音。比如:

{{tts ja_JP voices=Apple_Otoya,Microsoft_Haruka:欄位}}

這樣設定,則在Apple裝置上會使用Otoya,在Windows裝置上會使用Haruka。

部分TTS聲音還能調整速度(speed=):

{{tts fr_FR speed=0.8:另一個欄位}}

速度和聲音都可省略,但必須包含語言。

在Mac上,你可以自訂可用的聲音:

  • 開啟「系統設定」。

  • 按一下「輔助使用」。

  • 按一下「語音內容」

  • 按一下「系統聲音」,然後在下拉式選單中選擇「管理聲音」...

聲音的品質不一,建議多嘗試幾個聲音再做出選擇。只有Apple內建軟體才能使用Siri聲音,因此安裝後也不能在Anki中使用。安裝完成後,你需要重新啟動Anki才能選用新的聲音。

在Windows上,有些聲音也不能被其他應用程式使用,比如Cortana。

你也可以在克漏字筆記類型中加入cloze-only篩選器,朗讀空格中的內容:

{{tts en_US:cloze-only:文字}}

僅Anki 2.1.29+、AnkiMobile 2.0.65+ 及AnkiDroid 2.17+ 版本支援「cloze-only」篩選器。

靜態文字和多個欄位文字轉語音

僅Anki 2.1.50+、AnkiMobile 2.0.84+ 及AnkiDroid 2.17+ 版本支援這個功能。

要朗讀模板中的靜態文字或多個欄位,請輸入:

[anki:tts lang=zh_TW]朗讀這些文字、{{欄位1}}和{{欄位2}}[/anki:tts]

模板上的其他文字。此行不在標籤內,所以不會被讀出來。

特殊欄位

你可以在模板中加入以下特殊欄位:

筆記標籤:{{Tags}}

筆記類型:{{Type}}

卡片所屬牌組:{{Deck}}

卡片所屬子牌組:{{Subdeck}}

卡片旗標:{{CardFlag}}

卡片類型(如「反向」):{{Card}}

正面模板內容(僅限背面模板使用):{{FrontSide}}

「FrontSide」中的音訊不會被自動播放。要在卡片正背面都自動播放音訊,你需要把音訊欄位單獨加入背面模板。

跟普通欄位一樣,特殊欄位的名稱也區分大小寫——比如筆記標籤應為{{Tags}},不能輸入為{{tags}}

提示欄位

你可以隱藏卡片正面或背面上的欄位,且可在需要的時候選擇顯示。被隱藏的欄位叫做「提示欄位」。新增提示前,請注意,越容易回答的問題會越難記住。請前往 https://super-memory.com/articles/20rules.htm 了解「最少資訊原則」(minimum information principle)。

首先,請先建立一個提示欄位。如果不知道怎麼新增欄位,請參閱〈自訂欄位〉章節。

假設你建立了一個「我的欄位」,要把欄位加入模板時,依以下格式:

{{hint:我的欄位}}

在卡片上,這會被取代成一個標著「hint」的連結;按一下連結,欄位中的內容就會出現。

在問題面顯示提示後,若按下顯示答案,則提示會再次隱藏。如果不想在答案面隱藏提示,請在背面模板移除{{FrontSide}}並手動加入欄位。

目前無法使用音訊作為提示——沒有按下「hint」連結也會照樣播放音訊。

要自訂提示的樣式或行為,你將需要自己建置一種提示欄位。我們無法幫你學習HTML和CSS語言,但你可以參考以下程式碼:

{{#背面}}
<a class=hint href="#"
onclick="this.style.display='none';document.getElementById('hint4753594160').style.display='inline-block';return false;">
顯示背面</a><div id="hint4753594160" class=hint style="display: none">{{背面}}</div>
{{/背面}}

字典連結

你可以利用欄位取代來建立字典連結。假設你在學習語言,你常用的線上字典可使用URL進行搜尋:

http://example.com/search?q=單字

你可以新增一個這樣的連結:

{{單字}}

<a href="http://example.com/search?q={{單字}}">檢索字典</a>

複習使用這個模板的卡片時,只需按一下「檢索字典」連結即可搜尋該卡片對應的單字。請繼續閱讀下一部分來了解潛在的問題。

清除HTML標籤

跟模板一樣,欄位也是使用HTML碼來儲存內容的。在上面的字典連結中,若「單字」欄位內容為「word」且不包含格式,則HTML原始碼仍為「word」。但如果你加入了格式,則會同時加入HTML原始碼,若「word」加上了粗體,HTML原始碼會是「<b>myword</b>」。

因此,在字典連結或類似的情形中可能會出現問題。依上述例子,字典連結可能會變成:

<a href="http://example.com/search?q=<b>word</b>">檢索字典</a>

因為多出了「<b>」等無關字元,在字典中可能找不到任何結果。

為了解決這一問題,Anki提供了在取代時清除欄位格式的功能。只要在欄位名稱前輸入「text:」,Anki就會清除所有格式。依以下格式設定連結,即便欄位文字存在格式也能正常搜尋:

<a href="http://example.com/search?q={{text:單字}}">檢索字典</a>

從右至左書寫(RTL)

如果你在學習的語言是從右至左書寫,你需要像這樣調整模板:

<div dir=rtl>{{有RTL文字的欄位}}</div>

注音

要為漢字注音(在日文中又稱振假名),請依以下語法輸入文字:

日本語[にほんご]

假設你在「單字」欄位中寫入了以上文字,如果模板上的欄位沒有加上篩選器,則{{單字}}會顯示為日本語[にほんご]。你需要在模板名稱前加上furigana篩選器才能自動將注音放到字上方:

{{furigana:單字}}

以下是一些範例:

原文顯示效果
日本語[にほんご]日本語にほんご
水 獺[ㄊㄚˋ]ㄊㄚˋ
水獺[ㄊㄚˋ]水獺ㄊㄚˋ(錯誤用法)
世[よ]の 中[なか]なか
世[よ]の中[なか]の中なか(錯誤用法)

注意第2個例子中的「獺」和第4個例子中的「中」前面都有一個半形空格,這樣表示注音應顯示在空格後的文字上方。如未加入空格,則會像第3和第5個例子中那樣,「ㄊ」可能會跑到「水」上面,而「な」可能會顯示在「の」上面。

其他注音篩選器

除了振假名篩選器furigana,你還可以選擇只顯示注音或原文使用假名篩選器kana時將只顯示注音使用漢字篩選器kanji則會移除注音。

原文欄位篩選器顯示效果
日本語[にほんご]{{furigana:欄位名稱}}日本語にほんご
日本語[にほんご]{{kana:欄位名稱}}にほんご
日本語[にほんご]{{kanji:欄位名稱}}日本語

媒體檔與LaTeX方程式

為保證執行速度,Anki不會檢查模板有無引用媒體檔。因此在模板上直接加入媒體會導致一些問題。

靜態音檔/影像

要在每張卡片上都加入同樣的音檔或影像:

  1. 重新命名檔案,在開頭加上一個底線,如「_logo.jpg」。底線表示檔案被模板引用,且應在共用牌組時被匯出。

  2. 在正面或背面模板中引用這個媒體檔:

<img src="_logo.jpg">

引用欄位

媒體引用中不能包含欄位取代。問題有:複習時可能無法正常顯示、檢查未被使用的媒體檔無法被偵測到、無法正常匯出/匯入等。無法正常運作的例子:

<img src="{{單字}}.jpg">

[sound:{{例句}}]

[latex]{{欄位一}}[/latex]

請將媒體引用放入欄位內容。請參閱〈匯入媒體檔〉來進一步了解。

檢查答案

要檢查你的答案,最簡單的方式是使用「基本型(輸入答案)」筆記類型。

若要修改已有筆記類型,假設你的模板如下:

{{中文}}

{{FrontSide}}

<hr id=answer>

{{英文}}

要輸入英文並檢查答案,請修改卡片正面模板:

{{中文}}
{{type:英文}}

在要檢查的欄位前加入type:。因為背面模板有「FrontSide」欄位,所以無需再次加入{{type:英文}}

複習畫面中將會顯示一個文字框,輸入答案後按下 Enter 鍵或顯示答案按鈕後,Anki會對比你給出的答案和正確答案。文字框的字型大小是你在「欄位」編輯畫面中設定的大小。

答案檢查結果僅供參考,你可以依實際情況自由選擇評價按紐。

一張卡片只能加入一個文字對比。加入多個{{type:欄位}}將無法正常運作。文字框只能顯示為一行,因此不適合用於包含多行文字的欄位。

答案檢查結果使用等寬字型,這樣你輸入的答案和正確答案中的字母可以一一對齊。若要覆蓋使用的字型,請在樣式表底部加入:

code#typeans { font-family: "字型名稱"; }

加入的程式碼會影響答案檢查結果的HTML原始碼:

<code id=typeans>...</code>

進階使用者還可以使用CSS類別「typeGood」、「typeBad」和「typeMissed」來覆蓋預設的檢查結果文字顏色。AnkiMobile支援「typeGood」和「typeBad」兩個類別,但不支援「typeMissed」。

要覆蓋文字框的字型大小但不更改「欄位」對話框中的設定,你可以使用!important來覆蓋預設的行內樣式:

#typeans { font-size: 50px !important; }

克漏字卡片也可以輸入答案。請在卡片正背面模板中都加入{{type:cloze:文字}},像這樣:

{{cloze:文字}}
{{type:cloze:文字}}
{{背面額外內容}}

因為克漏字類型不使用「FrontSide」欄位,所以需要在正背兩面都加入。

若一張卡片中包含了多個克漏字空格,顯示正確答案時各空格內容將以半形逗號和空格「, 」隔開。

輸入答案文字框不會在瀏覽器預覽中顯示,只會在複習畫面或卡片類型視窗中顯示。

ankiweb.net 上複習時也不會顯示輸入答案文字框。