Генерація карток

Зворотня карта

Ви можете переглянути відео про реверсування карток на YouTube.

Якщо ви хочете створити картки, які йдуть в обох напрямках (наприклад, обидва «ookii»→«big» і «big»→«ookii»), у вас є кілька варіантів. Найпростішим є вибір типу вбудованої нотатки «Основна (і перевернута картка)». Це створить дві картки, по одній у кожному напрямку.

Якщо ви хочете створити зворотні картки лише для деяких матеріалів (можливо, ви хочете витратити час лише на вивчення реверсів для найважливішого матеріалу, або деякі з ваших карток не має сенсу перевертати), ви можете вибрати «Основний (додаткова перевернута картка)” тип нотатки. Цей тип генерує лише передню картку, коли ви заповнюєте перші два поля; якщо ви додатково введете щось у полі «Додати реверс» (наприклад, «y»), Anki також згенерує зворотню картку. Вміст цього поля ніколи не відображатиметься на картці.

Створення та видалення карток

Anki не створюватиме картки з порожніми лицьовими сторонами. Таким чином, якщо «Моє поле» буде порожнім, а шаблон першої картки міститиме лише це поле, картку не буде створено.

Коли ви редагуєте раніше додану нотатку, Anki автоматично створить додаткові картки, якщо вони раніше були порожніми, але тепер такими не є. Однак якщо ваші зміни зробили деякі картки порожніми, але раніше вони не були, Anki не видалить їх негайно, оскільки це може призвести до випадкової втрати даних. Щоб видалити порожні картки, перейдіть до Інструменти → Очистити картки у головному вікні. Вам буде показано список порожніх карток і ви зможете видалити їх.

Через те, як працює генерація карток, неможливо вручну видалити окремі картки, оскільки вони просто відтворяться під час наступного редагування нотатки. Натомість ви повинні зробити відповідні поля умовно порожніми, а потім використати параметр Порожні Картки.

Anki не враховує спеціальні поля чи текст, що не є полем, для створення карток. Таким чином, якщо ваш передній шаблон виглядатиме так, картка не буде створена, якщо "Країна" буде порожньою:

Де знаходиться {{Країна}} на мапі?

Вибіркова генерація карток

Іноді вам може знадобитися створити додаткові картки лише для деяких матеріалів, наприклад, щоб перевірити здатність пригадувати найважливіші слова з набору. Ви можете досягти цього, додавши додаткове поле до своєї нотатки та додавши в нього певний текст (наприклад, «1») у нотатках, для яких ви хочете мати додаткову картку. Потім у шаблоні картки ви можете зробити створення картки залежним від того, що це поле не є порожнім. Для отримання додаткової інформації про це дивіться розділ умовної заміни нижче.

Умовне заміщення

Певний текст, поля чи HTML-код можна додати до своїх карток, лише якщо поле порожнє або не порожнє. Приклад:

Цей текст завжди відображається.

{{#FieldName}}
    Цей текст відображається, лише якщо FieldName містить текст
{{/FieldName}}

{{^FieldName}}
    Цей текст відображається, лише якщо поле FieldName порожнє
{{/FieldName}}

Реальний приклад показує тег, лише якщо поле не пусте:

{{#Tags}}
    Теги: {{Tags}}
{{/Tags}}

Або скажімо, що ви хочете відобразити певне поле синім кольором на лицьовій стороні вашої картки, якщо на зворотному боці є додаткові примітки (можливо, факт наявності приміток служить нагадуванням про те, що вам слід витратити більше часу на обдумування відповіді). Ви можете оформити поле таким чином:

{{#Notes}}
    <span style="color:blue;">
{{/Notes}}

{{FieldToFormat}}

{{#Notes}}
    </span>
{{/Notes}}

Ви також можете використовувати умовне заміщення, щоб контролювати, які саме картки генеруються. Це працює, оскільки Anki не буде генерувати картки з порожньою передньою стороною. Наприклад, розглянемо картку з двома полями на лицьовій стороні:

{{Expression}}
{{Notes}}

Зазвичай картку буде створено, якщо поле Expression або Notes містить текст. Якщо ви хочете, щоб картка згенерувалася, якщо Expression не є порожнім, можете змінити шаблон на такий:

{{#Expression}}
    {{Expression}}
    {{Notes}}
{{/Expression}}

І якщо бажаєте обидва поля, ви можете використати дві умовні заміни:

{{#Expression}}
    {{#Notes}}
        {{Expression}}
        {{Notes}}
    {{/Notes}}
{{/Expression}}

Майте на увазі, що це працює лише тоді, коли ви розміщуєте код умовної заміни на передній стороні картки; якщо зробите це на звороті, ви просто отримаєте картки з порожньою зворотною стороною. Подібним чином, оскільки перевіряється, чи переднє поле є порожнім, важливо переконатися, що ви загорнули «всю» лицьову сторону в умовний вираз; наприклад, наступне не працюватиме належним чином:

{{#Expression}}
    {{Expression}}
{{/Expression}}
{{Notes}}

Порожні зворотні сторони

Для створення картки розглядається лише лицьова сторона картки. Наприклад, якщо у вас є передній шаблон:

{{Field 1}}

та зворотний шаблон:

{{Field 2}}

Тоді картку буде згенеровано, якщо Field 1 не порожнє. Якщо Field 2 порожнє, картку все одно буде згенеровано, і ви отримаєте порожню зворотну сторону.

Якщо хочете уникнути порожньої зворотної сторони, вам потрібно буде розмістити обов’язкове поле на передньому шаблоні як умовне, наприклад:

{{#Field 2}}
    {{Field 1}}
{{/Field 2}}

Це забезпечить створення картки, лише якщо Field 2 і Field 1 непорожні.

Обмеження в старіших версіях Anki

Наступні обмеження не застосовуються до Anki 2.1.28+ і AnkiMobile 2.0.64+.

Старіші версії Anki не можуть використовувати заперечені умови для створення карток. Наприклад, в Anki 2.1.28 наступне додає картку, якщо поле AddIfEmpty порожнє, а Front непорожнє:

{{^AddIfEmpty}}
    {{Front}}
{{/AddIfEmpty}}

У попередніх версіях Anki заперечена умова ігнорується, а генерація карток залежатиме лише від того, що Front не порожній.

Змішування умов AND та OR також може спричинити проблеми в старіших версіях. Наприклад, таке ("додайте картку, якщо A OR B OR C не порожнє") підходить:

{{A}}
{{B}}
{{C}}

І наступне ("додайте картку, якщо A AND B AND C не порожні") підходить:

{{#A}}
    {{#B}}
        {{#C}}
            {{A}}
        {{/C}}
    {{/B}}
{{/A}}

Але наступне ("додайте картку, якщо A OR (B AND* C) непорожні") не працюватиме належним чином:

{{A}}
{{#B}}
    {{#C}}
        {{B}}
    {{/C}}
{{/B}}

Додавання порожніх нотаток

Коли ви додаєте нову нотатку в Anki 2.1.28+ і AnkiMobile 2.0.64+, якщо разом шаблони карток і поля нотаток не створюють карток, буде створено порожню картку за допомогою першого шаблону. Це дозволяє додавати матеріал, навіть якщо він є неповним, і змініть його або шаблон пізніше, щоб зробити його дійсним. Якщо ви цього не зробите бажаєте залишити порожню нотатку, ви можете видалити її за допомогою функції «Порожні картки».

У старіших версіях Anki Anki відмовляється додавати або імпортувати нотатку, якщо картки не генеруються.

Шаблони Приховування

Будь ласка, ознайомтеся з розділом cloze deletion для отримання загальної інформації.

Тип нотаток cloze(приховування) працює інакше, ніж звичайні типи нотаток. Замість налаштованої кількості типів карток, він має один тип, який використовується для всіх видалень cloze в нотатці.

Як згадувалося у розділі про генерацію карток, генерація звичайних карток залежить від того, чи є одне або кілька полів у питанні не пустими. Нотатки типу cloze генеруються інакше:

  • Anki перевіряє фронтальний шаблон на наявність одного або кількох замін cloze, таких як {{cloze:FieldName}}.

  • Потім він перевіряє поле FieldName на наявність всіх посилань cloze, таких як {{c1::text}}.

  • Для кожного окремого номера буде згенеровано картку.

Оскільки генерація карток функціонує інакше для карток з видаленням cloze, теги {{cloze:…​}} не можуть бути використані з звичайним типом нотаток — вони правильно функціонують тільки з типом нотаток cloze.

Умовна генерація надає спеціальне поле, щоб ви могли перевірити, яку картку ви відображаєте. Якщо ви хочете відобразити поле "hint1" на першій картці cloze, а поле "hint2" на другій картці cloze, ви можете використати наступний шаблон:

{{cloze:Text}}

{{#c1}}
    {{Hint1}}
{{/c1}}

{{#c2}}
    {{Hint2}}
{{/c2}}