You can search through the page in your web browser,
  • just press Ctrl+F

  • type your word

  • and hit Enter

  • push F3 to find next

Tip You can download this page in zip file zip ~3M
and read it from your disk.
 
Also you can install addon ' Anki Guides offline 2086742987
and open this compilation offline
in your default web browser
from Anki menu HelpAnki 2.0 Guides (local, EN)

 

Getting Help

Translations

Before Asking

Before asking for help, please have a look in the manual. The top of the manual provides some links to some short intro videos that address some common topics.

If the intro videos do not address your issue, please try searching the manual with your browser’s find command (Ctrl+F, or on a Mac, Command+F).

Support & Community Discussion

If you were unable to find what you needed in the manual, have a bug report or a suggestion, please visit the relevant site:

Please don’t forget to be polite! We understand it can be frustrating when you can’t find what you’re looking for quickly, but please resist the temptation to take out your frustration on us. The majority of the questions we answer are from people who have not contributed to Anki, so it is mostly volunteer work. As the adage goes, "you can catch more flies with honey than with vinegar", and if you’re polite and courteous, we’re much more likely to answer your questions or go the extra mile to help you out.

 


2017-12-04

The content here is distributed under the CC BY-SA license:
creativecommons.org/licenses/by-sa/4.0/

 

Support Anki

 

AnkiWeb About

AnkiWeb is a free companion to the computer version of Anki. AnkiWeb can be used to review online when you don’t have access to your home computer, and can be used to keep your cards synchronized across multiple machines.

AnkiWeb is intended to be used in conjunction with the computer version of Anki. While it is possible to create basic text-only cards and review them using only AnkiWeb, to download shared decks, take advantage of multimedia features and so on, you will need to use the free computer version as well. If you have not used Anki before, please start with the computer version.

Support Anki

Anki started as a hobby project back in 2006, and has gradually grown into a full time job. I provide Anki and AnkiWeb for free because I know there are struggling students out there, but I also need to put food on the table. To raise money for development costs and AnkiWeb hosting fees, I have created an optional extra that you can purchase in order to support Anki’s continued development.

AnkiMobile

If you have an Apple device, purchasing AnkiMobile is a great way to study on the go, and your purchase will help support Anki. More info is available on the AnkiMobile website.

Other Methods

We would like to offer other options to support Anki in the future, but unfortunately don’t have an ETA at this stage. In the mean time, you can support Anki by telling your friends about it!

Contact

Please post any Anki-related questions, bug reports and suggestions on the support site.

The support site does not require you to register, provides automatic suggestions to commonly asked questions, and is manned by both me and a part time assistant, ensuring you get an answer as quickly as possible.

Posts are public by default, but your email address will not be shown. If you need to contact us privately for some reason (we will never ask for your password), you can tick the private box when creating a post, or post on this category.

Please note that AnkiDroid is run by a separate group of people, so it uses a different support site.

Not about Anki?

Due to the spam I was getting, I no longer publish my email address on the web. If you need to contact me about something that’s not related to Anki, please post a private message here, and I’ll get back to you.

 


 

Anki 2.0 User Manual

Intro Videos

If YouTube is blocked in your country, you can download the videos instead.

Also you can download english subtitles  .zip in .srt-files for these videos.

Translations

This page translated into other languages:

These translations are contributed by volunteers. If you would like to help translate the manual into a different language, or you would like to look at the translations that are currently in progress, please see the translating the manual section.

Introduction

Anki is a program which makes remembering things easy. Because it is a lot more efficient than traditional study methods, you can either greatly decrease your time spent studying, or greatly increase the amount you learn.

Anyone who needs to remember things in their daily life can benefit from Anki. Since it is content-agnostic and supports images, audio, videos and scientific markup (via LaTeX), the possibilities are endless. For example:

  • learning a language

  • studying for medical and law exams

  • memorizing people’s names and faces

  • brushing up on geography

  • mastering long poems

  • even practicing guitar chords!

There are two simple concepts behind Anki: 'active recall testing' and 'spaced repetition'. They are not known to most learners, despite having been written about in the scientific literature for many years. Understanding how they work will make you a more effective learner.

Active Recall Testing

'Active recall testing' means being asked a question and trying to remember the answer. This is in contrast to 'passive study', where we read, watch or listen to something without pausing to consider if we know the answer. Research has shown that active recall testing is far more effective at building strong memories than passive study. There are two reasons for this:

  • The act of recalling something 'strengthens' the memory, increasing the chances we’ll be able to remember it again.

  • When we’re unable to answer a question, it tells us we need to return to the material to review or relearn it.

You have probably encountered active recall testing in your school years without even realizing it. When good teachers give you a series of questions to answer after reading an article, or make you take weekly progress-check tests, they are not doing it simply to see if you understood the material or not. By testing you, they are increasing the chances you will be able to remember the material in the future.

A good way to integrate active recall testing into your own studies is to use 'flashcards'. With traditional paper flashcards, you write a question on one side of a card, and the answer on the other side. By not turning the card over until you’ve thought about the answer, you can learn things more effectively than passive observation allows.

Use It or Lose It

Our brains are efficient machines, and they rapidly discard information that doesn’t seem useful. Chances are that you don’t remember what you had for dinner on Monday two weeks ago, because this information is not usually useful. If you went to a fantastic restaurant that day and spent the last two weeks telling people about how great it was, however, you’re likely to still remember in vivid detail.

The brain’s “use it or lose it” policy applies to everything we learn. If you spend an afternoon memorizing some science terms, and then don’t think about that material for two weeks, you’ll probably have forgotten most of it. In fact, studies show we forget about 75% of material learnt within a 48 hour period. This can seem pretty depressing when you need to learn a lot of information.

The solution is simple, however: 'review'. By reviewing newly-learnt information, we can greatly reduce forgetting.

The only problem is that traditionally review was not very practical. If you are using paper flashcards, it’s easy to flick through all of them if you only have 30 of them to review, but as the number grows to 300 or 3000, it quickly becomes unwieldy.

Spaced Repetition

The 'spacing effect' was reported by a German psychologist in 1885. He observed that we tend to remember things more effectively if we spread reviews out over time, instead of studying multiple times in one session. Since the 1930s there have been a number of proposals for utilizing the spacing effect to improve learning, in what has come to be called 'spaced repetition'.

One example is in 1972, when a German scientist called Sebastian Leitner popularized a method of spaced repetition with paper flashcards. By separating the paper cards up into a series of boxes, and moving the cards to a different box on each successful or unsuccessful review, it was possible to see at a glance a rough estimate of how well a card was known and when it should be reviewed again. This was a great improvement over a single box of cards, and it has been widely adopted by computerized flashcard software. It is a rather rough approach however, as it can’t give you an exact date on which you should review something again, and it doesn’t cope very well with material of varying difficulty.

The biggest developments in the last 30 years have come from the authors of SuperMemo, a commercial flashcard program that implements spaced repetition. SuperMemo pioneered the concept of a system that keeps track of the ideal time to review material and optimizes itself based on the performance of the user.

In SuperMemo’s spaced repetition system, every time you answer a question, you tell the program how well you were able to remember it – whether you forgot completely, made a small mistake, remembered with trouble, remembered easily, etc. The program uses this feedback to decide the optimal time to show you the question again. Since a memory gets stronger each time you successfully recall it, the time between reviews gets bigger and bigger – so you may see a question for the first time, then 3 days later, 15 days later, 45 days later, and so on.

This was a revolution in learning, as it meant material could be learnt and retained with the absolute minimum amount of effort necessary. SuperMemo’s slogan sums it up: with spaced repetition, you can 'forget about forgetting'.

Why Anki?

While there is no denying the huge impact SuperMemo has had on the field, it is not without its problems. The program is often criticized for being buggy and difficult to navigate. It only runs on Windows computers. It’s proprietary software, meaning end-users can’t extend it or access the raw data. And while very old versions are made available for free, they are quite limited for modern use.

Anki addresses these issues. There are free clients for Anki available on many platforms, so struggling students and teachers with budgetary constraints are not left out. It’s open source, with an already flourishing library of add-ons contributed by end-users. It’s multi-platform, running on Windows, Mac OSX, Linux/FreeBSD, and some mobile devices. And it’s considerably easier to use than SuperMemo.

Internally, Anki’s spaced repetition system is based on an older version of the SuperMemo algorithm called SM2. Subsequent versions have managed to squeeze out a little more learning efficiency, but they come at the cost of greatly increased complexity, and they are more susceptible to scheduling errors in real-world use. For a more in-depth discussion of this and the differences in scheduling algorithms, see the appropriate section in the FAQ.

The Basics

Cards

A question and answer pair is called a 'card'. This is based on a paper flashcard with a question on one side and the answer on the back. In Anki a card doesn’t actually look like a physical card, and when you show the answer the question remains visible by default. For example, if you’re studying basic chemistry, you might see a question like:

Q: Chemical symbol for oxygen?

After thinking about it, and deciding the answer is O, you click the show answer button, and Anki shows you:

Q: Chemical symbol for oxygen?
A: O

After confirming that you are correct, you can tell Anki how well you remembered, and Anki will choose a next time to show you again.

Decks

A 'deck' is a group of cards. You can place cards in different decks to study parts of your card collection instead of studying everything at once. Each deck can have different settings, such as how many new cards to show each day, or how long to wait until cards are shown again.

Decks can contain other decks, which allows you to organize decks into a tree. Anki uses “::” to show different levels. A deck called “Chinese::Hanzi” refers to a “Hanzi” deck, which is part of a “Chinese” deck. If you select “Hanzi” then only the Hanzi cards will be shown; if you select “Chinese” then all Chinese cards, including Hanzi cards, will be shown.

To place decks into a tree, you can either name them with “::” between each level, or drag and drop them from the deck list. Decks that have been nested under another deck (that is, that have at least one “::” in their names) are often called 'subdecks', and top-level decks are sometimes called 'superdecks' or 'parent decks'.

Anki starts with a deck called “default”; any cards which have somehow become separated from other decks will go here. Anki will hide the default deck if it contains no cards and you have added other decks. Alternatively, you may rename this deck and use it for other cards.

Decks are best used to hold broad categories of cards, rather than specific topics such as “food verbs” or “lesson 1”. For more info on this, please see the using decks appropriately section.

For information on how decks affect the order cards are displayed in, please see the display order section.

Notes & Fields

When making flashcards, it’s often desirable to make more than one card that relates to some information. For example, if you’re learning French, and you learn that the word “bonjour” means “hello”, you may wish to create one card that shows you “bonjour” and asks you to remember “hello”, and another card that shows you “hello” and asks you to remember “bonjour”. One card is testing your ability to recognize the foreign word, and the other card is testing your ability to produce it.

When using paper flashcards, your only option in this case is to write out the information twice, once for each card. Some computer flashcard programs make life easier by providing a feature to flip the front and back sides. This is an improvement over the paper situation, but there are two major downsides:

  • Because such programs don’t track your performance of recognition and production separately, cards will tend not to be shown to you at the optimum time, meaning you forget more than you’d like, or you study more than is necessary.

  • Reversing the question and answer only works when you want exactly the same content on each side. This means it’s not possible to display extra info on the back of each card for example.

Anki solves these problems by allowing you to split the content of your cards up into separate pieces of information. You can then tell Anki which pieces of information you want on each card, and Anki will take care of creating the cards for you and updating them if you make any edits in the future.

Imagine we want to study French vocabulary, and we want to include the page number on the back of each card. We want our cards to look like this:

Q: Bonjour
A: Hello
   Page #12

And:

Q: Hello
A: Bonjour
   Page #12

In this example, we have three pieces of related information: a French word, an English meaning, and a page number. If we put them together, they’d look like this:

French: Bonjour
English: Hello
Page: 12

In Anki, this related information is called a 'note', and each piece of information is called a 'field'. So we can say that this type of note has three fields: French, English, and Page.

To add and edit fields, click the “Fields…​” button while adding or editing notes. For more information on fields, please see the Customizing Fields section.

Card Types

In order for Anki to create cards based on our notes, we need to give it a blueprint that says which fields should be displayed on the front or back of each card. This blueprint is called a 'card type'. Each type of note can have one or more card types; when you add a note, Anki will create one card for each card type.

Each card type has two 'templates', one for the question and one for the answer. In the above French example, we wanted the recognition card to look like this:

Q: Bonjour
A: Hello
   Page #12

To do this, we can set the question and answer templates to:

Q: {{French}}
A: {{English}}<br>
   Page #{{Page}}

By surrounding a field name in double curly brackets, we tell Anki to replace that section with the actual information in the field. Anything not surrounded by curly brackets remains the same on each card. (For instance, we don’t have to type “Page #” into the Page field when adding material – it’s added automatically to every card.) <br> is a special code that tells Anki to move to the next line; more details are available in the templates section.

The production card templates work in a similar way:

Q: {{English}}
A: {{French}}<br>
   Page #{{Page}}

Once a card type has been created, every time you add a new note, a card will be created based on that card type. Card types make it easy to keep the formatting of your cards consistent and can greatly reduce the amount of effort involved in adding information. They also mean Anki can ensure related cards don’t appear too close to each other, and they allow you to fix a typing mistake or factual error once and have all the related cards updated at once.

To add and edit card types, click the “Cards…​” button while adding or editing notes. For more information on card types, please see the Cards and Templates section.

Note Types

Anki allows you to create different types of notes for different material. Each type of note has its own set of fields and card types. It’s a good idea to create a separate note type for each broad topic you’re studying. In the above French example, we might create a note type called “French” for that. If we wanted to learn capital cities, we could create a separate note type for that as well, with fields such as “Country” and “Capital City”.

When Anki checks for duplicates, it only compares other notes of the same type. Thus if you add a capital city called “Orange” using the capital city note type, you won’t see a duplicate message when it comes time to learn how to say “orange” in French.

When you create a new collection, Anki automatically adds some standard note types to it. These note types are provided to make Anki easier for new users, but in the long run it’s recommended you define your own note types for the content you are learning. The standard note types are as follows:

Basic

Has Front and Back fields, and will create one card. Text you enter in Front will appear on the front of the card, and text you enter in Back will appear on the back of the card.

Basic (and reversed card)

Like Basic, but creates two cards for the text you enter: one from front→back and one from back→front.

Basic (optional reversed card)

This is a front→back card, and optionally a back→front card. To do this, it has a third field called “Add Reverse.” If you enter any text into that field, a reverse card will be created. More information about this is available in the Cards and Templates section.

Cloze

A note type which makes it easy to select text and turn it into a cloze deletion (e.g., “Man landed on the moon in […​]” → “Man landed on the moon in 1969”). More information is available in the cloze deletion section.

To add your own note types and modify existing ones, you can use Tools → Manage Note Types.

Note Notes and note types are common to your whole collection rather than limited to an individual deck. This means you can use many different types of notes in a particular deck, or have different cards generated from a particular note in different decks. When you add notes using the Add window, you can select what note type to use and what deck to use, and these choices are completely independent of each other. You can also change the note type of some notes after you’ve already created them.

Collection

Your 'collection' is all the material stored in Anki – your cards, notes, decks, note types, deck options, and so on.

Adding Material

Downloading Shared Decks

The easiest way to get started with Anki is to download a deck of cards someone has shared:

  1. Click the “Get Shared” button at the bottom of the deck list.

  2. When you’ve found a deck you’re interested in, click the “Download” button to download a deck package.

  3. Double-click on the downloaded package to load it into Anki, or File→Import it.

Please note that it’s not currently possible to add shared decks directly to your AnkiWeb account. You need to import them with the desktop program, then synchronize to upload them to AnkiWeb.

Please see sharing decks for info on sharing your own decks with others.

Self-made versus pre-made

Creating your own deck is the most effective way to learn a complex subject. Subjects like languages and the sciences can’t be understood simply by memorizing facts — they require explanation and context to learn effectively. Furthermore, inputting the information yourself forces you to decide what the key points are, leading to a better understanding.

If you are a language learner, you may be tempted to download a long list of words and their translations, but this won’t teach you a language any more than memorizing scientific equations will teach you astrophysics. To learn properly, you need textbooks, teachers, or exposure to real-world sentences.

Do not learn if you do not understand.
--SuperMemo

Most shared decks are created by people who are learning material outside of Anki – from textbooks, classes, TV, etc. They select the interesting points from what they learn and put them into Anki. They make no effort to add background information or explanations to the cards, because they already understand the material. So when someone else downloads their deck and tries to use it, they’ll find it very difficult as the background information and explanations are missing.

That is not to say shared decks are useless – simply that for complex subjects, they should be used as a 'supplement' to external material, not as a 'replacement' for it. If you’re studying textbook ABC and someone has shared a deck of ideas from ABC, that’s a great way to save some time. And for simple subjects that are basically a list of facts, such as capital city names or pub quiz trivia, you probably don’t need external material. But if you attempt to study complex subjects without external material, you will probably meet with disappointing results.

Adding Cards and Notes

Recall from the basics that in Anki we add notes rather than cards, and Anki creates cards for us. Click 'Add' in the main window, and the Add Notes window will appear.

The top left of the window shows us the current note type. If it does not say “Basic,” then you may have added some note types when you downloaded a shared deck. The text below assumes that “Basic” is selected.

The top right of the window shows us the deck cards will be added to. If you’d like to add cards to a new deck, you can click on the deck name button and then click “Add”.

Below the note type, you’ll see some buttons, and an area labeled “Front” and “Back”. Front and Back are called 'fields', and you can add, remove and rename them by clicking the “Fields…​” button above.

Below the fields is another area labelled “Tags”. Tags are labels that you can attach to your notes, to make organizing and finding notes easier. You can leave the tags blank if you wish, or add one or more of them. Tags are separated by a space. If the tags area says

vocab check_with_tutor

…​then the note you add would have two tags.

When you’ve entered text into the front and back, you can click the “Add” button or press Ctrl+Enter (Command+Enter on a Mac) to add the note to your collection. When you do so, a card will be created as well, and placed into the deck you chose. If you’d like to edit a card you added, you can click the history button to search for a recently added card in the browser.

Anki checks the first field for uniqueness, so it will warn you if you enter two cards with a Front field of “apple” (for example). The uniqueness check is limited to the current note type, so if you’re studying multiple languages, two cards with the same Front would not be listed as duplicates as long as you had a different note type for each language.

Anki doesn’t check for duplicates in other fields automatically for efficiency reasons, but the browser has a “Find Duplicates” function which you can run periodically.

For more information on the buttons between the note type and the fields, please see the editor section.

Best Practices

Different people like to review in different ways, but there are some general concepts to keep in mind. An excellent introduction is this article on the SuperMemo site. In particular:

  • Keep it simple: The shorter your cards, the easier they are to review. You may be tempted to include lots of information “just in case,” but reviews will quickly become painful.

  • Don’t memorize without understanding: If you’re studying a language, try to avoid large lists of words. The best way to learn languages is in context, which means seeing those words used in a sentence. Likewise, imagine you’re studying a computer course. If you attempt to memorize the mountain of acronyms, you’ll find it very difficult to make progress. But if you take the time to understand the concepts behind the acronyms, learning the acronyms will become a lot easier.

Adding a Note Type

While basic note types are sufficient for simple cards with only a word or phrase on each side, as soon as you find yourself wanting to include more than one piece of information on the front or back, it’s better to split that information up into more fields.

You may find yourself thinking "but I only want one card, so why can’t I just include the audio, a picture, a hint and the translation in the Front field?" If you’d prefer to do that, that’s fine. But the disadvantage of that approach is that all the information is stuck together. If you wanted to sort your cards by the hint, you wouldn’t be able to do that as it’s mixed in with the other content. You also wouldn’t be able to do things like move the audio from the front to the back, except by laboriously copying and pasting it for every note. By keeping content in separate fields, you make it much easier to adjust the layout of your cards in the future.

To create a new type of note, choose Tools → Manage Note Types. Then click “Add” to add a new type of note. You’ll now see another screen that gives you a choice of note types to base the new type on. “Add” means to base the newly created type on one that comes with Anki. “Clone” means to base the newly created type on one that is already in your collection. For instance, if you’d created a French vocab type already, you might want to clone that when creating a German vocab type.

After choosing OK, you’ll be asked to name the new type. The subject material you’re studying is a good choice here – things like “Japanese”, ”Trivia”, and so on. Once you’ve chosen a name, close the Note Types window, and you’ll return to the adding window.

Customizing Fields

To customize fields, click the “Fields…​” button when adding or editing a note, or while the note type is selected in the Manage Note Types window.

You can add, remove, or rename fields by clicking the appropriate buttons. To change the order in which the fields appear in this dialog and the add notes dialog, you can use the reposition button, which asks for the numerical position you want the field to have. So if you want to change a field to be the new first field, enter “1”.

Note Do not use 'Tags', 'Type', 'Deck', 'Card', or 'FrontSide' as field names, as they are special fields and will not work properly.

The options at the bottom of the screen allow you to edit various properties of the fields to be used when adding and editing the cards. This is 'not' where you customize what appears on your cards when reviewing; for that, please see templates.

Editing Font allows you to customize the font and size used when editing notes. This is useful if you want to make unimportant information smaller, or increase the size of foreign characters which are hard to read. The changes you make here do not affect how cards appear when reviewing: to do that, please see the templates section. If you have enabled the “type in the answer” function, however, the text you type will use the font size defined here. (For information about how to change the actual font face when typing the answer, please see the checking your answer section.)

Sort by this field…​ tells Anki to show this field in the Sort Field column of the browser. You can use this to sort cards by that field. Only one field can be the sort field at once.

When Remember last input…​ is checked, Anki will not clear out this field’s content after a note is added. If you find yourself entering the same content into multiple notes, you may find this useful.

Reverse text direction is useful if you are studying languages that display text from right to left (RTL), such as Arabic or Hebrew. This setting currently only controls editing; to make sure the text displays correctly during review, you’ll need to adjust your template.

After you’ve added fields, you’ll probably want to add them to the front or back of your cards. For more information on that, please see the templates section.

Changing Deck / Note Type

While adding, you can click on the top left button to change note type, and the top right button to change deck. The window that opens up will not only allow you to select a deck or note type, but also to add new decks or manage your note types.

Using Decks Appropriately

Decks are designed to divide your content up into broad categories that you wish to study separately, such as English, Geography, and so on. You may be tempted to create lots of little decks to keep your content organized, such as “my geography book chapter 1”, or “food verbs”, but this is not recommended, for the following reasons:

  • Lots of little decks mean you end up reviewing cards in a recognizable order. Whether it’s because you’re clicking on each deck in turn (which is slow) or you’ve added a number of decks under a single parent deck, you’ll end up seeing all the “chapter 1” or “food verb” cards together. This makes it easier to answer the cards, as you can guess them from the context, which leads to weaker memories. When you need to recall the word or phrase outside Anki, you won’t have the luxury of being shown related content first!

  • Anki was not designed to handle many decks (more than several dozen), and it will slow down as you add more – especially if you’re studying on a mobile client. A few extra decks is not going to make a noticeable difference, but if you have many decks the delays will start to add up.

Instead of creating lots of little decks, it’s a better idea to use tags and/or fields to classify your content. Instead of creating a “food verbs” decks for example, you could add those cards to your main language study deck, and tag the cards with “food” and “verb”. Each card can have multiple tags, which means you can do things like search for all verbs, or all food-related vocabulary, or all verbs that are related to food.

For those who like to stay very organized, you can add fields to your notes to classify your content, such as “book”, “page”, and so on. Anki supports searching in specific fields, which means you can do a search for “book:'my book' page:63” and immediately find what you’re looking for.

Anki’s custom study and filtered deck features make this especially powerful, as you can create temporary decks out of search terms. This allows you to review your content mixed together in a single deck most of the time (for optimum memory), but also create temporary decks when you need to focus on particular material, such as before a test. The general rule is that if you always want to be able to study some content separately, it should be in a normal deck, and if you only occasionally need to be able to study it separately (for a test, when under a backlog, etc), tags/fields and filtered decks are better.

Studying

When you have found a deck you like or entered some notes in, it’s time to start studying.

Decks

Study in Anki is limited to the currently selected deck as well as any subdecks it contains.

On the decks screen, your decks will be displayed in a list. There are two number columns, 'due' and 'new'. 'Due' is the count of waiting reviews and cards currently in learning. 'New' is the number of new cards that are ready to be learnt that day.

When you click on a deck, it will become the 'current deck', and Anki will change to the study screen. You can return to the deck list to change the currently selected deck at any time by clicking on “Decks” at the top of the main window. (You can also use the Study Deck feature to select a new deck from the keyboard, or you can press the ‘s’ key to study the currently selected deck.)

You can click the gears button to the right of a deck to rename or delete a deck, change its options, or export it.

When a deck has subdecks, the cards will appear from each deck in turn.

Study Overview

After clicking on a deck to study, you’ll see a screen that shows you how many cards are due today. This is called the 'deck overview' screen. The cards are split into three types:

  • New refers to cards that you have downloaded or entered in, but have never been studied before.

  • Learning refers to cards that were seen for the first time recently, and are still being learnt.

  • To Review refers to cards that were previously learnt, and now need to be reviewed so you don’t forget them.

To start a study session, click the Study Now button. Anki will proceed to show you cards until the cards to be shown for the day have run out.

While studying, you can return to the overview by pressing the “s” key on your keyboard.

Questions

When a card is shown, only the question is shown at first. After thinking about the answer, either click the Show Answer button, or press the spacebar. The answer will then be shown. It’s okay if it takes you a little while to recall the answer, but as a general rule if you can’t answer within about 10 seconds, it’s probably better to give up and show the answer than keep struggling to remember.

When the answer is shown, you should compare the answer you thought of with the answer which is shown and tell Anki how well you remembered. If you don’t trust yourself to compare your answer accurately, you can ask Anki to prompt you to type in the answer rather than just showing it to you.

The number of buttons available for grading depends on whether the card is being 'learnt' or 'reviewed'.

Learning

When learning new cards, or when relearning cards that you have forgotten, Anki will show you the cards one or more times to help you memorize them. Each time is called a 'learning step'. By default there are two steps: 1 minute and 10 minutes. You can change the number of steps and the delays between them in the deck options.

There are three rating buttons when learning:

Again moves the card back to the first step.

Good moves the card to the next step. If the card was on the final step, the card is converted into a review card (it 'graduates'). By default, once the card has reached the end of the learning steps, the card will be shown again the next day, then at increasingly long delays (see the next section).

Easy immediately converts the card into a review card, even if there were steps remaining. By default, the card will be shown again 4 days later, and then at increasingly long delays. The easy button will not be shown if you are in relearning mode and it would give the same interval as “good.”

When cards are seen for the first time, they start at step one. This means answering Good on a card for the first time will show it one more time in 10 minutes, and the initial 1 minute step will be skipped. If you push Again, though, the card will come back in 1 minute.

You can use the 1, 2 and 3 keys on your keyboard to select a particular button, where 1 is Again. Pressing the spacebar will select Good.

If there are no other cards to show you, Anki will show learning cards again even if their delay has not elapsed completely. If you’d prefer to wait the full learning delay, you can change this behaviour in the preferences.

Reviewing

When a card has been previously learnt and is ready to be reviewed again, there are four buttons to rate your answer:

Again marks your answer as incorrect and asks Anki to show the card more frequently in the future. The card is said to have 'lapsed'. Please see the lapses section for more information about how lapsed reviews are handled.

Hard shows the card at a slightly longer delay than last time, and tells Anki to show the card more frequently in the future.

Good tells Anki that the last delay was about right, and the card easiness doesn’t need to be adjusted down or up. At the default starting easiness, the card will be shown again approximately 2 1/2 times longer than the previous time, so if you had waited 10 days to see the card previously, the next delay would be about 25 days.

Easy tells Anki you found the delay too short. The card will be scheduled further into the future than 'Good', and Anki will schedule the card less frequently in the future. Because 'Easy' rapidly increases the delay, it’s best used for only the easiest of cards. Usually you should find yourself answering 'Good' instead.

As with learning cards, you can use 1-4 on the keyboard to select an answer. Pressing the spacebar will select 'Good'.

Due Counts and Time Estimates

When only the question is shown, Anki shows three numbers like 12 + 34 + 56 at the bottom of the screen. These represent the new cards, cards in learning, and cards to review. If you’d prefer not to see the numbers, you can turn them off in Anki’s preferences.

Note The numbers count 'reviews' needed to finish all the cards in that queue, not the number of 'cards'. If you have multiple steps configured for lapsed cards, the number will increase by more than one when you fail a card, since that card needs to be shown several times.

When the answer is shown, Anki shows an estimate of the next time a card will be shown above each button. If you’d prefer not to see the estimates, you can disable them in Anki’s preferences.

Note Anki additionally adds a small amount of random variation to the next due times, in order to prevent cards that were introduced together and always rated the same from always staying next to each other. This variation is not shown on the time estimates but will be applied after selecting the button.

Editing and More

You can click the Edit button in the bottom left to edit the current note. When you finish editing, you’ll be returned to study. The editing screen works very similarly to the add notes screen.

At the bottom right of the review screen is a button labeled More. This button provides some other operations you can do on the current card or note:

Mark Note

Adds a “marked” tag to the current note, so it can be easily found in the browser. This is useful when you want to take some action on the note at a later date, such as looking up a word when you get home. Marked cards also show a small star in the upper-right-hand corner during reviews.

Bury Card / Note

Hides a card or all of the note’s cards from review until the next day. (If you want to unbury cards before then, you can click the “unbury” button on the deck overview screen.) This is useful if you cannot answer the card at the moment or you want to come back to it another time. Burying can also happen automatically for cards of the same note. If cards were in learning when they are buried, they are moved back to the new card queue or review queue prior to being buried.

Suspend Card / Note

Hides a card or all of the note’s cards from review until they are manually unsuspended (by clicking the suspend button in the browser). This is useful if you want to avoid reviewing the note for some time, but don’t want to delete it. If cards were in learning when they are suspended, they are moved back to the new card queue or review queue prior to being suspended.

Delete Note

Deletes the note and all of its cards.

Options

Edit the options for the current deck.

Replay Audio

If the card has audio on the front or back, play it again.

Record Own Voice

Record from your microphone for the purposes of checking your pronunciation. This recording is temporary and will go away when you move to the next card. If you want to add audio to a card permanently, you can do that in the edit window.

Replay Own Voice

Replay the previous recording of your voice (presumably after showing the answer).

Display Order

Studying will show cards from the selected deck and any decks it contains. Thus, if you select your “French” deck, the subdecks “French::Vocab” and “French::My Textbook::Lesson 1” will be shown as well.

For new cards and reviews, Anki fetches cards from the decks in alphabetical order. So in the above example, you would get cards first from “French”, then “My Textbook”, and finally “Vocab”. You can use this to control the order cards appear in, placing high priority cards in decks that appear higher in the list. When computers sort text alphabetically, the “-” character comes before alphabetical characters, and “\~” comes after them. So you could call the deck “-Vocab” to make them appear first, and you could call the other deck “~My Textbook” to force it to appear after everything else.

New cards and reviews are fetched separately, and Anki won’t wait until both queues are empty before moving on to the next deck, so it’s possible you’ll be exposed to new cards one deck while seeing reviews from another deck, or vice versa. If you don’t want this, click directly on the deck you want to study instead of one of the parent decks.

Since cards in learning are somewhat time-critical, they are fetched from all decks at once and shown in the order they are due.

To control the order reviews from a given deck appear in, or change new cards from ordered to random order, please see the deck options. For more fine-grained ordering of new cards, you can change the order in the browser.

Siblings and Burying

Recall from the basics that Anki can create more than one card for each thing you input, such as a front→back card and a back→front card, or two different cloze deletions from the same text. These related cards are called 'siblings'. Anki tries to ensure siblings are not shown close together, as that’s usually not helpful.

When you answer a card that has siblings, Anki prevents the card’s siblings from being shown in the same session by automatically 'burying' them. Buried cards are hidden from review until the clock rolls over to a new day or you manually unbury them using the “Unbury” button that’s visible at the bottom of the deck overview screen. Anki will bury siblings even if the siblings are not in the same deck (for instance, if you use the deck override feature).

Anki will only bury siblings that are new or review cards. It will not hide cards in learning, as time is of the essence for those cards. On the other hand, when you study a learning card, any new/review siblings will be buried.

If you want to see more than one card of a note per day when learning or reviewing cards, you can stop Anki from burying cards in the deck options.

Keyboard Shortcuts

Most of the common operations in Anki have keyboard shortcuts. Most of them are discoverable in the interface: menu items list their shortcuts next to them, and hovering the mouse cursor over a button will generally show its shortcut in a tooltip.

When studying, either space or enter will show the answer. When the answer is shown, you can use space or enter to select the Good button. You can use the 1-4 keys to select a specific ease button. Many people find it convenient to answer most cards with space and keep one finger on 1 for when they forget.

The "Study Deck" item in the Tools menu allows you to quickly switch to a deck with the keyboard. You can trigger it with the '/' key. When opened, it will display all of your decks and show a filter area at the top. As you type characters, Anki will display only decks matching the characters you type. You can add a space to separate multiple search terms, and Anki will show only decks that match all the terms. So “ja 1” or “on1 ja” would both match a deck called “Japanese::Lesson1”.

Falling Behind

If you fall behind in your reviews, Anki will prioritize cards that have been waiting the longest. It does this by taking the 200 cards that have been waiting the longest and showing them to you in a random order up until your daily review limit. This ordering ensures that no cards will be left waiting indefinitely, but it means that if you introduce new cards, their reviews won’t appear until you’ve gotten through your backlog.

If you wish to change the order of the overdue reviews, you can do so by creating a filtered deck.

When you answer cards that have been waiting for a while, Anki factors in that delay when determining the next time a card should be shown. Please see the section on Anki’s spaced-repetition algorithm for more information.

Editing

Features

The editor is shown when adding notes, editing a note during reviews, or browsing.

On the top left are two buttons, which open the fields and cards windows.

On the right are buttons that control formatting. Bold, italic and underline work like they do in a word processing program. The next two buttons allow you to subscript or superscript text, which is useful for chemical compounds like H2O or simple math equations like x2.

The icon with the red X clears any formatting in the currently selected text. This includes colours, bold, etc.

The next button allows you to change text colour.

You can use the paperclip button to select audio, images and videos from your computer’s hard drive to attach to your notes. Alternatively, you can copy the media onto your computer’s clipboard (for instance, by right-clicking an image on the web and choosing 'Copy Image') and paste it into the field that you want to place it in. For more information about media, please see the media section.

The red circle button allows you to record from your computer’s microphone and attach the recording to the note.

The last button allows you to add advanced mathematical markup called LaTeX to your notes or edit the underlying formatting.

Most of the buttons have shortcut keys. You can hover the mouse cursor over a button to see its shortcut. For the LaTeX/HTML menu, use Ctrl+t, then t, e or m to select the three LaTeX types, and Ctrl+Shift+x to edit the HTML.

Cloze Deletion

'Cloze deletion' is the process of hiding one or more words in a sentence. For example, if you have the sentence:

Canberra was founded in 1913.

…​and you create a cloze deletion on “1913”, then the sentence would become:

Canberra was founded in [...].

Sometimes sections that have been removed in this fashion are said to be 'occluded'.

For more information on why you might want to use cloze deletion, see rule number 5 here.

Anki provides a special cloze deletion type of note, to make creating clozes easy. To create a cloze deletion note, select the Cloze note type, and type some text into the "Text" field. Then drag the mouse over the text you want to hide to select it, and click the […​] button. Anki will replace the text with:

Canberra was founded in {{c1::1913}}.

The “c1” part means that you’ve created one cloze deletion on the sentence. You can create more than one deletion if you’d like. For example, if you select Canberra and click […​] again, the text will now look like:

{{c2::Canberra}} was founded in {{c1::1913}}.

When you add the above note, Anki will create two cards. The first card will show:

Canberra was founded in [...].

…​on the question, with the full sentence on the answer. The other card will have the following on the question:

[...] was founded in 1913.

You can also elide multiple sections on the same card. In the above example, if you change c2 to c1, only one card would be created, with both Canberra and 1913 hidden. If you hold down alt (option on a Mac) while creating a cloze, Anki will automatically use the same number instead of incrementing it.

Cloze deletions don’t need to fall on word boundaries, so if you select “anberra” rather than “Canberra” in the above example, the question would appear as “C[…​] was founded in 1913”, giving you a hint.

You can also give yourself hints that don’t match the text. If you replace the original sentence with:

Canberra::city was founded in 1913

…​and then press […​] after selecting "Canberra::city", Anki will treat the text after the two colons as a hint, changing the text into:

{{c1::Canberra::city}} was founded in 1913

When the card comes up for review, it will appear as:

[city] was founded in 1913.

For information on testing your ability to type in a cloze deletion correctly, please see the section on typing answers.

Please note that overlapping clozes are not supported. For example, the following field is invalid:

{{c1::Canberra was {{c2::founded}}}} in 1913

If you need to create clozes from overlapping text, add another Text field to your cloze, add it to the template, and then when creating notes, paste the text into two separate fields, like so:

Text1 field: {{c1::Canberra was founded}} in 1913

Text2 field: {{c2::Canberra}} was founded in 1913

The default cloze note type has a second field called Extra, that is shown on the answer side of each card. It can be used for adding some usage notes or extra information.

The cloze note type is treated specially by Anki, and cannot be created based on a regular note type. If you wish to customize it, please make sure to clone the existing Cloze type instead of another type of note.

Inputting Foreign Characters and Accents

All modern computers have built in support for typing accents and foreign characters, and multiple ways to go about it. The method we recommend is using a keyboard layout for the language you want to learn.

Languages with a separate script like Japanese, Chinese, Thai and so on have their own layouts specifically for that language.

European languages that use accents may have their own layout, but can often by typed on a generic "international keyboard" layout. These work by typing the accent, then the character you want accented - eg an apostrophe (') then the letter a (a) gives á.

To add the international keyboard on Windows machines, please see support.microsoft.com/en-au/kb/306560

Keyboards for a specific language are added in a similar way, but we can not cover them all here. For more information, please try searching Google for "input Japanese on a mac", "type Chinese on Windows 10", and so on.

If you’re learning a right to left language, there are lots of other things to consider. Please see this page for more information.

Note The toolkit Anki is built on has trouble dealing with a few input methods, such as holding down keys to select accented characters on Mac OS X, and typing characters by holding down the alt key and typing a numeric code on Windows.

Cards and Templates

As mentioned in the basics section, Anki creates cards automatically, based on the notes you add. (Please read the basics section if you have not done so already, as the rest of this section assumes that you have read it.)

You can configure the cards Anki should create and what should be shown on them when adding or editing material by clicking on the “Cards…​” button. At the top of the window you’ll see a set of tabs, one for each card type. You can click the plus on the right if you’d like to add another card type to the current note type. Similarly, if you’d like to delete one, you can do so by clicking the X on the tab.

On the top left is the front template, on the bottom left is the back template, and in between them is the card styling section.

In Anki, templates are written in HTML, which is the language that web pages are written in. The styling section is CSS, which is the language used for styling web pages.

On the right is a preview of the front and back of the currently selected card. If you opened the window while adding notes, the preview will be based on the text you had typed into the Add Notes window. If you opened the window while editing a note, the preview will be based on the content of that note. If you opened the window from Tools → Manage Note Types, Anki will display each field’s name in parentheses in place of content.

At the bottom of the window is a More button that gives you options to rename or reorder the cards, as well as the following two options:

  • The 'Deck Override' option allows you to change the deck that cards generated from the current card type will be placed into. By default, cards are placed into the deck you provide in the Add Notes window. If you set a deck here, that card type will be placed into the deck you specified, instead of the deck listed in the Add Notes window. This can be useful if you want to separate cards into different decks (for instance, when studying a language, to put production cards in one deck and recognition cards in another). You can check which deck the cards are currently going to by choosing Deck Override again.

  • The 'Browser Appearance' option allows you to set different (perhaps simplified) templates for display in the Question and Answer columns of the browser; see browser appearance for more information.

Reverse Cards

You can watch a video about reversing cards on YouTube.

If you want to create cards that go in both directions (e.g., both “ookii”→“big” and “big”→“ookii”), you have several options. The simplest is to select the “Basic (and reversed card)” built-in note type. This will generate two cards, one in each direction.

If you want to generate reverse cards for only some of your material (perhaps you only want to take the time to study reverses for the most important material, or some of your cards don’t make sense reversed), you can select the “Basic (optional reversed card)” note type. This note type generates a forward-only card when you fill in only the first two fields; if you additionally enter something in the “Add Reverse” field (like a 'y'), Anki will generate a reverse card as well. The contents of this field will never be displayed on a card.

If you later decide you don’t want a reverse card that you added, you can delete it by removing the text from the “Add Reverse” field. Similarly, if you want to add a reverse card, you can add text to the “Add Reverse” field. If you didn’t select the optional reverse note type to begin with, you can use Edit → Change Note Type in the browser to change it.

Note To avoid loss of scheduling information if you make an editing mistake, Anki does not automatically delete cards after you remove the text from the “add reverse” field. To complete the deletion, run Tools → Empty Cards from the main window.

If you’re using a more complex note type (for instance, one with three cards) and you wish to generate specific cards only in certain situations, please see the conditional replacement section.

Basic Templates

The most basic template looks something like this:

{{Front}}

When you place text within curly brackets, Anki looks for a field by that name, and replaces the text with the actual content of the field. You can include as many fields as you wish.

Note Field names are case sensitive. If you have a field named 'Front', writing {{front}} will not work properly.

Your templates are not limited to a list of fields. You can also include arbitrary text on your templates. For example, if you’re studying capital cities, and you’ve created a note type with a “Country” field, you might create a front template like this:

What's the capital city of {{Country}}?

The default back template will look something like this:

{{FrontSide}}

<hr id=answer>

{{Back}}

This means “show me the text that’s on the front side, then a divider line, and then the Back field”.

The 'id=answer' part tells Anki where the divider is between the question and the answer. This allows Anki to automatically scroll to the spot where the answer starts when you press 'show answer' on a long card (especially useful on mobile devices with small screens). If you don’t want a horizontal line at the beginning of the answer, you can use another HTML element such as a paragraph or div instead.

Checking Your Answer

You can watch a video about this feature on YouTube.

If you’d like to type in the answer and have Anki compare your input to the real answer, you can do so by changing your template. Imagine your front and back templates look like:

{{Native Word}}
{{FrontSide}}

<hr id=answer>

{{Foreign Word}}

To type in the foreign word and check if you are correct, you need to edit your front template so that it looks like this:

{{Native Word}}
{{type:Foreign Word}}

Note that we have added 'type:' in front of the field we want to compare. Since FrontSide is on the back of the card, the type answer box will appear on the back as well. (If you don’t have FrontSide on the back of your card, you will need to add the type directive to the answer side as well.)

When reviewing, Anki will display a text box where you can type in the answer, and upon hitting enter or showing the answer, Anki will show you which parts you got right and which parts you got wrong. The text box’s font size will be the size you configured for that field (via the “Fields” button when editing).

This feature does not change how the cards are answered, so it’s still up to you to decide how well you remembered or not.

Note Only one typing comparison can be used on a card. If you add the above text multiple times, it will not work. It also only supports a single line, so it is not useful for comparing against a field that is comprised on multiple lines.

Anki uses a monospaced font for the answer comparison so that the “provided” and “correct” sections line up. If you wish to override the font, you can put the following at the bottom of your styling section:

code#typeans { font-family: "myfontname"; }

Advanced users can override the default type-answer colours with the css classes 'typeGood', 'typeBad' and 'typeMissed'. At the time of writing, only the computer version of Anki supports these classes.

It is also possible to type in the answer for cloze deletion cards. To do this, add {{type:cloze:Text}} to both the front and back template, so the back looks something like this:

{{cloze:Text}}
{{type:cloze:Text}}
{{Extra}}

Note that since the cloze type does not use FrontSide, this must be added to both sides on a cloze note type.

If there are multiple sections elided, you can separate the answers in the text box with a comma.

Note Type answer boxes will not appear in the preview dialog in the browser. When you review or look at the preview in the card types window, they will display.

Newlines

The template language needs a special command to create a new line. For example, if you wrote the following in the template:

one
two

In the preview, you’d actually see:

one two

To add a new line, you need to add a <br> code to the end of a line, like so:

one<br>
two

The br code stands for "(line) br(eak)".

The same applies for fields. If you want to display two fields, one on each line, you would use

{{Field 1}}<br>
{{Field 2}}

Card Styling

You can watch a video about styling cards on YouTube.

In between the front and back template is the card styling. Here you can change the background colour of the card, the default font, the text alignment, and so on.

Note This is 'not' where you change the font for type answer comparisons, type answer textboxes, or editing textboxes; to learn how to change these fonts, please see the checking your answer and customizing fields sections.

The standard options available to you are:

font-family

The name of the font to use on the card. If your font has spaces in it like "MS Unicode", then you need to surround the font name in double quotes as in this sentence. It is also possible to use multiple fonts on one card; for information on that, please see below.

font-size

The size of the font in pixels. When changing it, make sure you leave px at the end.

text-align

Whether the text should be aligned in the center, left, or right.

color

The color of the text. Simple color names like 'blue', 'lightyellow', and so on will work, or you can use HTML color codes to select arbitrary colors. Please see this webpage for more information.

background-color

The color of the card background.

Any CSS can be placed in the styling section – advanced users may wish to do things like add a background image or gradient, for example. If you’re wondering how to get some particular formatting, please search the web for information about how to do it in CSS, as there is a great deal of documentation available.

The styling is shared between all cards, which means that when you make an adjustment it will affect all cards for that note type. It is also possible to specify card-specific styling, however. The following example will use a yellow background on all cards except the first one:

.card { background-color: yellow; }
.card1 { background-color: blue; }

One other thing to note is that Anki shrinks images to fit the screen by default. You can change this by adding the following to the bottom of your styling section:

img { max-width: none; max-height: none; }

If you try to change the style for images and find that the star that appears on marked cards is affected (for instance, it becomes way too large), you can target it with the following:

img#star { ... }

Field Styling

The default styling applies to the whole card. You can also make certain fields or part of the card use a different font, color, and so on. This is particularly important when studying foreign languages, as Anki will sometimes be unable to correctly display characters unless an appropriate font has been chosen.

Say you have an “Expression” field, and you want to give it the OSX Thai font “Ayuthaya”. Imagine your template already reads:

What is {{Expression}}?

{{Notes}}

What we need to do is wrap the text we want to style in some HTML. We will put the following in front of the text:

<div class=mystyle1>

And the following behind it:

</div>

By wrapping the text like the above, we tell Anki to style the wrapped text with a custom style called “mystyle1”, which we will create later.

Thus if we wanted the entire “What is …​?” expression to use the Thai font, we would use:

<div class=mystyle1>What is {{Expression}}?</div>

{{Notes}}

And if we wanted only the expression field itself to use the Thai font, we’d use:

What is <div class=mystyle1>{{Expression}}</div>?

{{Notes}}

After we’ve edited the template, we now need to move to the Styling section between the templates. Before editing it, it should look something like:

.card {
 font-family: arial;
 font-size: 20px;
 text-align: center;
 color: black;
 background-color: white;
}

Add your new style to the bottom, so it looks like:

.card {
 font-family: arial;
 font-size: 20px;
 text-align: center;
 color: black;
 background-color: white;
}

.mystyle1 {
 font-family: ayuthaya;
}

You can include any styling you want in the style. If you wanted to increase the font size too, you’d change the mystyle1 section to look like:

.mystyle1 {
 font-family: ayuthaya;
 font-size: 30px;
}

It’s also possible to bundle custom fonts with your deck, so you don’t need to install them on your computer or mobile device. Please see the installing fonts section for more info.

Please see the card styling section for more information on the styling options you can use here.

Hint Fields

It’s possible to add a field to the front or back of a card, but make it hidden until you explicitly show it. We call this a 'hint field'. Before adding a hint, please bear in mind that the easier you make it to answer a question in Anki, the less likely you are to remember that question when you encounter it in real life. Please have a read about the 'minimum information principle' on www.supermemo.com/articles/20rules.htm before proceeding.

First, you’ll need to add a field to store the hint in if you have not already. Please see the fields section if you’re not sure how to do this.

Assuming you’ve created a field called MyField, you can tell Anki to include it on the card but hide it by default by adding the following to your template:

{{hint:MyField}}

This will show a link labeled “show hint”; when you click it, the content of the field will be displayed on the card. (If MyField is empty, nothing will be shown.)

If you show the hint on the question and then reveal the answer, the hint will be hidden again. If you want to have the hint always revealed when the answer is shown, you will need to remove {{FrontSide}} from your back template and manually add the fields you wish to appear.

Note It is not currently possible to use a hint field for audio — the audio will play regardless of whether you’ve clicked on the hint link.

If you want to customize the appearance or behaviour, you’ll need to implement the hint field yourself. We can not provide any support for doing so, but the following code should get you started:

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

Special Fields

There are some special fields you can include in your templates:

The note's tags: {{Tags}}

The type of note: {{Type}}

The card's deck: {{Deck}}

The card's subdeck: {{Subdeck}}

The type of card ("Forward", etc): {{Card}}

The content of the front template (only valid in back template): {{FrontSide}}

FrontSide will not include any audio that was on the front side of the card. If you wish to have the same audio play on both the front and back of the card, you’ll need to manually include the audio fields on the back as well.

As with other fields, special field names are case sensitive.

Card Generation & Deletion

Anki will not create cards with empty front sides. Thus if “My Field” was empty, and one card’s front template included only that field, the card would not be created.

If no cards can be created because all of the cards would have empty front sides, then the Add Notes window will warn you and not allow the note to be added until at least one card would be generated.

When you edit a previously added note, Anki will automatically create extra cards if they were previously blank but no longer are. If your edits have made some cards blank when they previously were not, however, Anki will not delete them immediately, as that could lead to accidental data loss. To remove the empty cards, go to Tools → Empty Cards in the main window. You will be shown a list of empty cards and be given the option to delete them.

Because of the way that card generation works, it is not possible to manually delete individual cards (they would just end up being recreated the next time the note was edited). Instead, you should make the relevant conditional replacement fields empty and then use the Empty Cards option. (If you don’t have fields set up to control card generation, please see the sections on reversed cards and selective card generation.) If you need to do this for many notes at once, you can use the find and replace feature in the browser.

Anki does not consider special fields or non-field text for the purposes of card generation. Thus if your front template looked like the following, no card would be generated if Country was empty:

Where is {{Country}} on the map?

Selective Card Generation

Please read the previous section on card generation and deletion before you read this.

Sometimes you may want to generate extra cards for only some of your material, such as testing your ability to recall the most important words of a set. You can accomplish this by adding an extra field to your note, and adding some text into it (such as "1") on the notes you want the extra card. Then in the card template, you can make the card’s creation depend on that field being non-empty. For more information on this, please see the conditional replacement section below.

Media & LaTeX References

Anki does not scan templates for media references, because it is slow to do so. This has implications for including media on the template.

Static Sounds/Images

If you wish to include images or sounds on your cards that are the same for every card (eg, a company logo at the top of each card):

  1. Rename the file so it starts with an underscore, eg "_logo.jpg". The underscore tells Anki that the file is used by the template and it should be exported when sharing the deck.

  2. Add a reference to the media on your front or back template, like:

<img src="_logo.jpg">

Field References

Media references to fields are not allowed. They may or may not display during review, and will not work when checking for unused media, importing/exporting, and so on. Examples that won’t work:

<img src="{{Expression}}.jpg">

[sound:{{Word}}]

[latex]{{Field 1}}[/latex]

Instead, you should include the media references in the field. Please see the importing section for more information.

Conditional Replacement

It is possible to include certain text, fields, or HTML on your cards only if a field is empty or not empty. An example:

This text is always shown.

{{#FieldName}}
This text is only shown if FieldName has text in it
{{/FieldName}}

{{^FieldName}}
This text is only shown if FieldName is empty
{{/FieldName}}

A real life example is only showing a label if the field is not empty:

{{#Tags}}Tags: {{Tags}}{{/Tags}}

Or say you want to display a specific field in blue on the front of your card if there are extra notes on the back (perhaps the fact that there are notes serves as a reminder that you should spend more time thinking about the answer). You can style the field as follows:

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

You can also use conditional replacement to control which cards are generated. This works since Anki will not generate cards which would have a blank front side. For example, consider a card with two fields on the front:

{{Expression}}
{{Notes}}

Normally a card would be generated if either the expression or notes field had text in it. If you only wanted a card generated if expression was not empty, then you could change the template to this:

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

And if you wanted to require both fields, you could use two conditional replacements:

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

Keep in mind that, as mentioned in the card generation section, this only works when you place the conditional replacement code on the 'front' of the card; if you do this on the back, you will simply end up with cards with a blank back side. Similarly, since this works by checking if the front field would be empty, it is important to make sure you wrap the 'entire' front side in the conditional replacement; for instance, the following would not work as expected:

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

The default behaviour can be thought of as an "OR" condition - cards are created if the first field is non-empty, OR the second field is non-empty, and so on. The behaviour above can be thought of as an "AND" condition - cards are created if the first field is non-empty AND the second field is non-empty, and so on.

A caveat: Anki is not currently able to mix AND and OR conditions. Thus the following template, which says "require expression and notes, or field 3", would not work:

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

{{Field 3}}

Another caveat is that negated expressions can not be used to control card generation. That is, wrapping a template in {{^Field}} will not do what you expect.

Cloze Templates

Please see the cloze deletion section for background info.

The cloze note type functions differently from regular note types. Instead of a customizable number of card types, it has a single type which is shared by all cloze deletions on a note.

As mentioned in the card generation section above, generation of regular cards depends on one or more fields on the question being non-empty. Cloze deletion note types are generated differently:

  • Anki looks on the front template for one or more cloze replacements, like {{cloze:FieldName}}

  • It then looks in the FieldName field for all cloze references, like {{c1::text}}

  • For each separate number, a card will be generated.

Because card generation functions differently for cloze deletion cards, {{cloze:…​}} tags can not be used with a regular note type - they will only function properly when used with a cloze note type.

Conditional generation provides a special field so you can check which card you are rendering. If you wanted to display the "hint1" field on the first cloze, and "hint2" field on the second cloze for example, you could use the following template:

{{cloze:Text}}

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

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

Other HTML

Your templates can contain arbitrary HTML, which means that all the layout possibilities used on internet web pages can also be used on your cards. Things like tables, lists, images, links to external pages and so on are all supported. With tables for example, you could change the layout so that the front and back of a card appear on the left and right instead of the top and bottom.

Covering all of HTML’s features is outside the scope of this manual, but there are plenty of good introductory guides to HTML available on the web if you’d like to learn more.

You can also use field replacement to create dictionary links. Imagine you’re studying a language and your favourite online dictionary allows you to search for text using a web URL like:

http://example.com/search?q=myword

You could add an automatic link by doing the following in your template:

{{Expression}}

<a href="http://example.com/search?q={{Expression}}">check in dictionary</a>

The template above would allow you to search for each note’s expression by clicking on the link while reviewing. There is a caveat however, so please see the next section.

HTML Stripping

Like templates, fields are stored in HTML. In the dictionary link example above, if the expression contained the word "myword" without any formatting, then the HTML would be the same: "myword". But when you include formatting in your fields, extra HTML is included. If "myword" was bolded for example, the actual HTML would be "<b>myword</b>".

This can present a problem for things like dictionary links. In the above example, the dictionary link would end up being:

<a href="http://example.com/search?q=<b>myword</b>">check in dictionary</a>

The extra characters in the link would likely confuse the dictionary site, and you’re likely not to get any matches.

To solve this, Anki provides the ability to strip formatting from fields when they are replaced. If you prefix a field name with text:, Anki will not include any formatting. So a dictionary link that worked even with formatted text would be:

<a href="http://example.com/search?q={{text:Expression}}">check in dictionary</a>

Browser Appearance

If your card templates are complex, it may be difficult to read the question and answer columns (called "Front" and "Back") in the card list. The "browser appearance" option allows you to define a custom template to be used only in the browser, so you can include only the important fields and change the order if you desire. The syntax is the same as in standard card templates.

RTL (right to left) text

If you’re learning a language that reads from right to left, you’ll need to adjust the template like so:

<div dir=rtl>{{FieldThatHasRTLTextInIt}}</div>

If you were linked directly here, please see the start of this section for more information.

Platform-Specific CSS

Anki defines some special CSS classes that allow you to define different styling for different platforms. The example below shows how to vary the font depending on where you’re reviewing:

.win .jp { font-family: "MS Mincho"; }
.mac .jp { font-family: "Hiragino Mincho Pro"; }
.linux .jp { font-family: "Kochi Mincho"; }
.mobile .jp { font-family: "Hiragino Mincho ProN"; }

And in the template:

<div class=jp>{{Field}}</div>

For different iOS devices, you can use '.iphone' and '.ipad'.

You can also use properties like .gecko, .opera, and .ie to select particular browsers when using AnkiWeb. Please see rafael.adm.br/css_browser_selector/ for a full list of options.

Installing Fonts

If you’re using Anki on a work or school computer where you don’t have permission to install new fonts, or you’re using Anki on a mobile device, it’s possible to add fonts directly to Anki.

To add a font to Anki, it must be in the TrueType format. TrueType fonts have a filename ending in .ttf, such as "Arial.ttf". Once you’ve located a TrueType font, we’ll need to add it to the media folder:

  1. Rename the file, adding an underscore at the start, so it becomes like "_arial.ttf". Adding an underscore will tell Anki that this file will be used on a template, and should not be deleted when checking for unused media.

  2. In your computer’s file browser, go to your Anki Folder, and then a folder called "User 1" (or your profile name if you’ve renamed/added profiles).

  3. Inside the folder, you should see a folder called collection.media. Drag the renamed file to that folder.

After that, we need to update the template:

  1. Click Add at the top of the main screen, and then select the note type you want to change with the top left button.

  2. Click Cards.

  3. In the styling section, add the following text to the bottom (after the last "}" character), replacing "_arial.ttf" with the name of the file you copied into your media folder:

@font-face { font-family: myfont; src: url('_arial.ttf'); }
Note Only change the "arial" part, not the "myfont" part.

After that, you can either change the font for the entire card, or for individual fields. To change the font for the entire card, simply locate the font-family: line in the .card section and change the font to "myfont". To change the font for only certain fields, please see the Field Styling instructions above.

Note Please make sure the filenames match exactly. If the file is called arial.TTF and you write arial.ttf in your card templates, it will not work.

Fonts on a Mac

Embedded fonts currently do not work on OS X. It is still possible to use custom fonts, but they need to be installed system wide.

To install a font on your system, please see support.apple.com/kb/HT2435?viewlocale=en_US&locale=en_US

You can set up Anki to use the system font on a Mac computer, and an embedded font elsewhere.

On your front or back template, wrap the field you want to style in the following code, replacing "FieldName" with the name of your field.

<span class="mystyle">{{FieldName}}</span>

In the styling section, in addition to the font-face line described above, add the following:

.mystyle { font-family: myfont; }
.mac .mystyle { font-family: Helvetica; }

Replace "Helvetica" with the name of the font you installed on your system. Keep "myfont" as is, as it references the font you embedded.

Javascript

As Anki cards are treated like webpages, it is possible to embed some Javascript on your cards via inline script tags in the template (loading external files using src= is not supported). As this is an advanced feature, we can not guarantee any particular Javascript will work, and can not provide any assistance when things are not working. If in doubt, it’s best to avoid it.

Each Anki client may implement card display differently, so you will need to test the behaviour across platforms. A number of clients are implemented by keeping a long running webpage and dynamically updating parts of it as cards are reviewed, so your Javascript will need to update sections of the document using things like document.getElementById() rather than doing things like document.write().

Functions like window.alert are also not available. Anki will write javascript errors to the terminal, so if you’re running on a Mac or Windows computer, you’ll need to manually catch the errors and write them to the document to see them. There is no debugger available, so to figure out problems you’ll need to break down your code until you discover which parts are causing problems.

Profiles & Preferences

Profiles

If more than one person wants to use Anki on your computer, you can set up a separate profile for each user. Each user profile has their own collection, and own program settings. Profiles are configured by going to the File menu and choosing "Switch Profile".

Note Profiles are intended to be used by different people, and each AnkiWeb account can only keep one profile in sync. For dividing up your own content, you should use separate decks rather than separate profiles, except when using extra profiles for experimenting with changes you don’t plan to sync to other devices.

It’s possible to assign a password to your profile by going to Anki’s preferences window. Your collection is not encrypted, and people can still tamper with the file if they locate it on your hard disk. The password protection is mainly intended to make it harder for students to tamper with each other’s decks and settings in a classroom environment.

Preferences

The preferences are available from the Tools menu on Windows/Linux, or the Anki menu on a Mac. If you have multiple profiles, any changes you make will apply only to the current profile.

Basic

The Strip HTML option controls whether Anki should strip the formatting from text you paste into the editor. By default, Anki strips the formatting from pasted text so that you can control formatting in your card templates instead. If you’d prefer the formatting to be preserved (so you can paste bolded text, etc), you can uncheck this option.

By default Anki pastes images on the clipboard as JPG files, to save disk space. You can use the Paste clipboard images as PNG option to paste as PNG images instead. PNG images support transparent backgrounds and are lossless, but they usually result in much larger file sizes.

The first drop-down box controls how note types and decks interact. The default of "When adding, default to current deck" means that Anki saves the last-used note type for each deck and selects it again then next time you choose the deck (and, in addition, will start with the current deck selected when choosing Add from anywhere). The other option, "Change deck depending on note type," saves the last-used deck for each note type (and opens the add window to the last-used note type when you choose Add). This may be more convenient if you always use a single note type for each deck.

The second drop-down box controls when new cards are shown: either mixed with, before, or after all reviews.

The Next day starts at option controls when Anki should start showing the next day’s cards. The default setting of 4AM ensures that if you’re studying around midnight, you won’t have two days' worth of cards shown to you in one session. If you stay up very late or wake up very early, you may want to adjust this to a time you’re usually sleeping.

The Learn ahead limit tells Anki how to behave when there is nothing left to study in the current deck but cards in learning. The default setting of 20 minutes tells Anki that cards should be shown early if they have a delay of less than 20 minutes and there’s nothing else to do. If you set this to 0, Anki will always wait the full delay, showing the congratulations screen until the remaining cards are ready to be reviewed.

Timeboxing is a technique to help you focus by dividing a longer activity (such as a 30 minute study session) into smaller blocks. If you set the timebox time limit to a non-zero number of minutes, Anki will periodically show you how many cards you’ve managed to study during the prescribed time limit.

Deck Options

Deck options are accessed by selecting a deck on the 'Decks' screen, and then clicking 'Options' at the bottom of the screen.

Anki allows you to share options between different decks, to make updating options in many decks at once easy. To do this, options are grouped into an 'options group'. By default, all newly created decks use the same options group, and decks imported from previous versions of Anki have separate option groups. If you’d like to alter the settings on one deck but not other decks, click the gears icon in the top right and add a new options group.

Please only change options that you fully understand, as inappropriate adjustments may render Anki less effective.

Note Options are not retroactive. For example, if you change an option that controls the delay after failing a card, cards that you failed prior to changing the option will have the old delay, not the new one.

New Cards

Steps controls the number of learning repetitions, and the delay between them. Please see the learning section for an overview of how the steps work.

Steps over a day (1440 minutes) are supported as well - if you want, you can define a schedule like 10 minutes, 1 day, 3 days and then finally 7 days before the card becomes a review card.

Note If there’s nothing else to study, Anki will show cards up to 20 minutes early by default. The amount of time to look ahead is configurable in the preferences. One thing to be aware of is that the due counts will differ between the deck screen and study screens in this case. The deck screen will not count cards that are not ready, but the study screen will. This is done so that you can tell which decks need your attention.
Note Anki treats small steps and steps that cross a day boundary differently. With small steps, the cards are shown as soon as the delay has passed, in preference to other waiting cards like reviews. This is done so that you can answer the card as closely to your requested delay as possible. In contrast, cards that cross a day boundary are scheduled on a per-day basis like reviews are. When you return to study the next day, the per-day learning cards will not be shown first, as that can make the first half of a review session frustratingly difficult. Instead, the cards will be shown after reviews are completed. They are included in the review count rather than the learning count, due to the way they are handled internally.

Order controls whether Anki should add new cards into the deck randomly, or in order. When you change this option, Anki will re-sort the decks using the current option group. One caveat with random order mode: if you review many of your new cards and then add more new cards, the newly added material is statistically more likely to appear than the previously remaining cards. To correct this, you can change the order to ordered mode and back again to force a re-sort.

Note When you select random order, Anki will randomize your notes, keeping the cards of a given note close together. The cards of a given note are shown in the order their card types appear in, so that siblings are introduced consistently - otherwise you could end up in a state where some notes had all their cards introduced and other notes had only one or two. Please see the "bury related" option below for more info.

New cards/day tells Anki how many new cards you’d like introduced on each day you open the program. Missed days will not cause the cards to pile up. The limit applies to the current deck and subdecks. This means if "French" has a limit of 20 cards and "French::Lesson 1" and "French::Lesson 2" both have limits of 15 cards, you’ll get 15 cards from lesson 1 but only 5 cards from lesson 2.

Note Studying new cards will temporarily increase the number of reviews you need to do a day, as freshly learnt material needs to be repeated a number of times before the delay between repetitions can increase appreciably. If you are consistently learning 20 new cards a day, you can expect your daily reviews to be roughly about 200 cards/day. You can decrease the reviews required by introducing fewer new cards each day, or by turning off new card display until your review burden decreases. More than one Anki user has excitedly studied hundreds of new cards over their first few days of using the program, and then become overwhelmed by the reviews required.

Graduating interval is the delay between answering 'Good' on a card with no steps left, and seeing the card again.

Easy interval is the delay between answering 'easy' on a learning card and seeing it in review mode for the first time.

Starting ease controls the easiness that cards start out with. It is set when a card graduates from learning for the first time. It defaults to 250%, meaning that once you’ve finished learning a card, answering "Good" on subsequent reviews will increase the delay by approximately 2.5x (eg if the last delay was 10 days, the next delay would be 25 days). Based upon how you rate the card in subsequent reviews, the easiness may increase or decrease from what it starts out as.

Turning off bury related…​ will prevent Anki from burying siblings, and instead Anki will just try to avoid showing siblings directly after one another in the same session. For this to work, your new cards/day setting needs to be large enough for the cards of multiple notes to be included.

Reviews

Maximum reviews/day allows you to set an upper limit on the number of reviews to show each day. When this limit is reached, Anki will not show any more review cards for the day, even if there are some waiting. If you study consistently, this setting can help to smooth out occasional peaks in due card counts, and can save you from a heart attack when returning to Anki after a week off. When reviews have been hidden due to this option, a message will appear in the congratulations screen, suggesting you consider increasing the limit if you have time.

Easy bonus allows you to set the difference in intervals between answering 'Good' and 'Easy' on a card. For instance, with the default value of 130%, Easy will give an interval that is 1.3 times the Good interval.

Interval modifier allows you to apply a multiplication factor to the intervals Anki generates. At its default of 100% it does nothing; if you set it to 80% for example, intervals will be generated at 80% of their normal size (so a 10 day interval would become 8 days). You can thus use the multiplier to make Anki present cards more or less frequently than it would otherwise, trading study time for retention or vice versa.

For moderately difficult material, the average user should find they remember approximately 90% of mature cards that come up for review. You can find out your own performance by opening the graphs/statistics for a deck and looking at the Answer Buttons graph - mature retention is the correct% on the right side of the graph. If you haven’t been studying long you may not have any mature cards yet. As performance with new cards and younger cards can vary considerably, it’s a good idea to wait until you have a reasonable amount of mature reviews before you start drawing conclusions about your retention rate.

On the SuperMemo website, they suggest that you can find an appropriate multiplier for a desired retention rate. Their formula boils down to:

log(desired retention%) / log(current retention%)

Imagine we have a current retention rate of 85% and we want to increase it to 90%. We’d calculate the modifier as:

log(90%) / log(85%) = 0.65

You can use Google to calculate it for you.

If you plug the resulting 65% into the interval modifier, you should find over time that your retention moves closer to your desired retention.

One important thing to note however is that the tradeoff between time spent studying and retention is not linear: we can see here that to increase our retention by 5 percentage points, we’d have to study 35% more frequently. If the material you are learning is very important then it may be worth the extra effort – that’s something you’ll need to decide for yourself. If you’re simply worried that you’re forgetting too much, you may find investing more time into the initial learning stage and/or making mnemonics gives you more gain for less effort.

One final thing to note is that Anki forces a new interval to be at least 1 day longer than it was previously so that you don’t get stuck reviewing with the same interval forever. If your goal is to repeat a card once a day for multiple days, you can do that by setting more learning mode steps instead of by adjusting this modifier.

Maximum interval allows you to place an upper limit on the time Anki will wait to reshow a card. The default is 100 years; you can decrease this to a smaller number if you’re willing to trade extra study time for higher retention.

Turning off bury related…​ will prevent Anki from burying siblings, and instead Anki will just try to avoid showing siblings directly after one another in the same session.

Note Review cards are always shown in random order. If you wish to see them in a different order, you can use a filtered deck. More specifically, Anki randomizes reviews by grabbing batches of 50 cards in the order that they exist in the database, randomizing each batch, then putting them together. This means that there is a slight bias towards older cards being shown first, but it prevents individual cards from showing up in a predictable order.

Lapses

When you forget a review card, it is said to have 'lapsed'. The default behaviour for lapsed reviews is to reset the interval to 1 (ie, make it due tomorrow), and put it in the learning queue for a refresher in 10 minutes. This behaviour can be customized with the options listed below.

If you leave the steps blank, Anki will not place the card back in the learning queue, and it will be rescheduled as a review with its new interval determined by the settings below.

Note The new interval is determined when you answer "Again" to a review card, not when the card finishes its relearning steps. For this reason, the "Good" and "Easy" buttons during relearing do not alter the interval again - they only control which step you are on. If there is only a single step (the default), the "Easy" button will be hidden, since it would accomplish the same thing as the "Good" button. If you have 2 or more steps, "Easy" is not hidden, to allow you to graduate cards from the queue before all of their steps are finished.

'New interval' controls how much Anki should reduce the previous interval by. If the card had a 100 day interval, the default of 0% would reduce the interval to 0 (but see the next option). If you set this option to 20%, the card would have its interval reduced to 20 days instead.

'Minimum interval' allows you to apply a minimum limit to the above option. The default setting says that lapses should be reviewed one day later. The interval must be 1 day or more.

The leech options control the way Anki handles leeches. Please see the leech section for more information.

General

Anki monitors how long it takes you to answer each question so that it can show you how long was spent studying each day. The time taken does not influence scheduling. If you take longer than 60 seconds, Anki assumes you have walked away from your computer or have been distracted, and limits the recorded time to 60 seconds, so that you don’t end up with inaccurate statistics. The 'ignore answer times…​' option allows you to adjust the cutoff threshold. The minimum cutoff is 30 seconds.

If 'show answer timer' is checked, Anki will display the current time taken for each card in the study area.

By default, Anki automatically plays audio on the front and back of cards. If you uncheck 'automatically play audio', Anki will not play audio until you press the replay audio key, r or F5.

The 'when answer shown, replay both question and answer audio' option controls what happens when you choose to replay audio while the answer is shown. Please note that it does not control what happens when you show the answer; for that please see this section.

Description

This section allows you to edit the deck description, which is shown in the study overview. The description is automatically set when downloading shared decks. You can delete all the text in the description if you no longer want to see it in the study overview area.

You can also use HTML in the description—anything that works on a note should be valid.

AnkiWeb and Synchronization

AnkiWeb is a service that allows you to keep your collection synchronized across multiple devices, and to study online. Please sign up for a free account before following the steps below.

Setup

To start syncing your collection across devices, click the sync button (the top right one on the main screen), or press 'y' on your keyboard. You’ll be prompted for your AnkiWeb ID and password, which you created in the signup process.

When you synchronize your collection for the first time, Anki will ask you if you want to upload or download. If you have cards on your computer and your AnkiWeb account is empty, choose "upload" to send your data to AnkiWeb. If you have cards on AnkiWeb from another device, and no cards on your computer, choose "download" to replace the empty local collection with the cards that are on AnkiWeb. If you have different cards on both devices, more work is required to avoid losing data.

Once the initial one way sync is completed, Anki will be able to merge changes from multiple locations with a few exceptions.

Note If you have multiple people using Anki on one machine and have created a profile for each user, each user will need to create their own AnkiWeb account to sync with. If you attempt to synchronize multiple profiles with a single AnkiWeb account, you will lose data.

Automatic Syncing

Once syncing is enabled, Anki will automatically sync each time your collection is closed or opened. If you would prefer to synchronize manually, you can disable automatic syncing in Anki’s preferences.

Media

Anki will synchronize any sounds and images used by your notes. It will notice when media has been added or removed from your media folder, but will not notice if you have edited some existing files without adding or removing any. To get your edits noticed, you need to add or remove a file as well.

Note If you’re running Anki off a USB flash drive, you should use an NTFS file system, as Anki may not be able to detect media changes on a FAT32 filesystem.

Conflicts

Reviews and note edits can be merged, so if you review or edit on two different devices before syncing, Anki will preserve your changes from both locations. If the same card has been reviewed in two different locations, both reviews will be marked in the revision history, and the card will be kept in the state it was when it was most recently answered.

There are certain changes that Anki is unable to merge. These mainly relate to the format of notes: things like adding a new field, or removing a card template. When you perform an operation that can’t be merged, Anki will warn you, and give you the option of aborting the operation. If you choose to continue, you’ll be asked to choose whether to keep the local copy or the copy on AnkiWeb when your collection is next synchronized.

If you choose Upload to make the content on AnkiWeb a copy of the content on your local device, you then need to sync any other devices you use, and choose Download, so they too have the same content. Once all devices have the same content, future syncs will be able to merge again.

If you wish to force a full upload or download (for example, because you accidentally deleted a deck on one side and want to restore the deck rather than having its deletion synchronized), you can check the "On next sync, force changes in one direction" box in Tools>Preferences>Network, then sync as usual. (You’ll be given the option to choose which side you want to use.)

Merging Conflicts

Because the first sync can only sync changes in one direction, if you have added different content to different devices or profiles before setting syncing up, content on one device will be lost if you overwrite it with the content from the other device. With some work, it is possible to manually merge data into a single collection.

Start by taking a backup on each device/profile, in case something goes wrong. With the computer version you can use File>Export to export "all decks" with scheduling information and media files included, and save the file somewhere safe. In AnkiMobile, the Add/Export button on the decks list screen will let you export all decks with media.

Next, if one of your devices is a mobile device, synchronize it first. If there’s a conflict, choose "upload" to overwrite any existing data on AnkiWeb with the data from your mobile device. If both devices/profiles are on your computer, synchronize the device/profile with the most number of decks first.

Now return to the other device/profile. If automatic syncing is enabled, a message may pop up asking if you want to upload or download. Click the cancel button - we don’t want to sync yet.

Once you’re looking at the deck list, click the cog icon next to the first deck, and choose "export". Export the content with scheduling information and media included, and save the .apkg file somewhere. Now you’ll need to repeat this for each top-level deck.

Once all top-level decks have been exported, click the sync button at the top right, and choose "download", which will overwrite the local content with the content you synced from your other device.

You can now use File>Import to import the .apkg files you exported earlier, which will merge the exported content with the existing content, so everything will be in one place.

Firewalls

Anki needs to be able to make outbound HTTPS connections to sync. At a minimum it must be able to connect to ankiweb.net, sync.ankiweb.net and msync.ankiweb.net. These domains may change over time, so we recommend you allow wildcard access to *.ankiweb.net.

If you have a firewall on your machine, you should add an exception for Anki. If you are on a work or school network, please contact your network administrator for assistance - it is not something we can help you with.

Proxies

If you need a proxy to access the internet, Anki should automatically pick up your system proxy settings if you’re on Windows or OS X, and will honour the HTTP_PROXY environment variable if you’re on another platform.

Please note that advanced proxy setup via .pac or .wpad files is not supported in Anki.

To override the system proxy settings on Windows or OS X, define a HTTP_PROXY environmental variable that points to the proxy server. It will look like:

http://user:pass@proxy.company.com:8080

If your username or password contains an @ (eg user@workdomain.com), you need to change it to %40, like so:

http://user%40workdomain.com:pass@proxy.company.com:8080
Note The toolkit Anki is built on is unfortunately not currently able to pick up your proxy username and password from your system settings. This means that if you use a proxy that requires authentication, syncing will fail. In this case, you will need to use an environmental variable that defines your proxy details as described above, or use a personal proxy server that you route traffic through, which in turn connects to the upstream proxy that requires authentication.
Note Heavily locked down networks that intercept secure connections and present their own certificate instead may cause Anki to throw up SSL errors. We do not support using Anki in such environments.

Browser

The browser (which has nothing to do with web browsers such as Mozilla Firefox) allows you to search through your cards and notes and edit them. It is opened by clicking on 'Browse' in the main window, or by pressing 'b' on your keyboard. It is comprised of three sections: the 'sidebar' on the left, the 'card list' on the top right, and the 'current note' on the bottom right. By positioning the mouse between two sections, it is possible to click and drag to expand one section and shrink another.

The sidebar on the left allows quick access to common search terms. Various search terms as described below are listed, along with all deck names and tag names. Clicking on an item will search for it.

You can hold down Ctrl (command on a Mac) and click in order to append the clicked item to the current search with an AND condition, instead of starting a new search. If you wanted to show learning cards that were also in the German deck for instance, you could click on "Learning", then ctrl+click on "German".

You can hold down Shift to create an OR search instead of an AND. For example, you could click one deck, then shift-click another to show cards from either of the decks in the same view.

You can hold down Alt (option on a Mac) in order to reverse the search (prepend a '-') – for instance, to show all cards in a current deck that do not have a certain tag. Alt/option can be combined with either Ctrl or Shift (e.g., Ctrl-Alt-clicking will result in adding a new search term that is negated).

To remove tags that are not used by any notes, use Tools>Check Database from the main window.

Searching

Above the card list is a search box. You can type in various things there to search for cards. (If you’d rather select what you’re looking for in a list, please take a look at the sidebar section above.)

Simple searches

When you type some text into the search box, Anki finds matching notes and displays their cards. Anki searches in all fields of the notes, but does not search for tags (see later in this section for how to search for tags). Some examples:

dog

search for "dog" - will match words like "doggy" and "underdog" too

dog cat

finds notes with both "dog" and "cat", such as "a dog and cat"

dog or cat

finds notes with either "dog" or "cat"

dog (cat or mouse)

finds notes with dog and cat, or dog and mouse

-cat

finds notes without the word "cat".

-cat -mouse

finds notes with neither "cat" nor "mouse".

-(cat or mouse)

same as the above.

"a dog"

finds notes with the exact phrase "a dog" on them

-"a dog"

finds notes without the exact phrase "a dog"

d_g

finds notes with d, <a letter>, g, like dog, dig, dug, and so on.

d*g

finds notes with d, <zero or more letters>, g, like dg, dog, dung, etc.

Things to note from the above:

  • Search terms are separated by spaces.

  • When multiple search terms are provided, Anki looks for notes that match all of the terms.

  • You can use "or" if you only need one of the terms to match.

  • You can prepend a minus sign to a term to find notes that don’t match.

  • If you want to search for something including a space or parenthesis, enclose it in quotes.

  • You can group search terms by placing them in parentheses, as in the dog (cat or mouse) example. This becomes important when combining OR and AND searches — in the example, with the parentheses, it matches either 'dog cat' or 'dog mouse', whereas without them it would match either 'dog and cat' or 'mouse'.

  • Anki is only able to search within formatting in the sort field you’ve configured. For example, if you add "example" to one of your fields, this will not be matched when searching for "example" unless that field is the sort field. If a word is not formatted, or the formatting does not change in the middle of the word, then Anki will be able to find it in any field.

Limiting to a field

You can also ask Anki to match only if a particular field contains some text. Unlike the searches above, searching on fields requires an 'exact match' by default.

front:dog

find notes with a Front field of exactly "dog". A field that says "a dog" will not match.

front:*dog*

find notes with Front field containing dog somewhere

front:

find notes that have an empty Front field

front:_*

find notes that have a non-empty Front field

front:*

find notes that have a Front field, empty or not

Tags, decks, cards and notes

tag:animal

find notes with the tag "animal"

tag:none

find notes with no tags

tag:ani*

find notes with tags starting with ani

deck:french

find cards in a French deck, or subdecks like French::Vocab

deck:french -deck:french::*

find cards in French, but not subdecks

deck:"french vocab"

searching when a deck has a space

"deck:french vocab"

also ok

deck:filtered

filtered decks only

-deck:filtered

normal decks only

card:forward

search for Forward cards

card:1

search for cards by template number - eg, to find the second cloze deletion for a note, you’d use card:2

note:basic

search for cards with a Basic note type

Card state

is:due

review cards and learning cards waiting to be studied

is:new

new cards

is:learn

cards in learning

is:review

reviews (both due and not due) and lapsed cards

is:suspended

cards that have been manually suspended

is:buried

cards that have been buried, either automatically or manually

Cards that have lapsed fall into several of these categories, so it may be useful to combine them to get more precise results:

is:learn is:review

cards that have lapsed and are awaiting relearning

-is:learn is:review

review cards, not including lapsed cards

is:learn -is:review

cards that are in learning for the first time

Card properties

prop:ivl>=10

cards with interval of 10 days or more

prop:due=1

cards due tomorrow

prop:due=-1

cards due yesterday that haven’t been answered yet

prop:due>-1 prop:due<1

cards due between yesterday and tomorrow

prop:reps<10

cards that have been answered less than 10 times

prop:lapses>3

cards that have moved into relearning more than 3 times

prop:ease!=2.5

cards easier or harder than default

Note that due only matches review cards and learning cards with an interval of a day or more: cards in learning with small intervals like 10 minutes are not included.

Recently added

added:1

cards added today

added:7

cards added in last week

The check is made against card creation time rather than note creation time, so cards that were generated within the time frame will be included even if their notes were added a long time ago.

Recently answered

rated:1

cards answered today

rated:1:2

cards answered Hard (2) today

rated:7:1

cards answered Again (1) over the last 7 days

rated:31:4

cards answered Easy (4) in the last month

For speed, rating searches are limited to 31 days.

Object IDs

nid:123

all cards of the note with note id 123

cid:123

the card with card id 123

mid:123

find note types with note type id 123

Note and card IDs can be found in the card info dialog in the browser. Note type IDs can be found by clicking on a note type in the Browse screen. These searches may also be helpful when doing add-on development or otherwise working closely with the database.

Note Object IDs will not work in the mobile clients, and are not intended to be used in filtered decks at the moment.

Card List

The card list displays cards that match the current search.

The columns are configurable: right click on one (or ctrl+click on a Mac) to choose which columns you’d like to see. You can drag columns to reorder them. Clicking on a column will sort by that column; click again to reverse the sort order. Not all columns can be sorted on.

Note The due column behaves differently for different types of cards. New cards show a number rather than a due date, which indicates the order the new cards will be presented in. Cards in (re)learning and reviews will both show a due date, but when sorting they are first grouped by type and then sorted by date.
Note The "edited" and "changed" columns sound the same but track different things. "Edited" tracks the last time changes were made to the 'note' (e.g., when the content of a field was edited), while "changed" tracks the last time changes were made to the 'card' (e.g., when you reviewed the card and the review history and interval were updated).

When you click on a card, its note will be shown in the bottom section. If you drag the mouse or hold ctrl or command to select multiple cards, the editor will be temporarily hidden. Various operations (such as changing the deck) can operate on multiple cards at once.

The background colour will change depending on the card. Marked cards are a shade of purple. Suspended cards are a shade of yellow. For more information about marked and suspended cards, please see editing and more.

One of the available columns is called the 'sort field'. Anki allows you to choose one field from each type of note to be used for sorting. You can change the sort field by clicking on "Fields…​" in the current note section.

The question and answer columns display what you’d see on the question and answer while reviewing, except the answer column will strip the question part for clarity. You can also choose a custom format in the card type editor instead of showing what would be seen during review.

Current Note

The bottom right area displays the currently selected card’s note. For more information about cards and notes, please see the basics. For more information on formatting buttons, please see editing.

You can see a preview of what the currently selected card would look like when reviewing by clicking the "preview" button next to the search box. Note that this will not display any type answer fields on your cards, which makes it easier to preview cards quickly.

Toolbar

Up the top of the browser window is the toolbar.

'Info' shows various information about the currently selected card, including its review history. For more information, see the statistics section.

'Mark' and 'Suspend' are documented in editing and more.

'Change Deck' allows you to move cards to a different deck. Cards can be placed in different decks, so if you want to move all cards in a note, you should first use Edit > Select Notes.

'Add Tags' and 'Remove Tags' allow you to add or remove tags from notes in bulk. To remove unused tags from the list on the left, use Tools>Check Database from the main window.

'Delete' removes the selected card(s) and their notes. It is not possible to remove individual cards, as individual cards are controlled by the templates.

Find and Replace

This option (Edit>Find and Replace) allows you to replace text in the cards you have selected. The regular expression option allows you to perform complex replacements. For example, given the following text on a card:

<img src="pic.jpg">

Searching for:

<img src="(.+)">

And replacing with the regexp:

\1

Will change the card to:

pic.jpg

A full discussion on regular expressions is outside the scope of this document. There are a number of tutorials available on the web. Please see docs.python.org/library/re.html for the particular format Anki uses.

Finding Duplicates

You can use the Edit>Find Duplicates option to search for notes that have the same content. When you open the window, Anki will look at all of your note types and present a list of all possible fields. If you want to look for duplicates in the "Back" field, you’d select it from the list and then click "Search".

Unlike the check that happens when you add cards manually, the duplicate finding feature is not limited to a single note type. This means that by default, it will search in all note types that have the field you provided.

The 'optional limit' text box allows you to narrow down where Anki will look for duplicates. If you only want to search for duplicates in the "French Vocab" and "French Verbs" note types, you would enter:

note:'french vocab' or note:'french verbs'

Or you might want to look only for duplicates in a particular deck, so you could use:

deck:'myDeck'

The search syntax is the same as used when searching in the browser. Please see the searching section for more information.

You can click one of the links in the search results list to display the duplicate notes in that set. If the search brings up a large number of duplicates, you may wish to instead click the Tag Duplicates button, which will tag all matching notes with "duplicate." You can then search for this tag in the browser and handle them all from the same screen.

Other Menu Items

Some other items in the Edit menu:

'Reschedule' allows you to move cards to the end of the new card queue, or reschedule them as a review card on a given date. The second option is useful if you have imported already-learnt material, and you want to start it off with higher initial intervals. For example, choosing 60 and 90 will give all the imported cards an initial interval of 2 to 3 months.

The card’s revision history is not cleared when rescheduling: rescheduling changes the current state of a card, but not its history. If you want to hide the history, you will need to export your notes as a text file, delete the notes, and then import the text file again, creating new notes.

'Reposition' allows you to change the order new cards will appear in. You can find out the existing positions by enabling the 'due' column, as described in the card list section above. If you run the reposition command when multiple cards are selected, it will apply increasing numbers to each card in turn. By default the number increases by one for each card, but this can be adjusted by changing the "step" setting. The 'Shift position of existing cards' option allows you to insert cards between currently existing ones, pushing the currently existing ones apart. For instance, if you have five cards and you want to move 3, 4, and 5 between 1 and 2, selecting this setting would cause the cards to end up in the order 1, 3, 4, 5, 2. By contrast, if you turn this option off, 2 and 3 will get the same position number (and it will thus be random which one comes up first).

'Change Note Type' allows you to convert the selected notes from one type to another. For example, imagine you have a Russian note type and a Computer note type, and you accidentally added some computer-related text into a Russian note. You can use this option to fix that mistake. The scheduling of cards is not affected.

'Select Notes' takes the currently selected cards, finds their notes, and then selects all cards of those notes. If your notes have only one card, this does nothing.

The 'Go' menu exists to provide keyboard shortcuts to jump to various parts of the browser, and to go up and down the card list.

Filtered Decks & Cramming

When you study a regular deck in Anki, only a limited number of cards are shown: the cards Anki thinks you’re about to forget, and a daily limit of new cards. This is generally useful, as it ensures you don’t spend more time studying than necessary. But sometimes it can be useful to step outside of these normal limits, such as when you need to revise for a test, focus on particular material, and so on. To make this possible, Anki provides a different type of deck called a 'filtered deck'.

Filtered decks offer a lot of possibilities. They can be used for previewing cards, cramming cards before a test, studying particular tags, catching up on a backlog with a particular sort order, reviewing ahead of schedule, going over the day’s failed cards, and more.

Custom Study

The easiest way to create a filtered deck is with the Custom Study button, which appears at the bottom of the screen when you click on a deck. It offers some convenient presets for common tasks like reviewing the cards you’ve failed that day. It will create a filtered deck called "Custom Study Session" and automatically open it for you.

If an existing "Custom Study Session" deck exists, it will be emptied before a new one is created. If you wish to keep a custom study deck, you can rename it from the deck list.

Here is a summary of each of the options:

Increase today’s new card limit

Add more new cards to the deck you are currently studying. Note that unlike other options, this does 'not' create a new filtered deck, it modifies the existing deck.

Increase today’s review card limit

If not all reviews due today were shown due to the daily review limit, this option allows you to show more of them. Like with the new cards option, this modifies the existing deck.

Review forgotten cards

Show all cards that you’ve answered Again (1) to within a number of days you specify.

Review ahead

Show cards that will be due in the near future (a number of days you specify). This is useful for working through some of your older cards before a vacation, but it will not help with cards you have learnt recently. Please see the reviewing ahead section below for more info.

Preview new cards

Show cards that you have recently added, without converting them to review cards as they are answered.

Study by card state or tag

Select a certain number of cards from the current deck to study. You can choose to select new cards only, due cards only, or all cards; after you click "Choose Tags", you can also limit the selected cards by tags. If you wish to see all the cards in the deck (for instance, to study before a big test), you can set the number of cards to more than the number of cards in the deck.

Home Decks

When a card is moved to a filtered deck, it retains a link to the deck it was in previously. That previous deck is said to be the card’s 'home deck'.

Cards automatically return to their home deck after they are studied in the filtered deck. This can be after a single review, or after multiple reviews, depending on your settings.

It is also possible to move all cards back to their home decks at once:

  • The "Empty" button in the study overview moves all cards in the filtered deck back to their home deck, but does not delete the empty filtered deck. This can be useful if you want to fill it again later (using the Rebuild button).

  • Deleting a filtered deck does the same thing as "Empty" does, but also removes the emptied deck from the deck list. No cards are deleted when you delete a filtered deck.

Note In the current implementation, if you empty or delete a filtered deck while cards are still in learning, they will be turned back into new cards. In the case of failed reviews in relearning, any remaining relearning steps will be skipped.

Creating Manually

Advanced users can create filtered decks with arbitrary search strings, instead of relying on set presets. To create a filtered deck manually, choose Create Filtered Deck from the Tools menu.

When you click the Build button, Anki finds cards that match the settings you specified, and temporarily moves them from their existing decks into your new filtered deck for study.

If you wish to fetch cards again using the same filter options (for instance, if you want to study all cards with a particular tag every day), you can use the Rebuild button at the bottom of the deck’s overview screen.

The search area controls what cards Anki will gather. All of the searches possible in the browser are also possible for filtered decks, such as limiting to tags, finding cards forgotten a certain number of times, and so on. Please see the searching section of the manual for more information on the different possibilities.

Note Filtered decks can not include cards that are suspended, buried, or already in a different filtered deck. For this reason, a search in the browser may reveal cards that don’t end up in the filtered deck.

The limit option controls how many cards will be gathered into the deck. The order you select controls both the order cards are gathered in, and the order they will be reviewed in. If you select "most lapses" and a limit of 20 for example, then Anki will show you only the 20 most lapsed cards.

For efficiency reasons, if your cram deck contains more than 1000 cards, only 1000 cards will be shown as due on the deck list and study screens.

Order

The "cards selected by" option controls the order that cards will appear in. If the maximum number of cards you select is lower than the number of cards that match the filter criteria, Anki will exclude the cards at the end of this sorted list first.

Oldest seen first

Display cards that you haven’t seen in reviews for the longest time first.

Random

Randomize the order of all cards that match the filter criteria (use no set order).

Increasing intervals

Display cards that have the smallest interval first.

Decreasing intervals

Display cards that have the largest interval first.

Most lapses

Display cards that you have failed the most times first.

Order added

Display cards that you added first (have the earliest creation date) first.

Order due

Display cards with the earliest due date first.

Latest added first

Display cards that you’ve most recently added to the deck first. (This is the opposite of 'Order added'.)

Relative overdueness

Display cards that are most overdue in relation to their current interval first (for instance, a card with a current interval of 5 days overdue by 2 days displays before a card with a current interval of 5 years overdue by a week). This is useful if you have a large backlog that may take some time to get through and want to review the cards you’re most in danger of forgetting first.

Steps & Returning

Please see the section on learning as a reminder of how steps work.

By default, Anki will use the steps of a card’s home deck. If a new card would normally be reviewed twice when being learnt, the same thing will happen when you study it in a filtered deck.

Cards return to their home deck when (re)learning is complete. Thus if you have 3 learning steps, a new card will return to its home deck upon three presses of "Good" or a single press of "Easy".

The custom steps option allows you to override the home deck’s steps and provide your own steps instead. The provided steps apply to both cards being learnt, lapsed reviews, and reviews ahead of time.

Counts

In a filtered deck, reviews that were already due are displayed in the review count as normal. Learning cards and non-due reviews are counted in the new card count, due to how the underlying implementation works. Reviews that were not due are not scheduled like new cards however - Anki uses a special algorithm that takes into account how close they were to their normal due time when reviewed.

Due Reviews

If the filtered deck includes cards that were due for review, they will be shown like they would have been in their original deck - they appear in the review card count at the bottom of the screen, and there are four choices for how well you remembered. Upon a correct answer, the card will be moved back to its home deck, and its next delay adjusted using the home deck’s settings. If you forget the card, it will be shown according to the relearning steps defined in the home deck.

Reviewing Ahead

If your search included cards that are not due, Anki will show the reviews ahead of time.

Anki uses a special algorithm for these reviews that takes into account how early you are reviewing. If the cards were almost due to be shown, they will be given a new delay similar to what they would have received if you had reviewed them on time. If the cards are reviewed soon after they were scheduled however, their new delay will be similar to their previous delay. This calculation works on a sliding scale.

Note Because reviewing a card shortly after it is scheduled has little impact on scheduling (eg, a card due tomorrow with a one day interval will remain due tomorrow if reviewed early), the "review ahead" custom study setting is not appropriate for repeated use. If used to go through a week’s worth of cards before a trip, the mature cards will be rescheduled into the future and the new cards will remain at small intervals, because you don’t know them well enough for them to be rescheduled further. If you review ahead again the next day, all you’ll end up doing is going through those same new cards again, to little benefit.

Early reviews are included in the new card count rather than the review count, and will be shown according to the number of relearning steps defined in the home deck (unless you have provided custom steps). This means that if you have customized the number of relearning steps in the home deck, the non-due card may be shown more than once.

If you have multiple steps, Anki will only consider the first answer when deciding the next delay, and like relearning in normal decks, "Good" and "Easy" differ only in the step change and not the resulting delay.

Rescheduling

By default, Anki will return cards to their home decks with altered scheduling based on your performance in the filtered deck. If you disable the reschedule cards based on my answers option, Anki will return the cards in the same state they were in when they were moved into the filtered deck. This is useful for quickly flipping through material.

If you have disabled rescheduling, the "Good" and "Easy" buttons will display no time above them when pressing them would cause the card to return to its home deck with its original scheduling.

Please note that new cards are returned to the end of the new card queue, rather than the start of it.

Catching Up

Filtered decks can be useful for catching up when you’ve fallen behind in your reviews. One Anki user describes the way they use the filtered decks to catch up as follows:

I did this for a backlog of 800 cards with filtered subdecks. Worked very well for me.

  1. Just Due filter with: "is:due prop:due>-7"
  2. Over Due filter with: "is:due prop:due<=-7"

The Just Due deck will then contain cards that became due in the past week. That's the deck you should study every day as it gets the cards that become due regularly. With this you can study as if there wasn't any backlog.

The Over Due deck will contain your backlog, cards which you didn't study in time. You can study them the same way you would study new cards. They go back into the regular cards, so the number of overdue will never grow as long as you keep your Just Due deck in check.

How long it takes depends on how many overdue cards you study each day in addition to the ones that become due regularly. You can still motor through them when you feel like it - or you can do a specific number per day like you would for new cards. Up to you.

Leeches

Leeches are cards that you keep on forgetting. Because they require so many reviews, they take up a lot more of your time than other cards.

Anki can help you identify leeches. Each time a review card 'lapses' (is failed while it is review mode), a counter is increased. When that counter reaches 8, the note is tagged as a leech, and the card is suspended. The threshold, and whether to suspend or not, can be adjusted in the deck options.

Anki will continue to issue leech warnings periodically for a difficult card. The warning interval is half the initial leech threshold. That is, if you have Anki configured to warn at 8 lapses, future warnings will happen every 4 lapses. (12, 16, etc)

Once a leech is found, there are a number of ways you can handle it.

Waiting

Some leeches are caused by 'interference'. For example, an English learner may have recently learnt the words "disappoint" and "disappear". As they look similar, the learner may find themselves confusing the two when trying to answer. In these situations, it’s often productive to concentrate on just one idea. When that idea is firmly ingrained in your mind, you can then return to learning the other idea. So in these situations, you may want to leave one of the words suspended until you have learnt the other one well, and then unsuspend it in the browser.

Deleting

Another way to manage leeches is to delete them. Consider if the material you’re struggling with is important enough to make it worth your while. By selectively deleting difficult and obscure items, you can dedicate more time to learning other material, and studying becomes a lot more fun.

Editing

Another approach is to change the way the information is presented. Perhaps the cards you have created have too much information on them, or perhaps you’re trying to memorize something without fully understanding it. Sometimes spending some time changing the way the card is phrased can help. It’s also a good time to think about making a mnemonic to help you remember.

Importing

Anki can import text files, packaged Anki decks created by the export feature, Mnemosyne 2.0 .db files, and SuperMemo .xml files. To import a file, click the File menu and then "Import".

Importing text files

Any plain text file that contains fields separated by commas, semicolons or tabs can be imported into Anki, provided some conditions are met.

  • The files must be plain text (myfile.txt). Other formats like myfile.xls, myfile.rtf, myfile.doc must be saved as a plain text file first.

  • The files must be in UTF-8 format (see below).

  • Anki determines the number of fields in the file by looking at the first (non-commented) line. Any lines in the file which have a different number of fields will be ignored.

  • The first line also defines the separating character – if Anki finds a ';' on the first line it will use that, if it finds a comma it’ll use that, etc.

Fields in your text file can be mapped to any field in your notes, including the tags field. You can choose which field in the text file corresponds to which field in the note when you import.

When you import a text file, you can choose what deck to put the cards in. Keep in mind that if you have the deck override option set for one or more of your templates, the cards will go to that deck rather than the one you’ve selected.

This is an example of a valid file:

foo bar; bar baz; baz quux
apple; banana; grape

There are two ways to include newlines in fields.

Escape the multi-lines by placing the contents of the field in quotation marks:

hello; "this is
a two line answer"
two; this is a one line one

Use HTML new lines:

hello; this is<br>a two line answer
two; this is a one line one

You need to turn on the "allow HTML in fields" checkbox in the import dialog for HTML newlines to work.

Note Escaped multi-lines will not work correctly if you are using cloze deletions that span multiple lines. In this case, please use HTML newlines instead.

You can also include tags in another field and select it as a tags field in the import dialog:

first field; second field; tags

This is an example of a valid file where the first line is ignored (#):

# this is a comment and is ignored
foo bar; bar baz; baz quux
field1; field2; field3

Spreadsheets and UTF-8

If you have non-Latin characters in your file (such as accents, Japanese and so on), Anki expects files to be saved in a 'UTF-8 encoding'. The easiest way to do this is to use the free LibreOffice spreadsheet program instead of Excel to edit your file, as it supports UTF-8 easily, and also exports multi-line content properly, unlike Excel. If you wish to keep using Excel, please see this forum post for more information.

To save your spreadsheet to a file Anki can read with LibreOffice, go to File>Save As, and then select CSV for the type of file. After accepting the default options, LibreOffice will save the file and you can then import the saved file into Anki.

HTML

Anki can treat text imported from text files as HTML (the language used for web pages). This means that text with bold, italics and other formatting can be exported to a text file and imported again. If you want to include HTML formatting, you can check the "allow HTML in fields" checkbox when importing. You may wish to turn this off if you’re trying to import cards whose content contains angle brackets or other HTML syntax.

If you wish to use HTML for formatting your file but also wish to include angle brackets, you may write them differently:

  • For "<", use "&lt;"

  • For ">", use "&gt;"

Importing Media

If you want to include audio and pictures from a text file import, copy the files into the collection.media folder. Do not put subdirectories in the media folder, or some features will not work.

After you’ve copied the files, change one of the fields in your text file as follows.

<img src="myimage.jpg">

or

[sound:myaudio.mp3]

Alternatively, you can use the find & replace feature to update all the fields at once. If each field contains text like "myaudio", and you wish to make it play a sound, you’d search for (.*) and replace it with "[sound:\1.mp3]", with the 'regular expressions' option enabled.

Note When importing a text file with these references, you must make sure to enable the "Allow HTML" option.

You might be tempted to do this in a template, like:

<img src="{{field name}}">

Anki doesn’t support this for two reasons: searching for used media is expensive, as each card has to be rendered, and such functionality isn’t obvious to shared deck users. Please use the find & replace technique instead.

Bulk media imports

Another option for importing large amounts of media at once is to use the media import add-on. This add-on will automatically create notes for all files in a folder you select, with the filenames on the front (minus the file extension, so if you have a file named apple.jpg, the front would say 'apple') and the images or audio on the back. If you would like a different arrangement of media and filenames, you can change the note type of the created cards afterwards.

Adding Tags

If you want to add 'tag1' and 'tag2' to every line you’re importing, add the following to the top of the text file:

tags:tag1 tag2

Duplicates and Updating

When importing text files, Anki uses the first field to determine if a note is unique. By default, if the file you are importing has a first field that matches one of the existing notes in your collection and that existing note is the same type as the type you’re importing, the existing note’s other fields will be updated based on content of the imported file. A drop-down box in the import screen allows you to change this behaviour, to either ignore duplicates completely, or import them as new notes instead of updating existing ones.

Note The duplicate check is done for your 'entire collection', not just in the current deck. If Anki is indicating that notes have not changed when you expected them to be imported, please check that the notes are not already in your collection somewhere.

If you have updating turned on and older versions of the notes you’re importing are already in your collection, they will be updated in place (in their current decks) rather than being moved to the deck you have set in the import dialog. If notes are updated in place, the existing scheduling information on all their cards will be preserved.

For info on how duplicates are handled in .apkg files, please see the Deck Packages section below.

Exporting

Exporting allows you to save part of your collection as a text file or packaged Anki deck. To export, click the File menu and choose 'Export'.

Exporting Text

If you choose "Notes in Plain Text", Anki will write the contents of the notes into a text file. Each field is separated by a tab. If you edit the resulting file and don’t modify the first field, you can later import that file back into Anki and Anki will update your notes based on your edits, provided you import back into the same note type.

If you find yourself needing to edit the first field as well, you’ll need to change the format of your note type so that the first field is an ID number rather than actual text. (You can install the "Add note id" plugin to make this easier.)

In order for formatting to be preserved when you import text back in, the text is exported with all the HTML formatting embedded in it.

Exporting Packaged Decks

A 'packaged deck' consists of cards, notes, note types and any sounds or images bundled up into a file ending with .apkg. You can use packaged decks to transfer cards between people, or for backing up parts of your collection. A packaged deck is compressed, so it will be smaller than the sum of the files in your profile folder.

There are two different kinds of packaged decks.

Collection Package

When you export all decks with scheduling included, this is called a 'collection package'. Anki will copy your entire collection into a file called "collection.apkg", and place it on your desktop. A collection package is used to back up your collection, or copy it to another device.

When this file is later imported, Anki will delete all the current cards in the collection, and replace the collection with the items in the collection.apkg file. This is useful for copying your collection back and forth between devices.

Note Existing media in your collection is not deleted when you import a collection.apkg. To delete unused media, use Tools>Check Media.
Note Anki’s automatic backups are also collection packages. Simply double click on one to restore your collection to that backup.

Deck Package

Deck packages contain a single deck (and any child decks it may have). They have a filename ending with .apkg, but a filename other than collection.apkg. When you import a deck package, Anki will add the contents into your collection, rather than overwriting your collection.

If some notes in the deck package have previously been imported, Anki will keep the version with the most recent modification time. So if you download an updated deck, the edits that have been made in the updated version will be made in your collection as well, but if you re-import an unchanged deck after making edits in your collection, the changes in your collection will be kept.

If you choose not to include scheduling information, Anki will assume that you are sharing the deck with other people, and will remove marked and leech tags so that they will have a clean copy of it.

Managing Files and Your Collection

Checking Your Collection

It’s a good idea to occasionally check your collection file for problems. You can do this via the Tools>Check Database menu item. Checking the database ensures the file is not corrupted, rebuilds some internal structures, and optimizes the file.

When you check the database, your tag list is also rebuilt. When you delete individual decks or cards, Anki does not update the list of used tags, as it’s inefficient to do so. If you want to clear old tags out from the list that are no longer in use, checking your database is the way to do it.

Please note that Anki will automatically optimize your collection once every 2 weeks. This optimization ensures the collection performs well, but it does not check for errors or rebuild the tag list when automatically optimizing.

File Locations

On Windows, the latest Anki versions store your Anki files in your appdata folder. You can access it by opening the file manager, and typing %APPDATA%\Anki2 in the location field. Older versions of Anki stored your Anki files in a folder called Anki in your Documents folder.

On Mac computers, recent Anki versions store all their files in the ~/Library/Application Support/Anki2 folder. The Library folder is hidden by default, but can be revealed in Finder by holding down the option key while clicking on the Go menu. If you’re on an older Anki version, your Anki files will be in your Documents/Anki folder.

On Linux, recent Anki versions store your data in ~/.local/share/Anki2, or $XDG_DATA_HOME/Anki2 if you have set a custom data path. Older versions of Anki stored your files in ~/Documents/Anki or ~/Anki.

Within the Anki folder, the program-level and profile-level preferences are stored in a file called prefs.db.

There is also a separate folder for each profile. The folder contains:

  • Your notes, decks, cards and so on in a file called collection.anki2

  • Your audio and images in a collection.media folder

  • A backups folder

  • Some system files

Warning You should never copy or move your collection while Anki is open. Doing so could cause your collection to become corrupted. Please don’t move or modify the other files in the folder either.

Startup Options

If you have made a destructive change on one computer and have an undamaged copy on another computer, you may wish to start Anki without syncing in order to use the full sync option without first downloading the changes. Similarly, if you are experiencing problems with Anki, you might want to (or might be instructed to) disable add-ons temporarily to see if one might be causing the problem. You can do both of these things by holding down the Shift key while starting Anki.

It is possible to specify a custom folder location during startup. This is an advanced feature that is primarily intended to be used with portable installations, and we recommend you use the default location in most circumstances.

The syntax to specify an alternate folder is as follows:

anki -b /path/to/anki/folder
  • If you have multiple profiles, you can pass -p <name> to load a specific profile.

  • To change the interface language, use -l <iso 639-1 language code>, such as "-l ja" for Japanese.

If you always want to use a custom folder location, you can modify your shortcut to Anki. On Windows, right-click on the shortcut, choose Properties, select the Shortcut tab, and add "-b \path\to\data\folder" after the path to the program, which should leave you with something like

"C:\Program Files\Anki\anki.exe" -b "C:\AnkiDataFolder"

You can also use this technique with the -l option to easily use Anki in different languages.

Note On Windows, you should use a backslash (\) not a forward slash (/).

On a Mac there is no easy way to alter the behaviour when clicking on the Anki icon, but it is possibile to start Anki with a custom base folder from a terminal:

open /Applications/Anki.app --args -b ~/myankifolder

DropBox and File Syncing

We do not recommend you sync your Anki folder directly with a third-party synchronization service, as it can lead to database corruption when files are synced while in use.

If you just want to synchronize your media, you can link external folders into services like DropBox. Please see www.dropboxwiki.com/tips-and-tricks/sync-other-folders for more info.

If you wish to keep your collection in sync as well, it is strongly recommended that you create a script that copies your files from your synced folder to a local folder, launches Anki, and then copies the files back when Anki is closed. This will ensure that the files are never synchronized while they are open.

Network Filesystems

We strongly recommend you have Anki store your files on a local hard disk, as network filesystems can lead to database corruption. If a network filesystem is your only option, regular use of Tools>Check Database to detect corruption is recommended.

Running from a Flash Drive

On Windows, Anki can be installed on a USB / flash drive and run as a portable application. The following example assumes your USB drive is drive G.

  • Copy the \Program Files\Anki folder to the flash drive, so you have a folder like G:\Anki.

  • Create a text file called G:\anki.bat with the following text:

g:\anki\anki.exe -b g:\ankidata

If you would like to prevent the black command prompt window from remaining open, you can instead use:

start /b g:\anki\anki.exe -b g:\ankidata
  • Double-clicking on anki.bat should start Anki with the user data stored in G:\ankidata.

Note The full path including drive letter is required - if you try using \anki\anki.exe instead you will find syncing stops working.
Note Media syncing with AnkiWeb may not work if your flash drive is formatted as FAT32. Please format the drive as NTFS to ensure media syncs correctly.

Backups

Each time your collection is closed (when closing Anki, switching profiles, or synchronizing your deck), Anki exports your collection into the backups folder. By default Anki will store up to 30 backups; you can adjust this in the preferences.

Automatic backups do not protect against disk or computer failure, and do not extend to your media. To keep your collections safe, please consider making manual backups too.

The easiest way to take a manual backup is to back up your entire Anki folder. Please make sure you close Anki first, as backups may be corrupt if run while Anki is open.

To restore from a backup:

  1. First create a copy of your backups folder, as each time you close Anki it deletes the oldest backup, and if you’re trying different backup files you could accidentally end up deleting the backup you need. To do this, locate your Anki folder, and copy the entire folder somewhere safe, like your desktop.

  2. Open Anki and the profile you want to restore. If your profile is corrupt and won’t open, you can rename the User 1/collection.anki2 file to something else to tell Anki to recreate an empty collection when you next open the profile.

  3. With the profile open, use File>Import and import a backup from the copy of the backups folder you created on your desktop. In the file selection dialog, you can set it to detail mode using one of the icons so that the modification date is shown on each file - that will give you an idea of which backup you need.

  4. If the backup you imported was not old enough, try an older one until you locate an appropriate one.

Anki also logs deleted notes to a text file called deleted.txt in your profile folder. These notes are in a text format that can be read by File>Import, though please note the import feature only supports a single note type at one time, so if you have deleted notes from different note types, you’ll need to split the file into separate files for each note type first.

Inaccessible Harddisk

If Anki can’t write to files in the Anki folder, a message will be displayed on startup saying that Anki can’t write to the harddisk, and Anki will close. If you’re unsure how to fix the permissions, please contact someone near you who is knowledgable about computers and can help you out.

Permissions of Temp Folder

Anki uses the system’s temporary folder to store temporary data. If the permissions of this folder have been changed from the default settings by a rogue app or buggy antivirus app, Anki will not function properly.

If you’re on a Windows 7 machine, the general steps to fix the problem are listed below. As this is somewhat complicated, please ask someone knowledgeable about Windows if you are not sure.

  1. Click on the start bar, and type in %temp% (including the percents), then hit enter.

  2. Go up one folder, and locate the temp folder. Right click on it, and choose Properties.

  3. In the security tab, click on Advanced.

  4. Click on the Owner tab. If you’re not listed as the owner, click the button to take ownership.

  5. On the permissions tab, ensure that you have full control. On a default W7 install the control will actually be inherited from c:\users\your-username.

Corrupt Collections

Anki uses a file format that is robust against program and computer crashes, but it’s still possible for your collection to become corrupt if the files are modified while Anki is open, stored on a network drive, or corrupted by a bug.

When you run Tools>Check Database, you will receive a message if Anki detects the file has been corrupted. The best way to recover from this is to restore from the most recent automatic backup, but if your backup is too old, then you can attempt to repair the corruption instead.

On Linux, make sure sqlite3 is installed. On a Mac, it should be installed already. On Windows, download www.sqlite.org/sqlite-3_6_23.zip.

Next, create a backup of your collection.anki2 file, in case something goes wrong with the steps below.

Linux/OSX

Open a terminal, change to the folder your collection is located in, and type:

sqlite3 collection.anki2 .dump > dump.txt

Open the resulting dump.txt file in a text editor, and look at the final line. If it reads "rollback;", change it to "commit;"

Then run the following in a terminal:

cat dump.txt | sqlite3 temp.file

Make sure you use temp.file - do not put collection.anki2 on the right, or you will blank out the file. When you’re done, proceed to the final step.

Windows

Copy the sqlite3.exe program and your deck to your desktop. Then go to Start>Run and type in cmd.exe.

If you’re on a recent Windows, the command prompt may not start on your desktop. If you don’t see desktop displayed in the command prompt, type something like the following, replacing 'administrator' with your login name.

cd C:\Users\Administrator\Desktop

Then type:

sqlite3 collection.anki2 .dump > dump.txt

Open the resulting dump.txt file in a text editor, and look at the final line. If it reads "rollback;", change it to "commit;"

Then run the following in a terminal:

type dump.txt | sqlite3 temp.file

Make sure you use temp.file - do not put collection.anki2 on the right, or you will blank out the file. When you’re done, proceed to the final step.

Final Step

Check that you didn’t get an error message, and that temp.file is not empty. The procedure optimizes the collection in the process, so it’s normal for the new file to be somewhat smaller than the old one.

When you’ve confirmed the file is not empty:

  • rename the original collection.anki2 file to something else

  • rename temp.file to collection.anki2

  • move collection.anki2 back into your collection folder, overwriting the old version

  • start Anki and go to Tools>Check Database to make sure the collection has been successfully restored.

Graphs and Statistics

Card Info

You can display information about a card by clicking the Info button in the toolbar while browsing. Most of the displayed information should be self-explanatory. A few notes:

Position

Only shown when the card is new, it shows the order the card will appear in relative to other new cards. The position can be changed in the browser.

Interval

The delay from one review to the next. Times are abbreviated; "0s, 1m, 3h, 4d, 5mo, 6y" refers to seconds, minutes, hours, days, months and years respectively.

Ease

The approximate amount the interval will grow when you answer a review card with the "Good" button.

Statistics

The statistics window is accessed by clicking on the graphs icon in the top right of the main window, or by pressing Shift+S. The statistics window will show statistics from the currently selected deck and any subdecks. If you click on "collection" on the bottom left, statistics will be shown for your entire collection instead.

By default Anki will show you statistics for the previous month. You can change this to a year scope or deck life scope at the bottom. (The "today" section at the top is of course unaffected by this selection.)

Clicking on "Save Image" will save an image of the statistics to a file on your desktop to make it easy to share your statistics with others.

Note When you delete notes, their review history is maintained in Anki. It will not be included when looking at statistics for a specific deck (as Anki has no way of knowing which deck the deleted cards belonged to), but will be included when you look at statistics for the whole collection.

Types of Cards

The stats window uses some terms that you may not be familiar with:

Mature

A mature card is one that has an interval of 21 days or greater.

Young

A young card is one that has an interval of less than 21 days, but is not in learning.

Learn

A learning card is one that is still in learning mode (using whatever steps may be defined in the deck’s options).

Relearn

A relearning card is a card that you have failed in review mode, thus returning it to learning mode to be relearned.

Unseen

An unseen card is one that has been added to your collection but has not yet entered learning mode. Unseen cards are sometimes referred to as "new" cards, especially when they are in the "new" queue to be shown for the first time.

Today

At the top of the statistics window is a brief list of textual statistics about the reviews that you have completed today. A “review” in this context is 'one answering of a card', so a card might count as multiple reviews if it needed to be seen multiple times, and a learning card answered also counts as a “review.” A couple of the stats whose meaning may not be immediately obvious:

Again count

This is the number of reviews that you have failed (i.e., pressed Again on). The correct percentage listed afterwards is the number of cards you did 'not' fail divided by the total number of cards you studied.

Learn, Review, Relearn, Filtered

The number of reviews that were learning cards, review cards, relearning cards, or studied in a filtered deck when not due.

The stats for the current day are not a good overall indicator of your learning progress; everyone has bad days and good days, and seeing that you got a lower percentage correct on a particular day should not be cause for concern. The remainder of the stats, which take longer periods of time into account, will give more useful information if you wish to try to change your study habits or scheduling settings based on your performance.

The “today” statistics are unaffected by the time period selected at the bottom of the window.

The Graphs

Forecast

This graph shows an estimated number of reviews that will be due on a given day in the future if you learn no new cards and fail no cards. The bars and the left axis show the number of cards due on each day if you study all cards each day, while the line and the right axis show the number of cards due on that day if you don’t study at all until then. Note that the forecast graph does not count reviews that are currently overdue, so if you have a large backlog, the overdue cards will not be displayed.

Review Count

This graph counts the number of card reviews you have done. The bars may correspond to days, weeks, or months, depending on the time period you’ve selected at the bottom of the screen. The differently colored blocks show how many of the cards you answered on each day were mature, young, relearning, or learning cards. There is also a separate group for cards answered in a filtered/cram deck while they were not due. The line and the right axis shows the cumulative total for each type of review as time progresses across the graph (so at 0 days, it would display the number for the entire time period displayed on the graph).

Review Time

This graph works exactly like Review Count, except that it deals with the amount of time you spent on each card rather than the number of cards answered.

Intervals

This graph displays the number of cards that have a given interval (the delay between two reviews). The line and the right axis tell you what percentage of your cards have an interval of less than or equal to the time below that point. The time scope has a different effect on this graph than other graphs: rather than changing which cards or period of studying is included, it limits how far out the intervals are displayed to (so 14-month intervals are not displayed at all on a 1-year graph).

Hourly Breakdown

This graph shows what percentage of total reviews you have passed (i.e., not pressed Again on) during given hours. The larger, darker bars and left axis show the success rate; the thinner, lighter bars and right axis show the number of reviews you’ve made at that hour (so you know how significant the results are).

Answer Buttons

This graph shows how many times you’ve chosen the Again, Hard, Good, or Easy button while studying learning/new, young, and mature cards. Anki also displays the percentage of correct reviews for each type of card.

Cards Types

This pie chart shows what percentage of your deck or collection consists of mature, unseen, young/learn, and suspended cards. If you wish to calculate a more precise percentage, the key shows the exact number of cards in each section, and the total number of cards is displayed to the side.

Manual Analysis

If you’re interested in getting information from your statistics other than what Anki provides, it is possible to access the data directly. Because of the complexity involved, this is not something we can provide any support for.

One option is to write an add-on that adds another graph or more details to the statistics window. There are several add-ons of this sort on AnkiWeb already, which you can look at to get an idea of how it works.

A more powerful and more complex option is to extract the review log information directly from Anki’s database and analyze it in an external program. Anki uses a database format called SQLite. There are many tools available for working with SQLite databases; one of the easiest to start with is called SQLite Browser, which will allow you to look around the database as well as export a CSV version of tables for import into another program.

The most important table for statistics is the 'revlog' table, which stores an entry for each review that you conduct. The columns are as follows:

id

The time at which the review was conducted, as the number of milliseconds that had passed since midnight UTC on January 1, 1970. (This is sometimes known as 'Unix epoch time', especially when in straight seconds instead of milliseconds.)

cid

The ID of the card that was reviewed. You can look up this value in the id field of the 'cards' table to get more information about the card, although note that the card could have changed between when the revlog entry was recorded and when you are looking it up. It is also the millisecond timestamp of the card’s creation time.

usn

This column is used to keep track of the sync state of reviews and provides no useful information for analysis.

ease

Which button you pressed at the end of the review (1 for Again, 4 for Easy).

ivl

The new interval that the card was pushed to after the review. Positive values are in days; negative values are in seconds (for learning cards).

lastIvl

The interval the card had before the review. Cards introduced for the first time have a last interval equal to the Again delay.

factor

The new ease factor of the card in permille (parts per thousand). If the ease factor is 2500, the card’s interval will be multiplied by 2.5 the next time you press Good.

time

The amount of time (in milliseconds) you spent on the question and answer sides of the card before selecting an ease button.

type

This is 0 for learning cards, 1 for review cards, 2 for relearn cards, and 3 for "cram" cards (cards being studied in a filtered deck when they are not due).

Media

 

Anki stores the sounds and images used in your notes in a folder next to the collection. For more on the folder location, please see the file locations section. When you add media within Anki, either by using the paperclip icon in the editor or by pasting it into a field, Anki will copy it from its original location into the media folder. This makes it easy to back up your collection’s media or move it to another computer.

Check Media

You can use the Tools>Check Media menu option to scan your notes and media folder. It will generate a report of files in the media folder that are not used by any notes, and media referenced in notes but missing from your media folder. It does not scan question or answer templates, which is why you can’t place media references to fields in the template. If you need a static image or sound on every card, name it with a leading _ (e.g., '_dog.jpg') to tell Anki to ignore it when checking for media. If you delete media using the unused media check, Anki will move it into your operating system’s trash folder, so you can recover if you accidentally delete media that shouldn’t have been deleted.

mplayer

Anki uses a program called mplayer in order to support sounds and videos. A wide variety of file formats are supported, but not all of these formats will work on AnkiWeb and the mobile clients. MP3 audio and MP4 video seems to be the most universally supported.

LaTeX support

LaTeX is a powerful typesetting system, which is ideal for entering mathematical formulas, chemical formulas, musical notation and so on. Anki provides some support for LaTeX, allowing you to enter LaTeX code in your notes. When you review a card, Anki will call LaTeX and display the generated image instead.

Installing and Assumed Knowledge

Anki’s LaTeX support is not turn-key: it is assumed that you know how to use LaTeX already, and that you have it installed. If you have no experience with LaTeX, please consult one of the many guides available on the internet. If you are having trouble with markup, please ask on a LaTeX forum.

To install LaTeX, on Windows use MiKTeX; on OSX use MacTex, and on Linux use your distro’s package manager. Dvipng must also be installed.

Note On Windows, go to Settings in MikTek’s maintenance window, and make sure "Install missing packages on the fly" is set to "No", not to "Ask me first". If you continue to have difficulties, one user reported that running Anki as an administrator until all the packages were fetched helped.
Note On OSX, LaTeX has only been tested with MacTex and BasicTex. If you use BasicTex, you need to install dvipng separately, with the following command:
sudo tlmgr update --self; sudo tlmgr install dvipng

The command may not be on the path, so you may need to provide the full path, eg /usr/local/texlive/2014basic/bin/x86_64-darwin/tlmgr.

Note If you are not using the above LaTeX packages, you will need to use the "edit LaTeX" add-on to specify the full path to latex and dvipng.

LaTeX on Web/Mobile

When you review a card with LaTeX on it, Anki will generate an image for that LaTeX and place the image in your collection’s media folder for future use. The web & mobile clients will display these images if they already exist, but can not generate the images on their own.

To avoid having to review all your cards at least once before you can study on the other clients, Anki can generate the images in bulk for you. To generate all the images, please go to Tools>Check Media. After that, syncing should upload the generated media to AnkiWeb and the other clients.

Example

The most general way to input LaTeX content is to surround it with [latex][/latex] tags. There’s a shortcut button for this documented in the editor section.

Warning [latex] tags must be used inside a field - placing them in the card template will cause problems.

For example, entering the following on the front of an Anki flashcard:

Does [latex]\begin{math}\sum_{k = 1}^{\infty}\frac{1}{k}\end{math}[/latex] converge?

will produce this when the flashcard is viewed:

convergence question

The formula in the example above is called a 'text formula', because it is displayed right within the non-mathematical text. In contrast, the following example shows a 'displayed formula':

Does the sum below converge?

[latex]\begin{displaymath}\sum_{k = 1}^{\infty}\frac{1}{k}\end{displaymath}[/latex]

convergence question 2

'Text formulas' and 'display formulas' are the most common type of LaTeX expressions, so Anki provides abbreviated versions of them. Expressions of the form:

[latex]\begin{math}...\end{math}[/latex]

can be shortened to

[$]...[/$]

and expressions of the form

[latex]\begin{displaymath}...\end{displaymath}[/latex]

can be shortened to

[$$]...[/$$]

For example, the two LaTeX snippets shown before are equivalent to

Does [$]\sum_{k = 1}^{\infty}\frac{1}{k}[/$] converge?

and

Does the sum below converge?

[$$]\sum_{k = 1}^{\infty}\frac{1}{k}[/$$]

respectively.

LaTeX packages

Anki allows you to customize the LaTeX preamble so you can import custom packages for chemistry, music and so on. For example, imagine you find an example file for chemtex on the internet:

\documentclass[a4paper,12pt]{report}
\usepackage{chemtex}
\begin{document}

\initial
\begin{figure}[h]\centering
\parbox{.3\textwidth}{\ethene{H}{H$_3$C}{CH$_3$}{Br}}
\hfil
\parbox{.3\textwidth}{\cbranch{H}{S}{H}{S}{C}{S}{}{S}{H}
  \xi=-200 \cright{}{Q}{C}{D}{O}{S}{OH}}
\hfil
\parbox{.3\textwidth}{\hetisix{Q}{Q}{Q}{Q}{Q}{Q}{O}{Q}{O}
  \xi=-171 \fuseup{Q}{Q}{Q}{Q}{D}{Q}{D}{Q}{D}}
\caption{Chemie mit {\tt CHEMTEX}\label{a1}}
\end{figure}

\end{document}

Firstly, follow the documentation of the package and MiKTeX/MacTex in order to install the package. To check the package is working, you’ll want to put code like the above into a .latex file and test you can compile it from the command line. Once you’ve confirmed that the package is available and working, we can integrate it with Anki.

To use the package with Anki, click "Add" in the main window, then click the note type selection button. Click the "Manage" button, then select the note type you plan to use and click "Options". The LaTeX header and footer are shown. The header will look something like:

\documentclass[12pt]{article}
\special{papersize=3in,5in}
\usepackage{amssymb,amsmath}
\pagestyle{empty}
\setlength{\parindent}{0in}
\begin{document}

To use chemtex, you’d add the usepackage line in the earlier example, so it looks like:

\documentclass[12pt]{article}
\special{papersize=3in,5in}
\usepackage{amssymb,amsmath}
\usepackage{chemtex}
\pagestyle{empty}
\setlength{\parindent}{0in}
\begin{document}

After that, you should be able to include lines like the following in your Anki cards:

[latex]\ethene{H}{H$_3$C}{CH$_3$}{Br}[/latex]

LaTeX Conflicts

It’s not uncommon for {{ and }} to pop up in LaTeX code when writing mathematical equations. To ensure that your LaTeX equations don’t conflict with Anki’s field replacements, it’s possible to change the separator to something else.

For example, if you have a template:

{{latex field}}

Changing it to the following will make it unlikely that the LaTeX will conflict:

{{=<% %>=}}
<%latex field%>

While this most commonly occurs with LaTeX, the solution presented here will work in any situation where you need to include {{ }} on cards, regardless of whether LaTeX is used or not.

When using cloze deletions, you cannot change the double braces used to mark cloze deletions; instead, you can put a space between any double closing braces that do not indicate the end of the cloze, so

{{c1::[$]\frac{foo}{\frac{bar}{baz}}[/$] blah blah blah.}}

will not work, but

{{c1::[$]\frac{foo}{\frac{bar}{baz} }[/$] blah blah blah.}}

will (and LaTeX ignores spaces in math mode, so your equation will render the same).

Unsafe commands

Anki prohibits certain commands like \input or \def from being used on cards or in templates, because allowing them could allow malicious shared decks to damage your system. (To be on the safe side, these commands are prohibited even in comments, so if you’re getting this error but don’t think you’ve used one, please double-check any comments you have in your headers, templates, and cards.) If you need to use these commands, please add them to a system package and import that package as described in the previous section.

Miscellanea

Menu Shortcuts

On Windows/Linux you can hold down the alt key and press a highlighted letter to activate a particular menu.

OS X doesn’t support this feature, but it does allow you to assign shortcuts to specific menu items instead. Please see lifehacker.com/343328/create-a-keyboard-shortcut-for-any-menu-action-in-any-program for more information.

Debug Console

Sometimes you may be asked to use the debug console to change a setting or check something. Unless asked to enter text in the "debug console", you will probably not need this. Advanced users may like to read more about it in the add-ons page, linked below.

When asked to enter text into the "debug console", please start Anki, and in the main window, press Ctrl+: (that is the control key and colon key at the same time - you may need to also press shift), or on a Mac, Command+: (command key and colon key at the same time - you may need to also press shift). When you do so, a new window should pop up.

In the window that has popped up, please paste the text you were asked to paste in the top section. When you’ve done so, please press Ctrl+Return (Command+Return on a Mac), and some text should appear in the bottom section. If you’ve been asked to paste the resulting output, please copy it from the bottom area, and paste it back to the support person.

If you press Ctrl+Shift+Return instead of just Ctrl+Return, Anki will try to print the result rather than doing what you asked it to. If you are getting unexpected errors, please make sure you’re not holding down the Shift key.

Add-ons

Anki’s capabilities can be extended with add-ons. Add-ons can provide features like extra support for specific languages, extra control over scheduling, and so on.

To browse the list of available add-ons, select the Tools>Add-ons>Browse & Install menu item. You can also use Tools>Add-ons to check which add-ons are installed.

Some add-ons have options or customizations that are only accessible by editing them. To edit an add-on, go to Tools>Add-ons>[add-on name]>Edit. Please be careful when editing - special characters and whitespace is important, so if you see something like:

    line1
    line2
    line3

…​and you accidentally change it to the following, Anki will throw an error when it is restarted:

    line1
   line2
    line3

Many add-on authors include their email address in the add-on, so if you need to get in touch with the author, editing the add-on and looking at the top of the file may help.

If you have downloaded an add-on that is not working properly, or if you accidentally made a mistake when editing an add-on, you can use the "Delete" option in the menu to remove it.

To learn how to write your own add-ons, please see the add-on writing guide.

Contributing

Sharing Decks Publicly

To share decks with the general public, synchronize them with AnkiWeb, then log into AnkiWeb and click on "Share" from the menu next to the deck you wish to share.

If you shared a deck previously (including with previous versions of Anki), you can update it by clicking "Share" as above. Please ensure the name of the deck in your account exactly matches the name shown in the shared deck listing, or you’ll end up creating a new shared deck rather than updating the old one. Updating a shared deck will not reset the download counts or ratings. You can delete a shared deck that you have uploaded using the Delete button on the shared deck’s page.

When you update a shared deck, users who downloaded the deck previously will not automatically receive updates. If they download the deck again and re-import it, newly added material will be imported without altering their existing study progress, provided neither you nor the user has altered the note type since the first import.

Note When updating a deck, AnkiWeb expects the deck to be at the same location as before. If you shared a deck when it was called "Korean Verbs" for example, and then renamed it to "Korean::Korean Verbs", resharing will not be able to update the existing copy.

Sharing Decks Privately

If you’d like to share decks with a limited group of people (such as a study group or class) rather than the general public, you can do so by sharing them outside of AnkiWeb.

To share a deck privately, go to the File menu and choose Export. Select a single deck (not "All Decks"), and turn off "include scheduling information". This will produce an .apkg file which you can share with others.

You can share the .apkg file by emailing it to people, placing it on a website or shared folder, or using a free file sharing service like Dropbox or Google Drive and sending people a link.

Both the computer version and mobile clients make it easy to import from an apkg file simply by clicking or tapping on it. AnkiWeb does not have the ability to import apkg files however, so the recipients of your deck will need to have the computer version or Anki on their mobile device.

When a user imports an .apkg file, cards that already exist in their collection will be ignored and any new cards will be added. As long as they use the same note type, modified cards will also be updated. To prevent data loss, cards that have been deleted in the new apkg file will not be deleted in the user’s collection, so if you need to delete cards from users' decks for whatever reason, you will need to contact them about it.

Sharing Add-ons

Please see the add-on documentation above.

App Translations

Translations can be done directly from the translation website.

Launchpad will guess which languages you can translate based on the country you’re connecting from. If the language you want to translate to doesn’t appear, sign up for a launchpad account, and in your profile, click the '!' next to preferred languages to the language you want to translate.

There are some special markers in text that you need to be aware of, and careful when translating:

  • A string like Cards: %d or Error: %s means that the %d/%s part will be replaced with some other value. The characters must remain the same in the translation, so a translation may look like カード: %d.

  • The same applies to text like %(a)d of %(b)d - it would be translated like %(a)d von %(b)d. If you need to reverse A and B in your language, that’s fine as long as the text remains the same.

  • Menu items have an & to indicate which character is the shortcut key, such as &File. In languages that use roman text, you can place the & over a different character such as &Datei; in other languages there may be a different convention. Japanese for example includes the roman character afterwards instead, like ファイル (&F)

  • Some strings have plural support, so that "0 cards", "1 card", "5 cards" can be represented properly in your language. In these instances you’ll need to enter the 2 or 3 different forms.

Sometimes it will not be clear what a string refers to, and you may want to see the context. Below every string to be translated, you’ll see a line like this:

Located in ../dtop/aqt/deckbrowser.py:299

If you strip off the first "../dtop" section, you’re left with something like "aqt/deckbrowser.py:299". You can then visit github.com/dae/anki/, locate the same filename, and click on it. The file will be displayed with line numbers on the left, and by matching up the line numbers (they may differ by a few lines sometimes), you may be able to get a better understanding of what the string refers to.

If you see 'forms' in the string like the above example, the strings will generally be obvious. If you do need to understand the context however, things are a little more complicated, as those files are automatically generated from an interface description instead. Please go to github.com/dae/anki/tree/master/designer and locate the same filename and click on it. We can’t rely on line numbers in this case, so please use the browser’s find option to find the string in the file. The lines immediately surrounding the found text may give a clue as to its meaning.

If you find a string that you’re unsure how to translate, or would like to start a discussion with fellow native speakers on the best way to translate something, please feel free to start a thread in the Anki forums.

If the language already appears in Anki’s preferences screen, updates you make will automatically be included in future Anki releases.

If the language is not currently visible in Anki’s preferences screen, please post on our support site and request that the language you’ve translated be added to the list.

Any translations that were made at least a few hours before a new Anki release are automatically included in the next release. Entirely new languages need to be added manually, so please contact us if that applies to your translation. If you’d like to see your name in the About screen as a contributor, please drop Damien a line.

If you’d like to try out your translations without waiting for a new release, you can export a .mo file from the translation website. If you then move that .mo file into Anki’s installation folder, overwriting an existing .mo file with the same language code (in the locale folder), Anki will display the new translations when it is next started.

Translating the Manual

If you’re a fairly technical user, you may want to translate the source file of the manual, and compile it yourself with asciidoc. You can also use that github repo to keep track of changes to the manual in the future.

If that sounds complicated, an easier way is to visit this page and use File>Save As to save the manual to disk. You can then import it into Microsoft Word or similar software, and translate it that way.

When you’re happy with the translation, you can either put it up on your website and I can link to it, or I can host the translated file on Anki’s website (but if you’re planning to make frequent updates, the former is a better choice). If you’d like, you can post it before you’re done and we can link to it in the list of in-progress translations below.

Another option is to put your translation on a wiki, so that other users can contribute to it. There are many sites such as Wikia that will allow you to easily create your own wiki for free. (The English version once used a wiki; we found that we got too many unhelpful contributions and had to spend too much time correcting them, but your mileage may vary.)

The following translations are currently in progress:

  • Hungarian

  • Portuguese

If you would like to help with one of these translations, please contact us on TenderApp and we will put you in touch with the user(s) currently working on it.

Contributing Code

Anki’s source code is available at github.com/dae/anki

Before contributing, please see the README.contributing file in that repo.

Frequently Asked Questions

I haven’t studied for a while, and now the next due times are too big!

When you use Anki every day, each time a card is answered correctly, it gets a bigger interval. Let’s assume that 'good' about doubles the interval. Thus you have a 5 day wait, then a 10 day wait, 20 days, 40 days, and so on.

When people return to their deck after weeks or months of no study, they’re often surprised by the length intervals have grown to. This is because Anki considers the actual time the card was unseen, not just the time it was scheduled for. Thus if the card was scheduled for 5 days but you didn’t study for a month, the next interval will be closer to 60 days than 10 days.

This is a good thing. If you have successfully remembered a card after a one month wait, chances are you’ll remember it again after a longer wait, too. The same principles which make SRS effective in normal use apply when you’re studying after a delay, too. It also makes little sense to schedule a card for 10 days in the future if you were able to easily answer it after a whole month’s wait - you’d be going backwards.

Resetting the deck is an even worse solution. When returning to a deck after a long absence, you may have forgotten many of your cards, but chances are you haven’t forgotten them all. Resetting the entire deck means you have to waste time studying material you already know.

Now you may find overdue cards that you were able to recall, but not comfortably, since they were not reviewed when they should have been. To counter this, Anki treats the delay differently depending on your answer. If you find a card easy, the last interval plus the full delay are added together, and then used to calculate the next interval. When you answer good, only half the delay is used. And when you answer hard, only a quarter of the delay is used. So if a card was due in 5 days, and it’s answered 20 days late, the next times you’d end up with are approximately:

  • Hard: (5 + 20/4) * 1.2 = 12 days

  • Good: (5 + 20/2) * 2.5 = 37.5 days

  • Easy: (5 + 20) * 3.25 = 81.25 days

(the factors will actually vary depending on your performance in the deck)

If you find a card hard, the next interval is quite conservative and is less than the last wait (25 days). If you find it good, the next interval is only about 50% higher. And easy increases the interval aggressively as usual.

So it is recommended that you study as normal when you return to Anki after a period of absence. But if you absolutely must reset the deck, you can select the cards to reset in the browser, and use Edit>Reschedule.

Can I do multiple-choice questions?

Multiple choice questions are a poor review tool for a number of reasons. The reason they are commonly used in an academic setting is because they are easy to mark, and they allow the person studying to demonstrate their ability to recognize the correct answer even if they can’t produce it themselves.

Furthermore, good multiple choice questions have well chosen "distractors" - answers that are similar to the correct answer. A computer can look for similarly spelt words, but it is not capable of choosing good distractors for more complicated topics.

If you are studying for a test and you have a sample test with a multiple choice question like the following:

Q: What animal has a really long neck?

A: 1. A monkey. 2. A giraffe. 3. A donkey. 4. A snail.

Then that question should be rewritten in Anki as follows:

Q: What animal has a really long neck?

A: A giraffe.

Or you can add your own choices:

Q: What animal has a really long neck? (dog/cat/giraffe/penguin)

A: A giraffe.

Anki supports links between cards of a note, but not between unrelated cards. Imagine are you studying Japanese and aiming to be able to both recognize and reproduce the Japanese. You may enter the word "ookii", which means "big", and tell Anki to generate two cards - ookii→big and big→ookii.

In the above situation Anki can space reviews of those two sibling cards out so that they don’t appear one after the other (see sibling spacing in the link at the top of this document).

Some people want to extend this link between arbitrary cards. They want to be able to tell Anki "after showing me this card, show me that card", or "don’t show me that card until I know this card well enough". This might sound like a nice idea in theory, but in practice it is not practical.

For one, unlike the sibling card case above, you would have to define all the relations yourself. Entering new notes into Anki would become a complicated process, as you’d have to search through the rest of the deck and assign relationships between the old and new material.

Secondly, remember that Anki is using an algorithm to determine when the optimum time to show you material again is. Adding constraints to card display that cause cards to display earlier or later than they were supposed to will make the spaced repetition system less effective, leading to more work than necessary, or forgotten cards.

The most effective way to use Anki is to make each note you see independent from other notes. Instead of trying to join similar words together, you’ll be better off if you can determine the differences between them. Synonyms are rarely completely interchangeable - they tend to have nuances attached, and it’s not unusual for a sentence to become strange if one synonym is replaced with another.

Continuing with the Japanese example earlier, imagine you want to learn the word "dekai", which also roughly translates to "big", but is a more colloquial expression. If you still want to review in both directions, you might make the English prompt of this word "big (more casual)". The further you progress in your language studies though, the more of a burden it becomes to define the differences between similar words, which is why cards asking you to produce a particular word are best left to the early stage of your studies. With a strong base vocabulary, moving towards recognition-based study makes more sense, as we all have a much larger passive vocabulary than our active vocabulary.

As for ensuring that difficult material is introduced after easier material, a number of existing tools are available. New cards are by default introduced in the order they are added to the deck, so as long as the learning materials or sources of information you are using are adequately graded for your level, material should appear in order of easiness.

Can I give my notes an arbitrary number of fields?

Notes are designed to represent 'closely' related information, and to make it easy to reorganize where that information appears on a card. In the context of language learning, notes are useful for representing things like a phrase-translation pair, a phrase-translation-reading triplet, and so on. All of these relationships are 1:1 - a given phrase has only one reading, and one translation. (1)

Because of their ability to tie related pieces of information together, some people try to use notes to tie less closely related information in their deck together. For example, if they come across two sentences with the word "completely":

  • He was completely confused.

  • That was completely uncalled for.

Then they put those two sentences in the same note, under the rationale that since they share a word, they are related. But what if the user comes across another example sentence?

  • The book confused her.

That sentence shares the word "confused" with a previous sentence. So should it be in the note for "confused"? Or the note for "completely"? Or both?

Unlike the phrase-translation pairs mentioned above, if you say sentences are related if they share a word, then sentences have a many:many relationship. That is, sentence A may be related to sentence B and C, sentence B may be related to A and D, and so on. Because the relationships are complex and overlapping, notes are not a good way to represent them.

There seem to be two main reasons people try to represent such relationships in notes:

  • "Because it’s neater to keep all the information in one place". This may seem to be the case, but in reality you really don’t save much. If you want to see all example sentences that contain the word "completely" and each sentence is in a different note, all you have to do is search for "completely".

  • "Because I want Anki to separate reviews of cards that share the same word". This is related to the previous FAQ question. Defining the links between cards is time consuming, and if it were done automatically and every card that shared a word were separated from other cards that shared a word, it would be both computationally prohibitive, and would likely lead to a situation where nothing could be shown because it was all related to something else. Yes, it’s not ideal for two sentences containing the same word to be shown right after each other, but if you add new cards in a random order such a situation is unlikely, and the downsides of trying to prevent such a situation aren’t worth it. And even if such a solution were introduced, it wouldn’t stop you from encountering the words in the real world.

(1) It is possible for different people to translate the same phrase in different ways, and different dialects may read the same word differently, but that is not relevant to the discussion.

Can I host my own AnkiWeb?

Sorry, AnkiWeb is only available as a hosted service.

Why is the Android version free when the iPhone version isn’t?

Working on Anki desktop, AnkiWeb and AnkiMobile is my full time job, and I need some way of paying the bills. Since I make the desktop & web versions available for free, I rely on sales of the iPhone app in order to finance development.

AnkiDroid is written by a separate group of volunteers. Since they based it on the free desktop version I make available (and rely on AnkiWeb in order to synchronize decks), they decided to make it freely available as well.

What spaced repetition algorithm does Anki use?

Anki was originally based on the SuperMemo SM5 algorithm. However, Anki’s default behaviour of revealing the next interval before answering a card revealed some fundamental problems with the SM5 algorithm. The key difference between SM2 and later revisions of the algorithm is this:

  • SM2 uses your performance on a card to determine the next time to schedule that card

  • SM3+ use your performance on a card to determine the next time to schedule that card, and similar cards

The latter approach promises to choose more accurate intervals by factoring in not just a single card’s performance, but the performance as a group. If you are very consistent in your studies and all cards are of a very similar difficulty, this approach can work quite well. However, once inconsistencies are introduced into the equation (cards of varying difficulty, not studying at the same time every day), SM3+ is more prone to incorrect guesses at the next interval - resulting in cards being scheduled too often or too far in the future.

Furthermore, as SM3+ dynamically adjusts the "optimum factors" table, a situation can often arise where answering "hard" on a card can result in a longer interval than answering "easy" would give. The next times are hidden from you in SuperMemo so the user is never aware of this.

After evaluating the alternatives, the Anki author decided that near-optimum intervals yielded by an SM2 derivative are better than trying to obtain optimum intervals at the risk of incorrect guesses. An SM2 approach is predictable and intuitive to end users, whereas an SM3+ approach hides the details from the user and requires users to trust the system (even when the system may make mistakes in the scheduling).

Anki’s algorithm is based on SM2, but differs from it in some respects.

  • SM2 defines an initial interval of 1 day then 6 days. With Anki, you have full control over the length of the initial learning steps. Anki understands that it can be necessary to see a new card a number of times before you’re able to memorize it, and those initial "failures" don’t mean you need to be punished by being shown the failed card many times over the course of a few days. Performance during the learning stage does not reflect performance in the retaining stage.

  • Anki uses 4 choices for answering review cards, not 6. There is only one 'fail' choice, not 3. The reason for this is that failure comprises a small amount of total reviews, and thus adjusting a card’s ease can be sufficiently done by simply varying the positive answers.

  • Answering cards later than scheduled will be factored into the next interval calculation, so you receive a boost to cards that you were late in answering but still remembered.

  • Like SM2, Anki’s failure button resets the card interval by default. But the user can choose to make the card take some steps back rather than being reset completely. Also, you can elect to review failed mature cards on a different day, instead of the same day.

  • 'Remembered easily' not only increments the ease factor, but adds an extra bonus to the current interval calculation. Thus, answering 'remembered easily' is a little more aggressive than the standard SM2 algorithm.

  • Successive failures while cards are in learning do not result in further decreases to the card’s ease. A common complaint with the standard SM algorithms is that repeated failings of a card cause the card to get stuck in "low interval hell". In Anki, the initial acquisition process does not influence a card’s ease.

For a description of the SM2 algorithm, please see www.supermemo.com/english/ol/sm2.htm

You can also check out 'sched.py' in Anki’s source code for the scheduling code. Here is a summary (see the deck options section for the options that are mentioned in 'italics').

If you press…​

Again

The card is placed into relearning mode, the ease is decreased by 20 percentage points (that is, 20 is subtracted from the 'ease' value, which is in units of percentage points), and the current interval is multiplied by the value of 'new interval' (this interval will be used when the card exits relearning mode).

Hard

The card’s ease is decreased by 15 percentage points and the current interval is multiplied by 1.2.

Good

The current interval is multiplied by the current ease. The ease is unchanged.

Easy

The current interval is multiplied by the current ease times the 'easy bonus' and the ease is increased by 15 percentage points.

For Hard, Good, and Easy, the next interval is additionally multiplied by the 'interval modifier'. If the card is being reviewed late, additional days will be added to the current interval, as described here.

There are a few limitations on the scheduling values that cards can take. Eases will never be decreased below 130%; SuperMemo’s research has shown that eases below 130% tend to result in cards becoming due more often than is useful and annoying users. Intervals will never be increased beyond the value of 'maximum interval'. Finally, all new intervals (except Again) will always be at least one day longer than the previous interval.

Note After you select an ease button, Anki also applies a small amount of random “fuzz” to prevent cards that were introduced at the same time and given the same ratings from sticking together and always coming up for review on the same day. This fuzz does not appear on the interval buttons, so if you’re noticing a slight discrepancy between what you select and the intervals your cards actually get, this is probably the cause.

Resources

SuperMemo

The SuperMemo site has a lot of good information about spaced repetition and memory: www.supermemo.com/

 


2017-12-04

The content here is distributed under the CC BY-SA license:
creativecommons.org/licenses/by-sa/4.0/

 

 

Anki 2.0 Knowledge Base

Intro

Original

Translations

Interface

Changing the interface language

By default, Anki displays interface text such as menus and dialog boxes in the language you selected when you ran Anki for the first time. If you selected wrong or want to use multiple languages, you can change the language in Anki’s preferences screen (ctrl+p on Windows/Linux, cmd+p, on OS X). After selecting a new language, restart Anki for the new language to take effect.

Language selection was introduced in Anki 2.0.35. If you’re running an older version, you’ll need to upgrade first.

Changing the font size

  • To change the size when reviewing, please see this article.

  • To change the size of the text you see when adding or editing, please click the Fields button.

  • To change the size of the text in rows of cards in the browser, please click the Cards button, and then More, and then Browser Appearance.

  • For buttons, menus and so on, Anki uses your system font settings, so you can alter the size by adjusting the system font scale. If you wish to override the font only in Anki, you’ll need to install ankiweb.net/shared/info/2103013902 and then alter the fontHeight line, changing f.pixelSize() to a number like 16.

Everything is too small!

Unfortunately the toolkit Anki is built on does not handle high DPI screens on Windows and Linux well at the moment, so the defaults are tiny. You can use the above options to adjust the size when reviewing and editing, but some of the icons and text can not be adjusted at the moment.

Card Appearance

Flipping/reversing cards

Please take a look at the introductory video on reversing cards.

If you need more information, please see this section of the manual:

Note that AnkiMobile does not currently allow you to edit card templates – doing so requires the free desktop version, which you can download at Anki’s homepage

Changing colors/fonts/alignment/etc

Please see this intro video for information on how to customize the size of the text you see when reviewing. You can also look at the manual’s section on card styling.

For information about customizing the text size outside of reviewing (e.g., in the Edit dialog box), please see this article.

Text to speech support

There is a popular add-on called AwesomeTTS that supports a number of text to speech programs and services. You can read more about it here:

It works by downloading the audio into your collection, so that when you sync with AnkiWeb, your other devices will gain access to the audio as well. We feel this is the best approach, as it saves downloading content when you’re out and about, or draining your phone battery to generate the audio as you study.

While AnkiMobile has no official support for on-device TTS, Apple introduced TTS support in iOS7, and it is possible to gain access to it. Please see anki.tenderapp.com/discussions/ankimobile/890-req-text-to-speech-in-ankimobile-for-ios7 for a user-contributed solution.

Can I reveal parts of a card one at a time?

Typical flashcards, both on paper and in Anki, have a front and a back: the prompt or question is shown on the front and the answer on the back. Sometimes people want to add more steps to the answer. For instance, you might want to show the word in a foreign language on the front, then show a definition when you press the button once, then show an example sentence when you press it again, and so on.

This is generally not a good idea. The more complicated you make your cards, the more difficult they become to remember and the less efficiently they can be scheduled. The difference between the amount of time it takes to learn and review a few complex cards and the amount of time it takes to learn a larger number of much simpler cards containing the same information can be stunning.

For this reason, Anki doesn’t support having more than two sides per card. In our foreign-language words example, you might instead want to create multiple card types, so that you would be asked for each of the items on separate cards – one card could show you the word and ask for a definition, another could show the example sentence with the word missing and ask what word logically fits, and so on.

In some cases, you might want to include extra non-essential information on a card without showing it until you need it. For this situation, Anki offers hint fields.

"The front of this card is blank"

Anki displays cards by combining the fields you’ve entered with a template that says which fields should appear on the front and back of your cards. If you receive a message that a card has a blank front, it means either none of the fields included on your front template have any text in them, or you have fields that have text, but none are included on the front template. You can fix this problem by editing the card on the computer version, clicking on Cards, and checking to make sure at least one field with some text on it is included on the front template. You can add extra fields with the Add Field button.

Collection Management

Hiding Decks

If you do not intend to study a deck for some time do not want to delete it, you may wish to hide it. There are two ways to do this.

A) Export the deck and delete it.

  • Choose File → Export. Select Anki Deck Package (.apkg)* from the Export Format drop-down.

  • Select the deck to be removed from the Include drop-down.

  • Make sure that Include scheduling information and Include media are checked—otherwise you will have lost your review history and possibly your media when it comes time to use the deck again.

  • Click Export and save the apkg file somewhere you can find it again.

  • Finally, delete the deck from your collection.

You can restore the deck to your collection by choosing File → Import and importing the deck again. It will be restored with the same name it had when you exported it.

B) Create an "unused" deck.

You can create a tree of decks in Anki by dragging and dropping the decks in the deck list. You can use a combination of this property and options groups to hide decks you do not intend to use:

  • Click Create Deck and add a deck called "Unused," "Hidden," or something similar. You can place a tilde (~) before the name (like "~Unused") if you want to force the deck to appear at the bottom of the list.

  • Drag and drop the deck you wish to hide to underneath the new deck. Then collapse the Unused deck by clicking the minus sign next to the name.

  • You can stop here if you’re happy with this; however, if you leave it this way, due counts will still be displayed. If you would rather get rid of them, continue with step 4.

  • Click the options button next to the Unused deck and choose Options.

  • Click the options button in the upper-right-hand corner and add a new options group (you can call it "unused deck" or something similar).

  • On the New Cards tab, select a new cards/day limit of 0. On the reviews tab, select a maximum reviews/day limit of 0.

To restore the deck, simply drag and drop it back into the main deck list (you can go either to the very top or the very bottom of the list to get the top level). You can leave the Unused deck for future use.

Resetting progress in a deck

Sometimes you may want to "reset" part of your collection so that the cards become new again and the scheduling algorithm starts from the beginning. For instance, you might have completely changed a card or updated it so that you need to start learning it again, or you may have flipped through some cards without really studying if you were just trying to take a look at the cards or figure out how Anki works.

Resetting part of your collection because you are behind is not recommended. While it can be tough to recover from a backlog of cards, erasing all the progress you have made is the worst possible thing you can do: you will still remember many of those cards, and you’ll have to start them all over even though you could have pushed "easy." Instead, consider setting up a daily review limit ("maximum reviews/day" in the options) and studying a set number of the overdue cards each day until you catch up.

Resetting cards within Anki

  • Find the cards you want to reset in the browser.

  • Select all the cards and choose Edit → Reschedule, then Place at end of new card queue. Click OK.

When you do this, Anki will turn the cards back into new cards. If you click Info in the browser you’ll see any previous reviews you’ve done listed there, but that history will not influence how the cards are scheduled: they will be treated just like new cards.

Removing the review history

If you really want to remove the history, you will need to export your cards as text, delete the cards from within Anki, and then import the text file back into Anki. The review history will remain, but it will no longer be associated with those cards.

Removing duplicate note types

Sometimes you may end up with several note types of the same name, like "Basic" in this screenshot:

ntypedupes.png

This usually happens due to importing multiple decks, although you can also create a note type with the same name as another one in the Manage Note Types dialog box.

While this is generally harmless, it can be somewhat annoying if you can’t tell which cards belong to which note type, so you can fix it as follows:

  • First, confirm that all of the note types with duplicate names are really the same by going to the browser, clicking on each one in turn, and comparing the fields that are shown at the bottom of the window. (If you’re not sure, you can also click the Cards button and make sure that the templates are the same as well.) If they’re not the same, you should use the Manage Note Types dialog (mentioned in step 2) to rename one to something else instead.

  • In the main Anki window, choose Tools → Manage Note Types. Select one of the duplicate note types, click Rename, and give it a new name (you can change it back later if you wish).

  • Open the browser and click on one of the remaining note types with a duplicate name. Select all the cards, choose Edit → Change Note Type, and select the note type you just renamed for "New note type." Repeat this step as necessary.

  • Close the browser, go back to the Manage Note Types dialog box, and delete the now-unused note types. If you wish, you can change the one you renamed in step 2 back to its original name.

Unused tags remain in browser list

Removing tags from notes (or notes from your collection) will sometimes leave tags in the left pane of the browser that are no longer used on any cards. If you wish to delete these unused tags, you can do so by choosing Tools → Check Database from the menu in Anki’s main window.

For the curious, this is due to performance issues (it would cause significant delays to check every tag in the collection every time a tags or card were deleted).

The sync protocol does not currently cover tag deletions, so if you use Anki on multiple devices, after checking the database, please go to Settings>Preferences>Network and check the box to force a one way sync, choose Upload when syncing to upload to AnkiWeb, and then sync your other devices to download the updated collection to them.

Making subdecks top-level decks again

If you have organized your decks into a tree, whether intentionally or not, you may wish to eventually move a subdeck back to the top level. To do so, you can drag it to either the very top or the very bottom of the deck list. (Alternatively, you can rename it and remove everything before the deck’s displayed name.)

Can I sync only some of my decks?

Anki stores all your decks in a single collection file, so there is no way to sync only part of a collection. However, there are several possible workarounds that may be useful:

Use two profiles. You can store the decks you do not want to sync in a separate profile (you can create and manage profiles by choosing File → Switch Profile). This is useful if you have a lot of media that you have no need for on your mobile device, or if you cannot place some data on AnkiWeb because of security or confidentiality issues. However, it has the disadvantage that you will have to switch profiles to review all of your decks, and you will not be able to get combined statistics easily.

If you decide to use two profiles, you can easily move data between them by exporting .apkg files with scheduling information and media.

Use subdecks. If your primary objection to syncing all of your decks is that you simply don’t need some of them on the mobile device and don’t want to clutter up the screen, you may choose to keep them in your collection and sync them, but keep them out of the way in a separate deck. One way to do this is to create a deck called ~ Desktop Only or something similar and drag all of your desktop-only decks underneath it (the tilde keeps it at the bottom of the deck list; you can use an underscore if you want it at the top or nothing if you want it to sort with the other decks). You can then keep this deck collapsed on your mobile device. While the information will still sync, you will not have to see it.

How can I work with someone else to create a deck?

Anki’s collaboration support is limited at the moment, but it is possible for multiple people to work on content together.

If you are creating cards that have no sounds or images, then the easiest option may be to take advantage of an online document collaboration service such as Google Drive.

With this system, you create your cards in a spreadsheet (one column per field in the note type you’re using). To allow updating easily, the first column should be one that you do not expect to change if you update the cards. You can add and edit cards together at whatever time you want; when you’re ready to update your collection with new and updated cards, each user can export the spreadsheet to a text file and import it into Anki .

If you are creating cards that contain images or sounds, it gets more complicated. You can use the above approach, but it means you’ll need to distribute the media files separately. Instead, we recommend taking turns to create the content. For example, if students are collaborating on a class, student A creates a deck "lesson 1" and puts all the first lesson content in it, then student B creates "lesson 2", and so on. As each lesson is done, the student exports the deck to an apkg file, and uploads/emails/etc it, and the other people import it.

Using a separate deck for each unit of work makes it easier to export the content separately, instead of sharing everything that’s been created so far (which would lead to large files). After other users import the content, they can move it to another deck if they wish, using the computer version.

Advanced users can skip the separate deck step by instead creating a filtered deck using something like 'added:7' to only include cards added in the last 7 days, and then exporting that filtered deck to share.

Merging/combining two decks

Anki does not have an explicit feature to combine decks, but you can accomplish this easily by moving all the cards in one deck to the other deck. Please follow these steps:

  • Open the browser (click Browse at the top of Anki’s main window) and select one of the decks you want to merge in the left pane.

  • Select all the cards (Edit → Select All or Ctrl-A) and click the Change Deck button on the toolbar. Select the other deck and click Move Cards.

  • If you want to merge more than two decks, repeat steps 1 and 2 as necessary until you have only one deck remaining.

  • Close the browser to return to the deck list and delete the now-empty deck(s) by clicking the settings button to the right of each. (Anki will warn you if you try to delete a deck that still has cards in it.)

Printing cards in your collection

Some people like to print the cards in their collection so that they can review them on paper or for other reasons. Before you do this, please keep in mind that Anki is most effective when you study only through the application. Studying a list of your cards will necessarily require you to study them at suboptimal intervals compared to the ones Anki gives you.

Printing in Anki is handled by the Basic Printing Support add-on. If you have trouble getting your browser to open, please follow the directions in the review "WORKS, but does not open the browser automatically", located on that page.

Synchronizing multiple profiles

Profiles are a feature designed to allow multiple people to study with Anki on the same device. They may also be useful for testing and other similar purposes, but this is not their primary purpose. Profiles are not recommended for dividing up your content, as doing so is unnecessary and limits your options in terms of viewing statistics and moving content around.

With their original purpose in mind, Anki is designed so that each profile syncs with a single AnkiWeb account – this way, each user can have their own account and use it on whichever devices they want.

This means that if you want to sync multiple profiles between devices, either because you have more than one for yourself or because you are setting up Anki for another user, you’ll need to create one AnkiWeb account for each. Once you’ve done so, you can use the sync button in each profile to set up syncing for it.

Syncing from a given profile only syncs the content of that profile; if you want to sync multiple profiles, you’ll need to open each of them in turn.

Splitting a field into multiple fields

Sometimes you may create a deck, or download a shared deck, with several things in one field, such as text and audio, but then later decide that you would rather have the information in two fields so that you can have more precise control over what displays on each card. One option is to add a new field and then manually cut and paste the content between fields; this may be the fastest if you have less than a hundred cards or so, but otherwise it will be very tedious and slow. Here is a method you can use based on exporting to a text file and doing a search and replace; as an example, we’ll focus on

  • If the field you want to split is the first field, make a different field the first field by using the Reposition button in the Fields dialog.. This field needs to be unique, so that no two cards have the same content in that field. If you don’t have any unique fields except the one you’re trying to split, you can use the add note ID add-on to add a unique field to the notes.

  • Export the entire deck to a text file, using the Notes in plain text choice.

  • Add a new field to your note type. The new field should come immediately after the one that you’re trying to split, so if you had a "Word and Audio" field, you could rename it to "Word" and then add an "Audio" field and reposition it to go after the "Word" field.

  • Open the text file and do the search and replace. If your text editor supports a certain form of regular expressions, this might work for the expression: s/\[sound/\t\[sound/. Otherwise, if you’re not sure how to form the expression, you can ask on the Effective Learning forum or look for regular expression help on the Internet.

  • Import the text file back into your collection, making sure to use the correct note type and deck. Your notes will be updated with the newly split field.

If you run into problems, please ask on the Effective Learning category, as helping with this kind of thing is outside the scope of official support.

Settings for using Anki to prepare for a large exam

If you have started using Anki to help prepare for a large exam some weeks or months in the future, you may wonder how you should best configure it to get you ready for the test. Anki’s default settings are primarily configured to be useful for learning and remembering information over the long term, but this is usually the best way to prepare for an exam as well – you just need to make sure that you finish the material in enough time to be ready for the exam when it comes.

How many new cards per day?

The most important question is how many new cards you need to study every day in order to be ready by the time the test comes around. A very simple way to calculate this is to divide the total number of cards you have by the number of days you have to study, but before doing this, you should usually make a couple of modifications to the number of days you have to study:

  • If you have the time, generally it is a good idea to leave 2–4 weeks between the time you will study the last new material and the time you will be tested on it. This way, you have time to consolidate all of the material so you will feel confident on it, as well as some time to do extra review right before the test. So you should subtract somewhere between 14 and 30 days from the number of days you have left.

  • If you’re like most people, you probably will miss a few days of study now and then, so it’s a good idea to plan to subtract a few days for this so that you won’t get further behind when you do.

  • If you anticipate adding at least a few extra cards between now and the exam, you may want to subtract a couple of extra days for these cards. However, you may also find that some cards you have already created or downloaded are not useful and you can delete them, so you may or may not want to subtract days for this.

After making these modifications, you can divide the total number of cards in your deck by the adjusted number of days to get the number of new cards per day you should study; you can set this number on the new cards tab of the deck options screen. You can find out how many new cards are in the deck by selecting it in the deck list, choosing Browse at the top of the window, pressing Enter to search for the current deck, and looking at the title bar.

Doing extra review

If you get through all of your new cards with time to spare and your exam is in a couple of days, you may wish to run quickly through all of your cards or some subset of them to brush up on the ones that you’ve forgotten since your last review. You can use Anki’s custom study feature to study extra cards; please see the linked section of the manual for instructions and available options.

How do I move cards between decks?

You may want to move cards between decks for a variety of reasons, for example:

  • you accidentally put them in the wrong deck

  • you made a single large deck and want to break it into several smaller ones

  • you made several small decks and want to combine them into a larger one

The browser offers a Change Deck button on the toolbar for these kinds of tasks – select the cards you want to move from the old deck, click the button, and select the deck you want to move them to.

See also Merging/combining two decks for more precise instructions for that exact situation.


If you want to move cards between profiles, or share cards with other people, you can use Anki’s export function to export a packaged deck. If you want to share or move to a new profile only some of the cards in a deck, you can first use the change deck option above to move them into a temporary deck, then export that deck.

Anki Ecosystem

Windows Phone & Windows RT

At the moment there is no Anki client for Windows Phone or Windows RT. Due to limited resources, a client for these platforms is not expected in the near future. In the mean time, you can still use Anki via AnkiWeb, and Anki will work on the Windows Surface Pro.

Windows Phone’s Internet Explorer has a bug where it renders AnkiWeb smaller than other mobile browsers. If you install Chrome on your Windows Phone device and access AnkiWeb through that, the interface should be more usable.

Accessing introductory videos without using YouTube

If you’re behind an Internet filter that blocks YouTube, such as China’s filtering system or a school’s system, you can access the introductory videos at the download mirror.

Can I run my own AnkiWeb?

Sorry, AnkiWeb is only available as a hosted service.

Are there limits on file sizes on AnkiWeb?

Collections on AnkiWeb are limited to 100MB, not including media. Most users will never reach this limit, as it would require tens of thousands of extremely large cards. (25,000 average-sized cards and several years of review history can usually fit in 25MB.)

At the moment there are no limits on the size of your media, although the size of individual media files is limited to 100MB.

As the usage of Anki and AnkiWeb increases, at some point a pricing system may be introduced where basic, low-capacity accounts are free and heavier users can pay more for more space.

Can I use Anki in a company or school?

The following is provided for your convenience. For the exact terms of the computer version license, please read the LICENSE file distributed in the Anki source package.

You are free to use the computer version of Anki in a school or company. As per the terms of the license, if you modify Anki, you must make your modifications publicly available.

AnkiWeb is intended for individual users. People in a school or company are welcome to sign up for their own accounts, but teachers or company staff should not create accounts in bulk for people. AnkiWeb does not currently provide any means of monitoring activity on students' accounts.

A copy of AnkiMobile must be purchased for each user who wants to use it. Volume licensing is available for academic institutions.

The cards you create with Anki are your own, so you are free to license them as you please, and sell them if you wish. Anki does not include any DRM features to prevent users from sharing decks, as its open-source nature means any such protections could be bypassed easily. If your decks turn up on the Internet in violation of your copyright, you are of course free to send takedown notices. If you find your copyrighted content has been uploaded on AnkiWeb’s list of shared decks, please let us know and we will remove it as soon as possible.

We do not have the resources to create custom versions of Anki, AnkiMobile, or AnkiWeb at this time, whether to add DRM or other features. You are free to modify the desktop version of Anki yourself in accordance with the license (see the first paragraph of this article).

I’m going on vacation. Can I pause the scheduler?

Being able to come back from a break to find Anki in exactly the same state you left it in may sound attractive, but unfortunately while it’s easy to tell the computer to suspend its estimates of how quickly you are forgetting, it’s not possible to suspend your memory, so memories will continue to decay if you don’t revise. If you paused the scheduler, you would be delaying the review of every card in your deck, increasing your chance of forgetting every one of them, even those that would normally have appeared after you returned from your break.

For this reason, Anki does not provide the ability to pause the scheduling algorithm. Instead, try reviewing ahead using the custom study feature before you leave and/or setting a daily limit on the review tab of the deck options to make it less painful to catch up when you come back.

Can I use Anki on a Chromebook?

Chromebooks only support AnkiWeb. As AnkiWeb is intended as a supplement to the computer version of Anki and not a standalone system, you will be limited in what you can accomplish if you do not have access to a normal computer as well.

Due to limited development resources and their small portion of the market, a version of Anki for Chromebooks is unlikely to appear in the future.

Why does AnkiMobile cost more than a typical mobile app?

AnkiMobile is not a standalone app - it is intended to be used in conjunction with the online synchronization service and open source computer version that I’ve made available for free for the last 10 years. Working on these three platforms is a full time job, and AnkiMobile is my way of putting food on the table and supporting future development.

Because there are so many $1 apps out there, some people are surprised by the price. But when you factor in the computer version, synchronization service, and free updates, AnkiMobile’s price is quite competitive. At the time of writing (2013-10-04), SuperMemo’s computer+iPhone version will set you back $60, and MentalCase’s combo will cost you $29.95.

Whether you find AnkiMobile’s price to be a good deal will ultimately depend on your needs. If you’re an existing Anki user that has invested many hours studying on the computer, AnkiMobile provides an easy way to do your studies anywhere while taking advantage of the advanced scheduling and formatting features that Anki provides. On the other hand, if you’re looking for something inexpensive and simple and don’t mind being restricted to your Apple device, there are cheaper alternatives out there that you may want to consider.

Some frequently asked questions:

"You’d make more money if you priced it cheaper."

I have experimented with different price points in the past, and reducing the price resulted in a net decrease in income. Games like Angry Birds are able to make a profit because they appeal to a wide audience. Spaced repetition flashcard apps are quite a niche market in comparison. For this reason, neither a price change nor a sale is likely in the foreseeable future.

"It’s too expensive in my country."

I am not against the idea of providing different prices based on a country’s average income, but Apple does not make it possible to set different prices for different countries. It is also not possible to offer discounts to individual users.

"As a student, I think it’s too expensive."

Please compare it to the price of the average textbook and then consider how many hours of use you get out of each. If you don’t use Anki enough to justify the price, then you’re welcome to use AnkiWeb instead or look into cheaper alternatives.

"Can I get a free copy for personal use, or for writing a review?"

Sorry, I do not offer promo codes, as preparing them takes time away from development.

"You should just rely on donations."

Unfortunately that would not be enough to live on. No matter how much people appreciate a product or service, if they’re given the option of not paying, most people will choose not to.

"You should charge for AnkiWeb instead."

Apple’s app store provides a safe and friction-free way of making purchases. Purchasing a subscription from a website requires considerably more effort, and many people are wary of making purchases online.

"Why is the Android version free?"

The Android version is developed by a different group of people, who based it off the computer version I wrote. Because they have day jobs and can only work on it in their free time, AnkiMobile is better supported: no questions or bug reports go unanswered, the app is more polished, and most bugs get fixed quickly.

Cards disappearing and reappearing

Recent Anki versions prevent related cards from appearing in the same study session by default. Please see apps.ankiweb.net/docs/manual.html#siblings-and-burying for more information.

How can I delete my AnkiWeb account?

If you are no longer using Anki, have accidentally created an account, or wish to delete your account for any other reason, you can do so from AnkiWeb.

Before deleting your account, please make sure you have an offline copy of your collection (such as one downloaded by the desktop version when you sync), in case you decide to start using Anki again and want to get your study progress back. Then follow these steps:

  • Go to ankiweb.net and log in with your AnkiWeb ID if you are not already logged in.

  • Click the settings link in the far upper-right corner of the screen, next to logout.

  • Click the small delete account link directly under the settings link you just clicked on.

AnkiDroid is not supported here

AnkiDroid is developed by a separate group of people, and has its own support site. Please see this page:

Can I disable the scheduling algorithm?

The very short answer to this question is “sort of”: there is no way to globally disable scheduling, but there are numerous ways to get around the scheduler (for instance, custom study and filtered decks).

But an answer that consisted only of ways to disable the scheduler would not really be solving the problem. When people ask this question, the real issue is usually that they think Anki’s purpose is different than it really is, and the real solution lies in either adjusting their expectations or using a different flashcard program.

The question is essentially asking if Anki can be turned into a simple flashcard program. The main purpose of a simple flashcard program is to allow you to enter some content and then flip through the cards, like you could with paper flashcards.

People looking for a simple flashcard program to help them study a few cards sometimes stumble across Anki. But Anki doesn’t really fit the description of a simple flashcard program. Anki is built to implement spaced repetition, a system of scheduling the next reviews of information right before the information is likely to be forgotten, making learning much more efficient. It happens that flashcards are the best way to study using spaced repetition.

People who are only looking for the “flashcards” part and not the “spaced repetition” part are likely to be frustrated by Anki. Spaced repetition is fairly simple on its face, but studying with Anki is different from what most people are used to, and the additional complexity will probably be unwelcome at first.

If you’re looking for something simple and have no interest in the idea of spaced repetition, then Anki is really not the right flashcards program for you. There are ways to use different scheduling temporarily, as mentioned in the opening paragraph, but attempts to use these for everyday study often end in frustration, because these features are intended to be used occasionally in specific circumstances rather than for everyday study. While you can twist things around and make Anki do what you want, there are a very large number of freely available flashcard programs, and chances are good that you can find a better one for your needs.

If you’re serious about learning, though, we would encourage you to give Anki a try even if you’re not sure about spaced repetition right now. Many people who use Anki (both serious students and casual learners) find that it becomes an indispensable tool. If you don’t want to try the scheduler on stuff you’re going to be tested on soon, pick something simple that’s easy to place on flashcards (say, part of the periodic table, or a list of the historical leaders of your country) and try learning that with Anki. Perhaps you can find something appropriate on AnkiWeb’s shared decks page and avoid the effort of creating your own deck at the beginning.

If you have questions about using or learning to use Anki, we will of course be happy to help you on this site.

Note types with strange names

After you’ve used Anki for a while and downloaded some shared decks, you may end up with some note types with names like Basic-908e4 or Cloze-37a28. These note types are created when you download a shared deck that uses a note type with the same name as one that’s already in your collection. (If Anki didn’t do this, then it might merge two different note types that happened to have the same name.)

Having these note types in your collection is normal and will not cause any problems, but if you would like to clean up, you can use the following procedure:

  • Compare the fields and card templates of each of the note types using the Fields…​ and Cards…​ buttons in the Manage Note Types dialog (Tools → Manage Note Types in the main window). If they’re not the same, then you should just rename one to something more descriptive. If they are the same, then you can continue with these instructions to merge them.

  • Open the browser and select the note type that you want to get rid of in the left pane. (You can pick either one as long as you’re consistent.)

  • Click in the right pane and choose Edit → Select All.

  • Choose Tools → Change Note Type and change all of the cards to the note type that you’re keeping. (Note that this step will require a full sync to AnkiWeb the next time you sync, so if you have unsynced progress on other devices, you should get everything in sync first. Anki will give you a warning about this.)

  • Close the browser, return to the Manage Note Types dialog, and delete the old note type.

  • Repeat these steps for any other pairs of note types you’d like to combine.

How can I donate?

As Anki is run as a business, we are not able to accept donations. Instead, we make available AnkiMobile to raise funds for development. You can purchase AnkiMobile on your Apple mobile device, and the proceeds from it go towards supporting Anki’s development.

For people who don’t use Apple products, we hope to have more options available for supporting Anki in the future. In the mean time, please support Anki by telling your friends about it!

AnkiWeb account removal

As AnkiWeb is a free service, we need to periodically delete unused account data in order to keep costs down. As mentioned in our terms of service, your data may be deleted if it has not been used in 6 months or more.

Returning to AnkiWeb after your data has expired

If your account data was deleted due to inactivity, you may still be able to recover that data if you have a copy on your computer or mobile device. You can confirm this by opening Anki or AnkiMobile/AnkiDroid to see if your data is still there.

If you’d like to start syncing that data with AnkiWeb again, please start by logging in to ankiweb.net using your Anki ID. If you receive a message that no such account exists, you’ll need to sign up again first - you can use the same email address as before if you wish.

Once you have a valid AnkiWeb login, you can sync your computer or mobile device, enter your details, and then choose "Upload" to send your data back to AnkiWeb. Please make sure to upload, as choosing download would overwrite your local content with your empty AnkiWeb collection.

Avoiding account deletion

Each time you visit ankiweb.net, or use the synchronisation feature in Anki, AnkiMobile or AnkiDroid, your account will automatically be marked as active. The mobile clients do not sync automatically, so simply using them to study will not result in your AnkiWeb account being marked active unless you use the sync button.

If your account has been inactive for 6 months or more, and you used the service for a week or longer, you will receive an email notifying you that deletion is pending. If you’d like to keep your account active, please click the link in the email to verify you’ve received the email and mark your account active again within 30 days.

Backing up your collection

If you’re not planning to study for a while, or if you receive an inactivity notice and don’t wish to renew your account immediately, please ensure that you have a copy of your collection on your local computer or mobile device. Your data should already be on your device if you’ve used Anki’s synchronisation feature. If you’ve only used AnkiWeb before, please install the computer version or a mobile client and sync with AnkiWeb in order to download your data.

Apple Watch Support

Apple’s developer guidelines currently say that apps on the watch should be designed to be used for a few seconds at a time. The watch’s battery is considerably smaller than batteries in phones, so longer activities will quickly run the battery down. For this reason, we’re not sure Anki is a great fit for the watch in its current implementation. The tools and hardware will no doubt improve over time, so an app may be more feasible in the future, and we’ll continue to monitor the situation.

My purchase of AnkiMobile isn’t showing up

Sometimes apps you have previously purchased, including Anki, do not show up in the Purchased list of the app store. However, as long as you are still using the same Apple ID as when you purchased an app previously, you are still able to download it again for free.

Please search your email to locate the previous purchase receipt, and confirm that you purchased AnkiMobile in the past with the same Apple ID as appears in your device’s Settings>iTunes section. Then please search for AnkiMobile Flashcards in the app store, and tap the buy button. As long as you are using the same Apple ID as the original purchase, after confirming that you wish to proceed you should receive a notice saying the download is free.

AnkiApp is not part of the Anki ecosystem

The program called AnkiApp was developed by a separate group of people and is not related to the rest of the Anki ecosystem. It was released years after Anki was already established in the marketplace, so their choice of name is unfortunate as a fair number of people are buying it with the expectation it will function with the other Anki clients, which it does not.

If you have purchased AnkiApp in error, please consider leaving a review on the app store alerting people to the fact that AnkiApp is not connected to Anki. You may also be able to request a refund by contacting the app store you bought it from. For Apple devices, you can find information about refunds here: www.imore.com/how-to-get-refund-itunes-app-store

If you have added content into AnkiApp and would like to move it into Anki, you may be able to do so by exporting your content, then importing the fields.csv file in the zip file you end up with into Anki.

The Anki ecosystem is made up of Anki, AnkiMobile, AnkiDroid, and AnkiWeb, all of which are linked from our official website: apps.ankiweb.net

AnkiWeb and this support site use different accounts

To use AnkiWeb and sync, please sign up for an account on ankiweb.net

To access this support site easily, you can sign up for an account on this site. Please note that if you create an account on this site, you will need to create a separate account to use AnkiWeb and to sync - you can’t use an account created here to log in to AnkiWeb.

Problems

Anki says my clock is wrong

To ensure your scheduling doesn’t get messed up, Anki requires that your device’s clock is set correctly. This means all of the following must be set correctly:

  • the time (including AM/PM)

  • the date

  • the timezone

  • daylight savings

If you receive an error about the clock being wrong, please check to ensure all of the above are set correctly. Please note that even if your system is showing you what looks like the correct time, if the above settings are not correct, the computer’s internal idea of the correct time may be wrong.

"What should I do if my country has just changed its handling of daylight savings?"

When politicians change the handling of daylight savings time, it can take companies like Windows and Apple time to update their operating systems to reflect the new handling. To work around the problem, you can select a different timezone that has the same UTC offset as your current location, and then update the clock to make sure it is correct. For example:

  • it’s 10AM where you are

  • you’ve checked Google for the current standard time, and it’s currently midnight: www.google.com.au/?gws_rd=ssl#q=utc+time

  • this means you are ten hours ahead of standard time, so your UTC offset is +10:00

  • in your system settings, look for a timezone that is +10:00

  • after adjusting the time zone, adjust the clock so it shows the correct time

"Why doesn’t Anki let me ignore the error?"

If you study while the clock is incorrect, then your progress is likely to be messed up when any of the following happen:

  • the clock is automatically reset to the correct time in an OS upgrade

  • you decide to start using AnkiWeb for backups or deck sharing

  • you decide to start studying on multiple devices

  • you move to a new machine after the old one breaks

  • you manually change the time because other apps also notice the clock is wrong

Anki refuses to start up because an incorrect clock will also cause issues like file modification times to be wrong, and it’s better to address the issue than hide it away and risk issues in the future.

Anki’s not showing me all my cards!

Unlike traditional flashcard programs that show you the same content over and over again, Anki is designed to show you material when you’re about to forget it. This means you don’t end up wasting time reviewing material you already know well, and it allows you to study more efficiently by focusing on the material you’re about to forget. So rather than trying to go through all your cards like you may be used to, it’s advisable to study cards as Anki presents them to you.

Anki also limits the new cards it introduces per day to 20 by default, because if you introduce too many at once you’ll end up with many reviews to do in the following days. To alter this limit, you can edit the deck options or use the custom study feature.

If you really don’t want to wait for reviews to become due again (due to an upcoming test, etc), you can tell Anki you’d like to review outside of the regular schedule. If you just want to quickly flip through some cards to check for mistakes after creating them or get a general idea of what’s there, you can use the Preview button in the upper-right corner of the browser.

If you’re seeing the card count drop down by more than one after certain operations like an undo, please see anki.tenderapp.com/kb/problems/i-created-reversed-cards-but-theyre-not-showing-up

Errors when downloading shared decks/plugins or syncing

If you receive a message like this:

Traceback (most recent call last):
  File "ankiqt/ui/getshared.pyc", line 67, in fetchData
  File "urllib2.pyc", line 126, in urlopen
  File "urllib2.pyc", line 397, in open
  File "urllib2.pyc", line 510, in http_response
  File "urllib2.pyc", line 429, in error
  File "urllib2.pyc", line 369, in _call_chain
  File "urllib2.pyc", line 605, in http_error_302
  File "urllib2.pyc", line 397, in open
  File "urllib2.pyc", line 510, in http_response
  File "urllib2.pyc", line 435, in error
  File "urllib2.pyc", line 369, in _call_chain
  File "urllib2.pyc", line 518, in http_error_default
HTTPError: HTTP Error 404: Not Found

Then the version of Anki you are using is no longer supported. Please upgrade to Anki 2.

The old plugins are still available for download, and are hosted on apps.ankiweb.net/download/mirror/archive/plugins-1.2/

Automatically switching language when adding

Anki 1 had a feature (only on Windows machines) where each field would remember the keyboard input mode you’ve selected. Anki 2 uses a different approach to showing fields, and unfortunately the toolkit doesn’t seem to to support automatically switching languages anymore.

It’s recommended that you set up Windows so that you can use a simple combination of keys to quickly switch back and forth between other languages. After doing this, you will be able to quickly switch back and forth not only in Anki, but in other programs as well.

Cards are being placed in the "Default" deck

This is caused by an AnkiDroid bug. To fix the problem, please click the Cards button while adding a card, and ensure More>Deck Override is turned off.

A translation is wrong in Anki’s interface

Anki is translated into different languages by volunteers. If you find a mistake in a translation, please consider contributing a fix on the translating site. It’s easy to make changes, and the changes you make will be included in the next release.

For more information, please see apps.ankiweb.net/docs/manual.html#_app_translations

Problems inputting Japanese text

Unfortunately the toolkit Anki uses doesn’t handle inputting Japanese text well. This can cause the cursor to appear in front of a word you start typing, or to disappear completely. You can minimize the problems by making sure to always hit the enter key after typing text or converting it to kanji, and ensuring you don’t switch fields while the text is still underlined.

Hopefully this behaviour will be improved in a future release of the toolkit.

Media is not being uploaded to AnkiWeb

First, please try adding another media file to one of your cards, and then sync again. This will cause Anki to rescan for any changed media.

If media is still not being uploaded, please ensure your system is not stored on a vfat/fat32-partitioned drive, as Anki is not able to track media changes on such drives apps.ankiweb.net/docs/manual.html#_media

Characters are cut off

If you find that parts of your characters are missing, the font you’re using is probably not appropriate for the language you’re studying. To fix this:

  • While an affected card is shown, click Edit, then Cards.

  • Click the Add Field button.

  • Select Front or Back, depending on which side you want the field to be shown on.

  • Choose a font that is intended for the language you’re studying.

  • After clicking OK, you should see the field appear a second time on your card, and this time it should appear correctly. If it doesn’t, add the field again and try a different font.

  • Remove any other {{field}} references on the left side, so that the field only appears once on your card.

Errors when importing (invalidTempFolder)

You may receive an error that ends with:

Exception: invalidTempFolder

If you see this error, please see the following page: apps.ankiweb.net/docs/manual.html#permissions-of-temp-folder

Sounds/images are not appearing on AnkiWeb or the mobile clients

If you created your deck by importing from a text file, or you downloaded a shared deck that was created in that way, it’s possible the filenames in Anki do not match the filenames on the computer. Some computers treat "file.jpg", "file.JPG" and "FILE.JPG" all as the same file, but other computers do not. This means that if the deck contains a reference to "dog.jpg" but the file on disk is "dog.JPG", some devices (including AnkiWeb) will not be able to display the image.

You can confirm this is a problem by editing a card that’s not showing up correctly using the computer version. If audio isn’t working, you’ll see a link like [sound:hello.mp3]. If you see a broken image link, click on that field, then press the down arrow on the top right, choose "Edit HTML", and locate text that looks like <img src="cat.jpg">. Note down the name of the file.

Then open your collection’s media folder apps.ankiweb.net/docs/manual.html#file-locations and locate the file that is referenced. If the file does not use exactly the same combination of lowercase or uppercase letters, you’ve found the problem.

If it was a shared deck, please report the issue to the shared deck author. If the differences in case are regular, you can try fix the problem using Anki’s find&replace feature in the browser. For example, if the link is for "dog.JPG" but the file on disk is "dog.jpg", you can click browse, select all cards, and use find&replace to replace JPG with jpg.

If that doesn’t explain your issue, please check that the computer you’re on is not using a vfat/fat32 file system. Anki currently is unable to detect changes to the media folder when it’s on such a filesystem, so media syncing will not work in this case. A workaround is planned for a future release.

Extra characters appearing on cards

Sometimes users notice that text is appearing in front of or on their cards that they didn’t put there. Usually it is just a couple of letters or nonsense. For instance, on the front side of your card you have written book, but when you review the card it appears as fybook.

This problem is caused by accidentally placing text in the card template. You can solve it as follows:

  • While reviewing, locate one of the cards that has the problem, and edit it. (Alternatively, search for one in the browser.)

  • Click the Cards button.

  • Look in the Front Template box (or, if the text is appearing on the back of the card, the Back Template box). You should see the extra text in there somewhere. Being careful not to delete anything else, remove it.

After you close the Cards dialog, your cards should appear as normal again.

You can only do this on the desktop version at the moment (but when you then sync your collection, it will be fixed on other platforms as well).

Extra copies of a card are coming up

Occasionally you may have been editing a note type and later discover that a number of cards are duplicated (sometimes there may even be more copies).

You can fix this as follows:

  1. Find one of the duplicated cards in the browser.

  2. Click the Cards button.

  3. Select each tab in turn and compare the contents of the template fields and card preview pane. If the card types are identical, delete one of them (More → Delete).

This should remove all the duplicate cards that use this note type. (If you are still having problems, it’s possible that multiple note types have the issue, in which case you can repeat these steps with a card of the other note type.)

"Sync Failed. After syncing, the collection was in an inconsistent state."

To fix this problem, you need to check the collection with the computer version of Anki. If you have reviews in AnkiMobile that you don’t have on your computer, please see the "from mobile device to computer" instructions for how you can export your AnkiMobile progress to the computer version: apps.ankiweb.net/docs/am-manual.html#itunes-import/export

After that, please run:

  • Tools>Maintenance>Check Database

  • Check the Preferences>Network>On next sync, force changes in one direction box

  • Sync.

  • Sync your other devices, and choose to download.

The problem should then be fixed. For those curious as to why this has started happening, AnkiWeb recently started detecting some errors in your collection that it was not noticing before. The most common cause of these errors was pressing the 'preview' button in the add cards window when there’s no text on the fields, which generated an empty note with no cards in previous AnkiMobile releases. The bug no longer occurs in the currently available version, but if you pressed the preview button in previous AnkiMobile versions, the empty notes may still be lurking in your collection.

How can I recover cards or decks?

If you’ve accidentally deleted notes by bumping the delete button, you’ll find the notes listed in a file called deleted.txt in your profile folder.

For bigger losses, Anki provides an automatic backup system, which takes backups of your cards and progress, but not your sounds or images. Please see the following pages depending on the Anki software you’re using:

Stats screen shows negative review time

This issue is caused by a current AnkiDroid bug which will hopefully be fixed soon. For more information, please see the thread on the AnkiDroid issue tracker.

You can fix the problem with this add-on (follow the directions on the description page). This will not prevent it from recurring in the future, but it will fix your statistics for now.

Restoring an Automatic Backup (Recovering from Data Loss)

Sometimes your collection may become very damaged. For instance:

  • You accidentally deleted a card type or hundreds of cards and didn’t notice in time to undo it.

  • Your collection has become corrupted.

  • There was a syncing error and you accidentally overwrote a large number of reviews that you did on another device.

  • …​or anything else that leaves you with lost data.

Anki automatically backs up your collection every time you close Anki or sync (AnkiMobile backs up after fixed time intervals and before syncs), and by default it stores 30 backups. For information on restoring an automatic backup, please visit the relevant page:

Syncing errors with older Macs

If you’re on OSX 10.5 or 10.6, you need to upgrade to Anki 2.0.30, or you may see an error like the following when syncing:

Syncing failed:
'[Errno 1] __ssl.c:507: error:0D0890A1:asn1 encoding
routines:ASN1__verify:unknown message digest algorithm'

2.0.30 does work on these older machines, provided you download the alternate version.

To update, please:

  • visit apps.ankiweb.net

  • scroll to the bottom of the page

  • click the "alternate version" link to download 2.0.30 for older Macs

  • quit Anki if it’s running

  • and install the downloaded file over the old Anki version

I created reversed cards, but they’re not showing up!

In order to prevent it from being too easy for you to answer cards that are based off the same note, Anki automatically buries cards of the same note that are due on the current day when you answer the first card. When you have just created a new deck with reverse cards, this may cause it to appear that there are no reversed cards in your deck at all (since the forward ones will come up first and cause the reverse ones to be buried).

To confirm that this is the case, you can look at the cards in the browser: there should be two cards for each note, and if you click the Preview button and scroll through some of the cards, they should appear in both directions.

The reversed cards will begin coming up for review on the following day. Alternatively, you can click the Unbury button on the deck overview screen (after selecting the deck from the deck list) and increase the number of new cards for the day from the custom study button. If you prefer, you can also disable this behavior on the New Cards tab of the deck’s options.

For more information about how the feature works, please see apps.ankiweb.net/docs/manual.html#siblings-and-burying

Requesting a refund for AnkiMobile

If you’re having problems with AnkiMobile, please let us know and we’ll do our best to help you resolve them.

When you purchase items on the app store, Apple sell the product to you. As we are not involved in the sales process, we do not have the ability to offer you a refund as we have no access to your payment details - Apple does not even inform us who is purchasing the app. For this reason, any refund requests need to be submitted to Apple directly. Please see the following page for more information:

KeyError: 'delays' for people who also use AnkiDroid

You may receive an error message while reviewing, that looks like the following:

Traceback (most recent call last):
  File "C:\cygwin\home\dae\win\build\pyi.win32\anki\outPYZ1.pyz/aqt.webview", line 21, in link
  File "C:\cygwin\home\dae\win\build\pyi.win32\anki\outPYZ1.pyz/aqt.reviewer", line 318, in _linkHandler
  File "C:\cygwin\home\dae\win\build\pyi.win32\anki\outPYZ1.pyz/aqt.reviewer", line 251, in _showAnswer
  File "C:\cygwin\home\dae\win\build\pyi.win32\anki\outPYZ1.pyz/aqt.reviewer", line 617, in _showEaseButtons
  File "C:\cygwin\home\dae\win\build\pyi.win32\anki\outPYZ1.pyz/aqt.reviewer", line 654, in _answerButtons
  File "C:\cygwin\home\dae\win\build\pyi.win32\anki\outPYZ1.pyz/aqt.reviewer", line 637, in _defaultEase
  File "C:\cygwin\home\dae\win\build\pyi.win32\anki\outPYZ1.pyz/anki.sched", line 135, in answerButtons
  File "C:\cygwin\home\dae\win\build\pyi.win32\anki\outPYZ1.pyz/anki.sched", line 595, in _lrnConf
  File "C:\cygwin\home\dae\win\build\pyi.win32\anki\outPYZ1.pyz/anki.sched", line 1099, in _lapseConf
  KeyError: 'delays'

This is caused by a bug in AnkiDroid 2.4, where it doesn’t create filtered decks correctly. Please remove any custom study & filtered decks that you created with it, and recreate them on the computer version to fix the problem. Please note that rebuilding is not sufficient; you need to remove the old copy first.

A deck I want has disappeared from AnkiWeb

The shared decks on AnkiWeb are provided by other Anki users. If the deck author has chosen to remove a shared deck, the deck has been deleted from our servers, and we do not have the ability to restore it.

Shared decks may also be hidden from view for other reasons, such as their copyright status needing to be confirmed. For legal reasons, we can not restore decks in these cases until we hear back from the deck author.

Unexpected empty cards when using cloze deletion

When using cloze deletion cards, it’s fairly common to end up with empty cards—where you come to them in review and are told "the front of this card is empty." In all likelihood, this does not mean you have done anything wrong, nor does it indicate anything wrong with your collection. Rather, it happens when you create some occlusions on a card, then delete some of them. For example, you might make a c1 and a c2, then decide they should both be tested at the same time and change the c2 to a c1. This will then result in an empty card, because Anki has already created a second card for the second cloze, and in order to prevent loss of scheduling information if the change was accidental, Anki does not delete these cards automatically.

If you run Tools -> Empty Cards as the message suggests, you can delete these empty cards and get your collection back to how you expect it. This will not delete any notes, so you do not need to worry about losing data. If you are using the mobile version, you can bury the card that gives this message until you get back to your desktop computer and have the chance to run the Empty Cards function.

Errors after upgrading to Windows 10

Permission Problems

After upgrading to Windows 10, some users are encountering error messages when starting Anki, or exporting decks. Windows appears to be changing the permissions on all files in your Documents folder on upgrade, so you no longer have permission to write to them.

To fix the problem for Anki, you can do the following:

  • in the search area of the start bar, type cmd.exe and hit enter

  • in the window that opens, type the following and hit enter to see your username:

whoami

  • type the following, hitting enter after each line, and replacing __ (and keeping the :F part) with your username from the previous command

cd %USERPROFILE%

icacls documents\anki /grant __:F /t

That command should fix the permissions on Anki’s data folder, and you should now be able to start the program. If you continue to have issues with other programs, you can try replacing 'documents\anki' with just 'documents' to fix the permissions on your entire documents folder.

If you find the problem is fixed but comes back, your problem may be complicated by a OneDrive issue. If you’re using OneDrive (Microsoft’s cloud storage system), please see http://answers.microsoft.com/en-us/windows/forum/windows_10-security…​

Antivirus/Firewall/Anti-Malware

Some users have experienced "permission denied" or "readonly" errors that were caused by security software installed on their machine. You may need to add an exception for Anki, or try temporarily disabling the software to rule it out as the cause. Some users have reported that simply turning off their software did not fix the problem, and they either had to add an exception for Anki or uninstall the software.

Debugging Permission Problems

If problems persist after you’ve ruled out Antivirus and related programs, have performed the steps above to fix permissions, and don’t use OneDrive, please run the following commands in cmd.exe, pressing enter after each one.

whoami

icacls documents\anki /t

Then please copy & paste or screenshot what you see, and post it to us in a support ticket.

Custom Study crashing in AnkiMobile 2.0.19

Some users are experiencing crashes when tapping the Done button in Custom Study in AnkiMobile 2.0.19. A fix for a related problem was in 2.0.18, but unfortunately this did not fully solve the problem, so we will have another release to Apple in the next week or two.

In the mean time, the problem is easy to work around. In the Custom Study screen, tap on the number at the bottom right ("Extra new cards"/"Extra review cards"), then tap on the grey area to hide the keyboard again. After that, the problem should no longer happen on the deck you have selected.

Errors syncing or accessing ankiweb.net

We recently switched DNS records for the Anki domains. Usually this would be a smooth transition with no interruption to service, but unfortunately the previous provider handles this terribly - instead of continuing to respond to queries for the few days it takes to fully transition over, they immediately start returning errors. I’ve reported the issue to them, but they do not seem to be interested in fixing it, so unfortunately we’re stuck in a situation where some users will have trouble accessing the site for up to 48 hours while the transition completes.

If you are receiving this error, it is possible to work around. Your ISP’s servers have cached the old location of the DNS records, but Google’s DNS has an up to date copy. If you switch to Google’s free DNS servers for the next few days, it should fix the problem. Google provide a guide for how to change the DNS servers on common platforms. Please be careful when making any changes.

On iPhone/iPad wifi: www.macinstruct.com/node/558

If you do not feel comfortable making changes, the problem should resolve itself within 48 hours. Sorry for the inconvenience :-(

My antivirus program says Anki is infected!

Antivirus programs sometimes get things wrong. This is especially so when we release a new version - some AV programs assume that because the new version has not been seen in the past that it must be dangerous. Anki updates are built on machines dedicated to that purpose, so the chances of a virus infection are very slim. If you’ve received a message from your antivirus, please contact your AV vendor to let them know about the false positive.

Sound/image media files have gone missing!

Anki stores your cards' sound and image files on your computer, in your Anki folder, in User 1/collection.media. If you delete any files from that folder, Anki notes they have been removed and on the next sync it will remove them from your other devices as well. What sometimes happens is users tidy up files on their computer, and accidentally remove the sounds and images that their cards use, resulting in sounds not playing or images not appearing. This is particularly easy to do accidentally on a Mac with the "all my files" feature of the Finder, but can happen on other platforms as well.

If you’ve accidentally deleted the files your cards were using, you may be able to restore them from your recycle bin / trash can if the trash has not been emptied yet. Placing them back in the collection.media folder should cause the media to work again.

Due to the size of sounds and images, AnkiWeb does not keep backups of media files, so once they have been removed from AnkiWeb we are not able to recover them for you.

If you’ve lost your sound and images, but had obtained them from a shared deck, if the shared deck is still available you can import it into a new profile, and then copy the sounds and images from it into your original collection to restore the data.

Sounds don’t play automatically in AnkiMobile

AnkiMobile won’t play audio automatically if you have the mute/vibrate switch on your phone turned on. To get the audio to play automatically, you can either turn the switch off, or turn on the "Always Duck + Ignore Mute" option in AnkiMobile’s review preferences screen to have AnkiMobile ignore the mute switch.

macOS Sierra’s Documents in iCloud feature can cause data loss

The latest version of macOS introduced a feature that stores your Documents and Desktop folders in iCloud. This causes a number of problems with Anki (among other apps), so we strongly recommend disabling the feature and then upgrading to the latest Anki, which moves the Anki files outside of iCloud.

Disabling the feature

  • Click the Apple icon at the top left of the screen and choose System Preferences.

  • Click the iCloud button.

  • Click 'Options' next to iCloud Drive.

  • Make sure 'Desktop & Documents Folders' is deselected.

If the item was already deselected, you can upgrade to the latest Anki without problems. If it was previously selected:

  • After disabling the feature, you’ll need to move your files from iCloud Drive back to your local Documents folder in the Finder, and it should automatically download any missing files in the process.

  • Check that your Anki folder is directly in your Documents folder - if it’s in a subdirectory, you’ll need to move it to Documents.

Upgrading Anki

The latest Anki version stores your Anki files outside your Documents folder, so iCloud can not damage them. Please make sure to upgrade only after you’ve ensured iCloud is disabled, or else you will run into problems.

Recovering from data loss

  • If your cards have disappeared but they are still on AnkiWeb, you can sync and choose Download. If your cards are not on AnkiWeb, you may be able to restore from an automatic backup: apps.ankiweb.net/docs/manual.html#backups

  • If sounds and images have gone missing, they should be restored once you disable the feature and copy all of your data off iCloud.

More info for the technically inclined

  • Files that are stored in the cloud but not on the local machine - such as when 'optimize storage' is on, or when the files were added on another machine and have not been downloaded yet - are invisible to Anki. If your collection file is missing when Anki is started, it’ll create a new one, and that will end up being uploaded to iCloud, overwriting your cards.

  • Anki will not be able to show any sounds or image files that have been 'optimized' (ie, are missing from the local machine). Worse yet, if they were previously in your collection.media folder and have since disappeared, Anki sees that they have been deleted and will delete them from AnkiWeb on a subsequent sync, as it has no way of telling that the files were removed by iCloud and not the user. This can result in sound and image files being removed from your other devices as well. The files should still be iCloud, and Anki will be able to use them again once you download them.

  • When more than one Mac is added to iCloud, macOS renames your documents folder to "Documents - [computername]". This can cause Anki to no longer find your files, as it expects the Anki folder to be in the top level of Documents.

 


2017-12-04

The content here is distributed under the CC BY-SA license:
creativecommons.org/licenses/by-sa/4.0/

 

 

Anki 2.1 Beta

Translations

At a glance

  • Uses the same scheduling, syncing and file format as Anki 2.0.x, so you can upgrade and downgrade at will.

  • Upgraded to the latest support libraries (Python 3, Qt 5.9), bringing fixes for crashes, better handling of high resolution displays, non-Latin text, and the latest web standards.

  • Requires a modern system - Windows 7+, OSX 10.10+, or a Linux distro from around 2014+.

  • Add-ons will need to be updated to work with 2.1.

Stability

You can be fairly confident the beta will not eat your data. 2.1 has been in alpha status for the last year as we waited for toolkit issues to be resolved, and we have not had any reports of data loss during that time. It’s still a good idea to make backups however - please use File>Export to export 'all decks' with scheduling and media included before you upgrade, and consider doing it periodically after upgrading as well.

Add-ons

Most add-ons will need to be updated before they’ll work with Anki 2.1. When you install 2.1, it will create a separate folder for add-ons, and not import any existing ones you have installed.

If you’re an add-on author, you can read more about the required changes on apps.ankiweb.net/docs/addons21.html

Video drivers

If you run into crashes or black screens, your video drivers (such as nouveau) may be to blame. On Linux, please try start the beta with the following:

QT_XCB_FORCE_SOFTWARE_OPENGL=1 bin/anki

On Windows, please try opening cmd.exe, and typing the following

cd ""\program files (x86)\anki"
set QT_OPENGL=angle bin/anki
anki

If that doesn’t help, replace 'angle' with 'software' and try again.

Users on a 32 bit Windows install will need to use "program files" instead of "program files (x86)".

Scaling issues

If you find the text is the wrong size or parts of the interface are clipped off, there are two environmental variables you can try:

  • ANKI_NOHIGHDPI=1 will turn off some of Qt’s high dpi support

  • ANKI_WEBSCALE=1 will alter the scale of Anki’s web views (like the deck list, study screen, etc), while leaving interface elements like the menu bar alone. Replace 1 with the desired scale, such as 1.5 or 2.

Please see the above section for how to set environmental variables.

If you find you need either of these environmental variables, please report on the beta testing site below.

Problems

If you run into any issues, please let us know on the beta testing section of our support site:

Downloads

You can get the latest beta from apps.ankiweb.net/downloads/beta/

Use .exe for Windows, .dmg for Mac, and .bz2 for Linux.

Detailed changes

Changes in beta 27

  • Added an option to switch cards to white on black text in the preferences screen. To customize, see apps.ankiweb.net/docs/am-manual.html#night-mode-styling

  • Prevents shortcuts in the editor from triggering an error when no field selected.

  • Play any audio on the question as well when 'show both sides' enabled in preview window.

  • Fix the focus being lost when add-ons like Japanese Support change field contents.

  • Force text to wrap instead of showing a scroll bar.

  • Added Catalan translation (thanks to Guillem), and other translation updates thanks to other contributors.

Changes in beta 26

  • Added some environmental variables to control UI scaling - they are documented above.

  • Faster syncs when you have a lot of media and no media changes were made since the last sync.

  • Allow importing of files from recent Mnemosyne versions.

  • A translations fix (thanks to Piotr, and all the other people who have been contributing translations).

Changes in beta 25

This release ensures that when pasting remote image links, they will be converted into local images even if the link doesn’t end with a recognizable extension.

If a search for 'http' in your collection reveals remote images, you can use ankiweb.net/shared/info/1293255374 to turn them into local images.

Also:

  • Catch errors when pasting, and time out after 30 seconds.

  • Fix errors after deleting a deck with a subdeck that was the default deck.

  • Fix an error when pasting images that had previously been downloaded.

Changes in beta 24

  • Fix stuttering when more than one audio file on a card on Windows.

  • Fix broken image links when pasting between fields.

  • Don’t import styling changes if the local note type has been modified more recently.

  • Fix errors when pressing keys quickly after a sync started.

  • Fix startup crashes on some Linux distros.

Changes in beta 23

  • Fix field contents not persisting when dragging media files onto field.

Changes in beta 22

  • Fix hang when copying and pasting between fields.

  • Strip excess whitespace when pasting external content, which was breaking cloze deletions.

Changes in beta 21

Pasting now strips more by default, such as links, headers and tables. Holding down the shift key while pasting will reduce the level of filtering.

Also:

  • Pasting a link to an image or sound hosted on a HTTPS website should no longer fail.

  • Fix the question audio replaying when answer shown.

  • Make sure the interface is disabled while progress/sync bar displayed.

  • Fix error when undoing then immediately hitting enter on a type answer card.

  • Fix missing styling when answer revealed too quickly.

  • Fix shift+tab in the editor on macOS.

  • Filter out background and font style when pasting between fields.

  • Don’t leave a .wav file around when recording.

  • Drop support for experimental 'new style whitespace' handling.

  • Fix inability to paste link to .aspx file.

  • Fix media check not detecting media references in cloze deletions.

  • Ctrl+d can be used in the tag selector of custom study to deselect all tags.

  • Fix link to _anki.png in template not working.

Changes in beta 20

  • Probable fix for intermittent startup error on Windows.

  • Fix 'not responding' process on macOS.

  • Don’t capture media keys.

Changes in beta 19

Built with the recently released Qt 5.9.2. Please report any improvements or regressions.

Changes in beta 18

  • If mpv is unavailable or too old, use mplayer instead.

  • Remove "unexpected DPI" message and --lodpi option; tweak handling of scaling.

  • Don’t show album artwork when playing audio.

  • Increase the default number of backups, and stop sending them to the recycling bin.

  • Show field numbers in the Fields dialog.

Changes in beta 17

This release experiments with a switch from the old "mplayer" program to "mpv", which is a newer program based on mplayer. mpv is bundled in the Windows and Mac builds - Linux users will need to ensure it is available on the system. The change will hopefully address issues people had with audio being cut off or not playing properly. Please report any improvements and any regressions.

Also:

  • Added --lodpi argument in an attempt to address wrong clickboxes for some people on Windows. If Anki suggests you use it, please right click on the Anki icon and add --lodpi to the command line, then start Anki again. Please report if it fixes or does not fix the problems.

  • Another fix for MathJax+cloze deletion.

  • Ignore math environments outside of MathJax tags.

  • Fix a problem starting Anki on systems with non-Latin hostnames.

  • Add shortcuts to the advanced menu in the editor.

  • Fix text:Field not stripping HTML if it was split over multiple lines.

  • Fix filenames not being normalized when importing.

Changes in beta 16

MathJax display environments now need to start with \[ and end with \\], instead of using $$. Shortcut keys have been added to the editor to make using these easier, but existing MathJax cards will need to be updated unfortunately.

Backups and collection exports now use a separate .colpkg file extension, which allows translating of their titles and allow multiple collection exports to be stored in one folder. The other clients will be updated to understand these extensions in the future; for now if you need to interact with them, you can rename the file.

Also:

  • Fixed backups not being made correctly on some systems.

  • Fixed old backups not expiring. Anki will only look for .colpkg files now, so you will need to manually remove your old .apkg backups.

  • Collection exporting and saving graphs to PDF now lets you choose the target folder, and the default folder is now the documents folder instead of the desktop.

  • Fix the preferences screen loading slowly, opening multiple times, and not closing when the collection is closed.

  • Fix preview window not closing on collection close.

  • Fix inability to preview the answer of the last card.

  • Cloze deletions should now properly remove highlighting only when in a MathJax environment.

  • Add-ons now have a persistent user_files folder - please see the add-on docs.

  • Tweak margins in deck options.

  • Fix searches for decks with parens in the name.

  • Fix Anki interface displaying incorrectly when Windows has an incorrect mime type for css files.

  • Tweaks to the text displayed when an error occurs.

  • The "oldest seen first" option in filtered decks now sorts based on last review instead of card modification time.

  • The prepareQuestion/prepareAnswer hooks have been merged into prepareQA - please see the add-on docs.

  • Don’t force audio format on Windows - please let me know if you encounter regressions playing audio.

  • Clicking on a note type in the browser now searches with the name instead of the note type ID.

  • Refuse to run when locale configured incorrectly on Linux.

  • Fix remaining issues with formatting being lost when cutting and copying between fields.

  • Remove the trailing <br> when saving a field.

  • Fixed translations in dialog buttons.

Changes in beta 15

  • Look for changed media files when syncing, even if no files have been added or removed. If you have many media files and notice a slowdown when syncing, please let me know.

  • A fix for the UI sometimes loading improperly.

  • Various improvements to the tag completion area (thanks to Glutanimate).

  • Hotkey for "show both sides" in preview window (thanks to Glutanimate).

  • Fix margins in preferences screen.

  • Some fixes for the add-on configuration code.

  • Don’t strip formatting when pasting from one field in Anki to another.

  • Check Media now catches invalid filenames on Linux systems.

  • Fix toggling of suspend etc when multiple cards selected.

Changes in beta 14

Added a simple configuration mechanism for add-ons, intended for use when users would have previously had to edit an add-on’s source code. Configuration is not lost when add-ons are updated. For more info, please see apps.ankiweb.net/docs/addons21.html#configuration

Also:

  • Option for showing both sides in preview screen.

  • When a user starts Anki 2.1 for the first time, it will now import the profile data from Anki 2.0.

  • Add JS hooks to the reviewer for doing things like automatic scrolling at the right time: apps.ankiweb.net/docs/addons21.html#javascript-in-the-reviewer

  • Fix scrollbar appearing at certain DPI scales.

  • Fix 'clear flag' shortcut.

  • Add 'collection' and 'current deck' to the sidebar.

  • Add recording icon back to record window.

  • Warn about subfolders in media check.

Changes in beta 13

Add-on authors can now upload separate files to AnkiWeb for 2.0 and 2.1 support, and Anki 2.1 will automatically list and download the 2.1 versions.

The add-on menu has been moved into a separate dialog, which supports:

  • checking for and downloading updates

  • deleting and disabling multiple add-ons at once

  • viewing an add-on’s page

Add-ons are now always stored in a single folder, and need to be uploaded as a .zip - please see the updated docs for more information:

Also:

  • Helper routines in editor to make porting add-ons easier (thanks to Glutanimate)

  • Catch errors when card templates contain invalid HTML (thanks to Alicia)

  • Fix translations and shortcuts on editor buttons.

  • Revert the undo shortcut change in the previous beta.

  • The Check Media function can now fix a corrupt media database.

  • Remember export folder location.

  • Make sure debug console and tooltips closed when closing profile.

  • A fix for Anki failing to start on some Windows machines.

Changes in beta 12

Fixes an issue that could allow a specially crafted .apkg file to write files outside the media folder during import. AnkiWeb shared decks were not affected, but upgrading is strongly recommended if you import .apkg files from third party sources. A big thanks to David Bailey for discovering this issue. 2.0.47 is also available with this fix.

Also:

  • Rewrote parts of the collection opening/closing code and window closing code, which should ensure the collection isn’t closed until windows have a chance to clean up.

  • The profile manager now has a button to restore a profile to an automatic backup, which will take care of clearing out a corrupt collection and make sure backups are not rotated when restoring.

  • Added an optional sidebar to the browse screen; toggle via the Filter button.

  • Icon tweaks.

  • Ctrl+1-9 can be used to jump to the first 9 card templates in the card layout screen.

  • Add a default note type for typing in the answer.

  • Backups now include the date in the filename.

  • Backups are sent to the trash instead of being deleted outright.

  • Fix decks being moved to the default deck when dragged to the bottom (thanks to David Bailey)

  • Fixed some issues with field contents being updated with the wrong content.

  • Better support for DPI scales that are not multiples of 100% on Windows.

  • The Filter button now uses more obvious titles when splitting menus into submenus, and will split the decks and note type lists if necessary as well.

  • Tweak some shortcuts.

  • Better error when internet offline.

  • Drop support for profile passwords.

  • Fix shift+tab in the editor on Windows/Linux.

  • Restored support for the marked tag.

Changes in beta 11

  • Simplify the browser window:

    • Items in the top toolbar have been moved into the menu bar.

    • The sidebar has been replaced with a dropdown menu.

  • Remove 'mark' action in favour of 'flags':

    • Flags are set on individual cards rather than the whole note.

    • A card can be set to one of four different coloured flags.

    • The reviewer and browser will show and set flags.

    • Other clients will need to be updated to display and set flags, but flagged cards should keep their flags when synced to older clients.

  • Limit the length of the card layout summary, and remove the ordinals.

  • Fix clozes in brackets losing formatting.

  • Restore maximize button in edit window.

  • Disable rather than hide the card type list in cloze note types.

  • Remove icons from a few screens.

  • Bundle a new mplayer on OSX which works on older CPUs.

Changes in beta 10

  • Improve the MathJax rendering speed, which was making the fade out/in animations slower than they should have been.

  • Revert the "answer on top" experiment and remove the delay when revealing the answer side.

  • Delays can be customized via the qFade/aFade variables in Javascript - set to 0 to disable.

  • Added the ability to override JS/CSS over all note types, so you can do things like customize the fade duration globally. More info: github.com/dae/anki/commit/55b782581d39f3a4b184ff3f24a59d51ad8c9e83

  • Hide sound tags in preview screen.

  • Make sure exporting doesn’t try to export subfolders.

  • Fix operations like suspend not working correctly when multiple cards selected.

  • Remove border on bottom area.

  • Better support for high resolution displays on Windows.

  • Fix the toolbar in the browser not resizing to fit.

  • Display used fields in card type list.

  • Fix the focus not returning to the front field when adding cards.

  • Fix an issue that was preventing some styling in card templates from overriding the defaults.

Changes in beta 9

  • Update the card layout screen to use a dropdown instead of tabs, and render the preview more efficiently.

  • The card layout and preview window in the browser now render cards the same way as the review screen.

  • Fix a bug that was preventing Anki from shutting down properly on Windows.

  • Fix a bug that was causing images not to show if the media server port was in use.

  • Support make install/uninstall on Linux.

  • Make the down key do the right thing when browser window opened.

  • Make it easier for add-ons to override shortcuts for a specific state.

Changes in beta 8

Experiment with showing the question below the answer, which makes the fade out/in step more natural, and means the answer will always appear in the same place. Please let me know if you like it or hate it. Will only work if your back template starts with \{{FrontSide}} <hr id=answer>.

Also:

  • Fixed "shortcut key" getting duplicated (thanks to David).

  • Fixed pasting of files with a hash in the filename (thanks to David).

  • Fixed some errors caused by closing a window before it had a chance to initialize (based on a patch by David).

  • Fixed autoplay on the answer side.

  • Fixed some issues with screens getting stuck when closing the browser window, etc.

  • Possible fix for Anki failing to run on some Windows machines.

Changes in beta 7

  • Removed the preloading code from the previous beta, as it was causing a number of problems.

  • Added a transition when revealing the answer - necessary now that we’re not preloading the answer.

  • Fix the type in the answer function.

  • Reworked the focus handling in the editor, which fixes a bug that could cause the first field to be overwritten when navigating via the preview screen.

  • Fixed a similar bug triggered by dropping text onto Anki when another window had focus.

  • Fix gifs failing to display.

  • The mhchem module is now bundled and enabled by default, so you can typeset chemical equations: mhchem.github.io/MathJax-mhchem/

  • Work around MathJax failing to display when part of it is cloze deleted.

  • Possible fix for Anki failing to exit properly.

  • Fix field content appearing under the editor buttons.

  • Fix some encoding errors when generating LaTeX and showing JS errors.

  • Change the add/del tags shortcuts so they don’t conflict with the jump to tags function.

  • Prevent some errors when holding down navigation keys/navigating too quickly.

  • Fix some issues that were preventing the Linux build from working for some users.

Changes in beta 6

Linux users: there are two Linux builds for this release. The "normal" build should now work on Ubuntu 14.04 and similar distributions, and should be fine for more modern distributions too. If you encounter a problem with the normal build, please try the alternate one, and let us know that the normal one is not working for you.

Other changes:

  • Add a fade out/fade in transition between cards when reviewing, which minimises pop-in for cards using images and MathJax.

  • Render the answer at the same time as the question so it can be revealed instantly.

  • Fix a bug that was overriding the font of some columns in the browser when they shouldn’t be overridden.

  • Add the ability to turn off font overriding in the "browser appearance" screen.

  • Fix \n appearing when hitting enter in new whitespace mode.

  • Fix translations not working on a Mac.

  • Fix the upload/download dialog not working in KDE on Linux.

Changes in beta 5

  • Experimental MathJax support for writing equations without LaTeX - try something like the following on a card. Equations will pop in, as they are rendered after the card is shown. The next AnkiMobile beta will support MathJax; the other clients will need to be updated.

\(\sqrt{x^2}\)

$$x_3$$
  • LaTeX can now be rendered as a .svg file instead of a .png file, which can be scaled to arbitrary sizes without losing quality. You’ll need to have dvisvgm installed, and can then enable it via Tools>Manage Note Types>Options. The next AnkiMobile beta will support .svgs; the other clients will need to be updated.

  • Fix IBus input method not working on Linux.

  • Fix superscript shortcut key.

  • Both reviewer and browser use ctrl+delete as shortcut for deleting the current/selected card now.

  • Fix crash when syncing on Windows.

  • Improve display of cloze and LaTeX tags when field is in RTL mode.

  • Work around ampersands appearing in deck names when running in KDE.

Changes in beta 4

  • yet more fixes for Anki failing to start on some Linux distros

  • fixed errors that could happen when add-on authors wrapped an Anki function (thanks to dequis)

  • make it easier for add-ons to extend bottom buttons (thanks to Dmitry)

  • don’t load iframe content in a separate browser window

  • remove the change in beta 3 that was leading to lots of non-breaking spaces in pasted text

This beta also introduces experimental support for alternative whitespace handling. When enabled for a note type via Tools>Manage Note Types>Options, the editor and reviewer will wrap your HTML content in a pre-wrap whitespace environment. What this means is that instead of using <div> and &nbsp; tags/entities to denote newlines and indents, normal newline and space characters will be used. Things to note:

  • This is experimental at the moment, and may go away if major issues are discovered. For now, please consider it something to play around with rather than something to rely on.

  • The mobile clients do not currently support the option, though you may be able to get cards to display the same way when reviewing on mobile by adding white-space: pre-wrap to your card styling in your template.

  • When pasting HTML into a field, Anki will try to convert the divs and non-breaking spaces to more readable whitespace equivalents.

  • Existing notes may display differently with the option enabled, because whitespace is now respected. For example, the following on a card template:

{{Front}}<br>
{{Extra}}

will include two newlines between the fields, because of the newline after the BR. To get the card to display as before, remove the <br> tag.

If your note contain manually edited HTML or HTML pasted from other websites, they may also show differently because of the whitespace inside them.

Any feedback on what works and what does not would be appreciated.

Changes in beta 3

  • more fixes for Anki failing to start on some Linux distros

  • fix an issue with the HTML editoring adding br tags on Windows

  • paste non-media URLs as text instead of ignoring them

  • preserve indents and newlines when pasting text

Changes in beta 2

  • fix the Anki data being stored in the wrong location on Windows

  • upgraded Python and Qt for the Linux build, and fixed various issues with Anki failing to start on recent Linux distros

  • show a more helpful error message when attempting to install on a Windows or Mac platform that is too old

  • clearer error message when firewall is blocking Anki

  • clean up WebEngine processes more quickly after windows are closed

Changes in beta 1

  • pulled in the latest translations

  • add cancel button to recording window

  • move stats and sync buttons to center of window

  • switch undo shortcut to work around conflicts with WebEngine

  • disable pinch to zoom gesture

  • fix spurious error code when exiting

  • fix 'browse add-ons' command failing on Linux

Changes in alpha 15

  • Fix for space/enter/etc being interpreted twice

  • Tweaks to reduce flicker as windows are displayed

  • Use the system background colour for the toolbar areas

  • Ensure only one copy of deck stats is shown, and make sure it’s closed when the profile is unloaded

  • Fix esc key in type answer field

  • Fix deck expanded state getting reset when editing

Changes in alpha 14

  • Upgrade to the recently released Qt 5.9, and drop support for older versions

  • The issue with menu shortcuts conflicting with text input boxes should be gone now - this was one issue that holding up a move to beta status.

  • Windows 7+, Mac 10.10+, or Linux ~2016+ now required.

  • Fix a error when importing from Mnemosyne (thanks to Luke)

  • Fix a broken 'lots of decks' message

  • Fix an issue running mplayer on modern Linux distros

  • Fix window size not being saved in some cases (thanks to Dmitry)

  • Fix an error when closing the main window while the browser is open

Changes in alpha 13

  • Upgrade to Python 3.6 on Windows, which should hopefully provide us with more info about the cause of crashes. If you experience any crashes, please paste the output of your crash.log from the Anki folder, or attach it in a private ticket (apps.ankiweb.net/docs/manual.html#file-locations)

  • Fix for the browser getting stuck open when syncing, leading to error messages

  • Improvements to the next/prev buttons in the previewer (thanks to Glutanimate)

  • Preserve tag field focus when switching cards (thanks to Glutanimate)

  • Remove some debugging code from the browser that could cause issues/slowdowns

  • Tweak to history display in add screen (thanks to Henrik)

Changes in alpha 12

  • Fix an error when previewing

  • Support wildcards in tag deletion (thanks to luoliyan)

  • Support \ to escape wildcard characters in tag search (thanks to luoliyan)

Changes in alpha 11

  • The Windows and Linux builds will move your Anki data to a new location the first time they are run. If you’d like to switch between the alphas and the stable release, please make sure you also upgrade to the latest stable release (2.0.43) which uses the same folder locations. More info: apps.ankiweb.net/docs/changes.html

  • The Windows build will display a console window when Anki is opened, to help debug problems some users are having starting the app.

  • Show error on invalid search instead of just returning no matches

  • Fix an error when closing the collection on bleeding edge Linux distros

  • $ANKI_BASE env var can now be used to control base folder

  • Convert all unicode in the add cards screen and importer to a standard format, to prevent issues with tag/field searches not working.

  • Add temporary instrumentation to the browse screen to detect some issues - please report if you get any errors. Also fixed a possible cause of a crash.

  • Fix errors occurring when Anki is closed with windows like the browser still open.

  • Fix embedded fonts not working.

  • Refuse to run on Qt5.8.0, which has some major issues.

  • Allow wildcard tag deletion (thanks to luoliyan)

  • Don’t add tags when deleting (thanks to luoliyan)

  • Add-on downloader now accepts multiple IDs (thanks to Dmitry)

  • Improvements to the custom study increase new/rev area (thanks to Simone)

  • Tweaks to the history button in the add screen (thanks to Henrik)

  • Show a better error if user inputs an invalid CSV delimiter (thanks to luoliyan)

  • Fix a rare bug that could cause invalid notes to be added (thanks to Glutanimate)

  • Fix typo (thanks to Andi)

Changes in alpha 10

  • shave a second or two off sync in some circumstances

  • fix progress window getting stuck on Ubuntu 16.10

  • fix unicode errors appearing when pasting non-latin text

  • update anki.desktop (thanks to Julian)

Changes in alpha 9

  • syncs are now cancellable

  • embedded fonts are now usable on macOS again

  • fix the bottom bar disappearing after edits

  • don’t force XP mode on Windows, so things like the menubar will now use the modern colour prevent the backspace key from going back a page and breaking things

  • fix for 'make install' in the source release

  • helpers for addons creating buttons in the editor (thanks to Simone)

  • fix for latest sqlite versions (thanks to dequis)

Changes in alpha 8

  • Graphs can now be exported to PDF

  • Fix issues inputting languages like Chinese in the card layout window.

  • Possible fix for some crashes

  • Fixed Anki segfaulting on startup on some modern Linux distros

  • The Mac build should now work on 10.8+

  • Mac build now stores files in Library/Application Support like 2.0.37+.

  • Tweak the cards/fields button positions

  • Remove mention of the Del button shortcut in the More menu

  • The history button in the add screen now reflect subsequent edits (thanks to David)

  • When syncing a collection with no local cards, explain why Anki wants to download.

  • Fixes for Python 3.6

Changes in alpha 7

  • Fix a serious bug in media syncing that would upload invalid data. If you synced with previous versions, please see anki.tenderapp.com/discussions/beta-testing/203-anki-210-al…​;

  • Syncing now shows progress again, and uses a different underlying request library

  • Fix some other syncing errors

  • Possible fix for some crashes

  • Log some information into Documents/Anki/crash.log when Anki crashes. If you experience any crashes in the future (where Anki closes), please send us that file with information about what you were doing when Anki crashed.

  • Compress backups in the background, which speeds up profile switching & syncing

  • Fix the window not going to fullscreen properly after adding a new profile on Windows

  • Increase default size of deck options window

  • Tell webengine not to cache images to disk

  • Added a hack to preload upcoming images - it will not always work

  • Fix an error when deleting notes

  • Remove the Del key shortcut to delete notes in the review window, as a Qt bug causes it to be triggered from the type in the answer box.

  • Fix an error appearing when the undo shortcut is pressed with nothing to undo

  • Make it easier for add-ons to add new editing icons (thanks to Simone).

Changes in alpha 6

  • Fix audio failing to stop or overlapping

  • Fix opening of add-ons / backup folders on Windows

Changes in alpha 5

  • Built with latest version of the toolkit

  • Rather than completely stripping HTML or including it verbatim, paste and drag&drop now simplify the HTML as it is pasted

  • Pasted images now use a checksum of the file, so pasting the same image twice will not result in multiple files

  • Work around a Qt bug where some shortcut keys like 'f' were triggering menu items instead of entering characters in the type answer box

  • Work around the debug console shortcut not working

  • Misc other fixes (thanks to noobie, Marcio, Christoph)

  • The Linux build now includes a Makefile and can be installed system-wide

  • The Mac build is using a different packager. This should prevent the errors people were getting on startup, but has broken the ability to double click on .apkg files outside of Anki.

Changes in alpha 4

  • tweak fonts

  • fix entered text getting lost if closing window/switching note shortly after text entered

  • fix errors when importing .apkg with media

  • fix unicode errors when playing audio files with non-latin text on osx

  • autodetect pipe in PSV files and make it easier to extend autodetection list

  • fix 'change note type' getting stuck

  • ignore harmless http error messages

  • re-enable add-on downloading

  • fix edit/delete add-on, and open add-on folder on recent linux

  • fix error when clicking on cogs in deck list

  • show more info when libraries fail to load on linux

  • fix square boxes appearing in import dialog on ubuntu 16.04

Changes in alpha 3

  • image support

  • fixes for syncing

  • fix duplicate paste on windows/linux

  • prevent fields from collapsing when all content deleted

  • fix card layout preview on windows/linux

  • fix 'onHeight' errors when moving rapidly through cards in browser

  • basic add-on porting docs in github

  • fix an error in logging

  • fix missing translations

  • fix 'loading' message in type in the answer

  • fix error syncing when running from usb drive

Changes in alpha 2

  • free memory after various dialogs closed, which should improve the memory footprint

  • update the toolkit again on all but the 32 bit linux build, which should fix the mac touchpad crashes and some other issues

  • re-enable syncing, which should work but will not show any progress info during long uploads/downloads

  • update packaging, which may fix intermittent startup problems on linux

  • fix collection export

  • fix type in the answer

  • hide annoying message when typing/pasting in a http link

  • add-ons no longer need a separate top level file (thanks to subfusc)

  • fix scheduling not ensuring next ivl always +1 (thanks to ankitest)

  • pull requests now have automatic tests (thanks to RawToast)

  • hook for showDeckOptions (thanks to ankitest)

  • fix browser scrolling horizontally (thanks to Houssam)

  • fix y axis rendering in graphs (thanks to matthayes)

 

Porting add-ons to Anki 2.1

Python 3

Anki 2.1 requires Python 3.5 or later. After installing Python 3 on your machine, you can use the 2to3 tool to automatically convert your existing scripts to Python 3 code on a folder by folder basis, like:

2to3-3.5 --output-dir=aqt3 -W -n aqt mv aqt aqt-old mv aqt3 aqt

Most simple code can be converted automatically, but there may be parts of the code that you need to manually modify.

Qt5 / PyQt5

The syntax for connecting signals and slots has changed in PyQt5. Recent PyQt4 versions support the new syntax as well, so after updating your add-ons you may find they still work in Anki 2.0.x as well.

One add-on author reported that the following tool was useful to automatically convert the code: github.com/rferrazz/pyqt4topyqt5

Compatibility with Anki 2.0

It should be possible for many add-ons to support both Anki 2.0 and 2.1 at the same time.

Most Python 3 code will run on Python 2 as well, though extra work may be required when dealing with file access and byte strings.

The Qt modules are in 'PyQt5' instead of 'PyQt4'. You can do a conditional import, but an easier way is to import from aqt.qt - eg "from aqt.qt import *"

The most difficult part is the change from the unsupported QtWebKit to QtWebEngine. If you do any non-trivial work with webviews, some work will be required to port your code to Anki 2.1, as described in the next section.

If you find that non-trivial changes are required to get your add-on working with Anki 2.1, the easiest option is to drop support for older Anki versions. Please see the 'sharing updated add-ons' section below for more information.

Webview changes

Qt 5 has dropped WebKit in favour of the Chromium-based WebEngine, so Anki’s webviews are now using WebEngine. Of note:

  • You can now debug the webviews using an external Chrome instance, by setting the env var QTWEBENGINE_REMOTE_DEBUGGING to 8080 prior to starting Anki, then surfing to localhost:8080 in Chrome.

  • WebEngine uses a different method of communicating back to Python. AnkiWebView() is a wrapper for webviews which provides a pycmd(str) function in Javascript which will call the ankiwebview’s onBridgeCmd(str) method. Various parts of Anki’s UI like reviewer.py and deckbrowser.py have had to be modified to use this.

  • Javascript is evaluated asynchronously, so if you need the result of a JS expression you can use ankiwebview’s evalWithCallback().

  • As a result of this asynchronous behaviour, editor.saveNow() now requires a callback. If your add-on performs actions in the browser, you likely need to call editor.saveNow() first and then run the rest of your code in the callback. Calls to .onSearch() will need to be changed to .search()/.onSearchActivated() as well. See the browser’s .deleteNotes() for an example.

  • Various operations that were supported by WebKit like setScrollPosition() now need to be implemented in javascript.

  • Page actions like mw.web.triggerPageAction(QWebEnginePage.Copy) are also asynchronous, and need to be rewritten to use javascript or a delay.

  • WebEngine doesn’t provide a keyPressEvent() like WebKit did, so the code that catches shortcuts not attached to a menu or button has had to be changed. See the way reviewer.py calls setStateShortcuts() for an example.

Add-ons without a top level file

Add-ons no longer require a top level file - if you just distribute a single folder, the folder’s init.py file will form the entry point. This will not work in 2.0.x however.

Sharing updated add-ons

If you’ve succeeded in making an add-on that supports both 2.0.x and 2.1.x at the same time, please feel free to upload it to the shared add-ons area, and mention in the description that it works with both versions.

If you’ve decided to make a separate 2.1.x version, it’s probably best to just post a link to it in your current add-on description or upload it separately. When we get closer to a release I’ll look into adding separate uploads for the two versions.

 


2017-12-04

The content here is distributed under the CC BY-SA license:
creativecommons.org/licenses/by-sa/4.0/

 

 

 

Anki 2.0 Changes



Users upgrading from Anki 1: please see here.

Translations

Changes in 2.0.21-latest

Changes in 2.0.48

Released 2017-10-11.

Built with an updated Python version, which fixes some issues add-ons were having accessing secure sites. Due to regressions with the Linux build, this version is only available for Windows and Mac.

Update 2017-11-28: The alternate Mac version also had problems with the new Python, and has been rolled back.

Changes in 2.0.47

Released 2017-08-16.

Fixes an issue that could allow a specially crafted .apkg file to write files outside the media folder during import. AnkiWeb shared decks were not affected, but upgrading is strongly recommended if you import .apkg files from third party sources. A big thanks to David Bailey for discovering this issue.

Changes in 2.0.46

Released 2017-08-02.

  • Fix an issue where mplayer would not work for some Linux users.

  • Fix an issue with the edit screen that may have lead to crashes later on.

Changes in 2.0.45

Released 2017-03-27.

A Linux-only release that fixes recording in the compiled packages.

Changes in 2.0.44

Released 2017-02-25.

A release for Windows. Fixes issues people were having running Anki when their Windows login name contained non-Latin characters.

Changes in 2.0.43

Released 2017-02-22.

A release for Windows and Linux machines that moves Anki’s files out of the Documents folder like we did for the Mac in 2.0.37. This should work around issues with OneDrive setting files in the Documents folder to read only, and puts the files in a more standard location on Linux. The move will be instantaneous for most people, but if your Documents folder and the new folder are located on separate filesystems, initial startup may take a while as files are copied over.

The manual has been updated to reflect the new locations:

Changes in 2.0.42

Released 2017-02-10.

A Linux-only release which fixes interface translations not working in the compiled package.

Changes in 2.0.41

Released 2017-01-29.

  • Shave a second or two off sync times in certain circumstances.

  • Fix for errors on latest sqlite on Linux (thanks to dequis)

  • OS X alternate version rebuilt on 2017-01-30 to fix an issue with playing sounds.

Changes in 2.0.40

Released 2017-01-13.

  • A Mac-only release that fixes an error on startup when the Documents folder is on a different drive.

  • For people upgrading from 2.0.36 or earlier, please note that Anki will move your Anki data out of Documents/Anki and into Library/Application Support/Anki2, to prevent problems people were having with the new macOS. If you are using the latest OS (macOS Sierra), we recommend you take a backup before upgrading:

To locate the new folder, please see apps.ankiweb.net/docs/manual.html#file-locations

Changes in 2.0.39

  • A Linux-only release that fixes some issues with the makefile.

Changes in 2.0.38

  • Fix the Mac builds not including 2.0.37 updates

  • Fix 'make install' on the Linux build

  • Fix the menus not being translated

Changes in 2.0.37

  • The Mac version now stores user data in Library/Application Support/Anki2 instead of Documents/Anki, as the new macOS 'Desktop & Documents in iCloud' feature can cause data corruption. Anki will put a link to the folder in your documents folder to make it easy to access. If you’re making manual backups, please make sure you update your backup scripts to copy files from the new location.

  • The Linux version is now available as a compiled version, with most of the required libraries built in. This is a bigger download, but will ensure you are able to run Anki even if your distribution has the wrong library version.

  • Fix adding clozes in a filtered deck (thanks to Michael)

  • Preserve identical fields when switching note type (thanks to Glutanimate)

  • Fix an issue that could allow cards to be imported even if the note type had changed

  • Tweaks for add-on writers, and some tooltips (thanks to Dmitry)

Changes in 2.0.36

  • Fix a problem starting the app on Vista. If you don’t have trouble starting 2.0.35, there is no need to upgrade.

Changes in 2.0.35

  • The interface language can now be changed from the preferences screen.

  • Fix shortcut keys not working in Spanish translation.

Changes in 2.0.34

  • The interface will now scale depending on your DPI size on Windows. This will make images and text more blocky if your DPI is up very high, but the buttons and text will be more readable. The alternate installer retains the old behaviour.

  • Exports of .apkg files now support media folders with >2GB / 64k files.

  • Importing and exporting of collection.apkg has been sped up, and we no longer compress media files in the .apkg, as most media files do not benefit from compression.

  • Importing and exporting now show progress.

  • Don’t convert newlines into <br> tags in text export.

  • Limit tags in custom study screen to the tags that are available (thanks to bogdanteleaga).

  • Don’t include media files starting with _ in deck export unless they’re referenced on template (thanks to Tim).

  • Fix crashes caused by other clients allowing huge daily card limits.

  • Fix an issue with overriding decks, thanks to Dave.

  • Ctrl/Cmd+E shortcut to add note in browser thanks to Glutanimate.

  • Don’t restore previous folder when importing if the folder no longer exists (some users reported hangs).

  • If an invalid deck override has been set, ignore it (thanks to Tim).

  • Fix a bug in showing an error when an add-on download failed.

  • Keyboard shortcuts for suspend card (thanks Glutanimate) and reposition in browser.

Changes in 2.0.33

  • Fixed a bug in importing that could lead to corrupted notes if the note type of the source and destination decks didn’t match

  • Fix Anki completely breaking on recent Linux installs with pysqlite > 2.6

  • Fix down arrow being displayed as a box in the deck list on English Windows 10 installs

  • Fix Anki not finding LaTeX on OS X 10.11

  • Fix field searches in multi line fields (thanks to Avi)

  • Show mark star even when card is scrolled down during review

  • Allow LaTeX commands like \includegraphics (thanks to Arne)

  • Fixed a bug triggered by adding or removing a saved search (thanks to Houssam)

  • Fixed a crash dialog showing up in some Linux installs when Anki is closed with the preferences window open (thanks to Christian)

  • Updated translations, thanks to the contributors.

Changes in 2.0.32

  • Fixed a syncing bug that could lead to lost reviews and sanity check errors when deleting a filtered deck before syncing.

  • Make default note type titles consistent (thanks to Soren).

  • Load saved searches in alphabetical order (thanks to Houssam).

  • Fix some fields not being renamed in template when renaming field (thanks to Dave).

  • Fixed an error message that could occur in add-ons (thanks to Thomas) .

  • Add a few more media types in the file selector (thanks to Jonathan).

  • Report an error if an add-on download is corrupt.

  • Fix sync error being shown twice.

  • Updated translations, thanks to the translators.

Changes in 2.0.31

  • Fix a problem where large regular syncs sometimes timed out.

Changes in 2.0.30

If you’re using the alternate build on an older Mac, this upgrade is necessary to keep syncing.

  • Disable embedded fonts on OSX to prevent crashes.

  • The Browse screen on OSX now deletes cards when you press Fn+Del, not Del.

  • Fix a syncing bug triggered by importing apkgs with custom deck options.

  • Fix saved searches not being synced (thanks to Houssam).

  • Fix "check database" not saving changes after fixing an AnkiDroid problem.

Changes in 2.0.29

  • Fix "app is damaged" message on OSX Yosemite

  • A new "added" graph that shows how many new cards have been added to the collection.

  • When exporting notes as text, say the number of notes that were exported, not the number of cards.

  • Allow tags to be separated with an ideographic space character (eg. Japanese full width space)

  • Allow closing the edit current dialog with Ctrl-Enter.

  • Show more info when syncing media, so you can see it’s progressing and get an idea of how long is left.

  • All the web components in Anki default to accepting focus and allowing copying now, which should fix issues with some screens not allowing copy to the clipboard, such as the card info screen.

  • Fix a bug where <br> tags were being inserted in place of newlines when importing with html enabled.

  • Fix a bug when trying to recover from a corrupt profile.

  • Fix addons being downloaded with double newlines on Windows.

  • If an existing anki instance is hung, start a new instance when user clicks on anki icon.

  • A few translation fixes thanks to Derbeth.

  • Disable a better error message when some ssl errors occur.

  • Make the tab width in the template editor reasonable.

  • Strip any formatting when pasting into the template editor, as rich text has no meaning there.

  • If the computer has no desktop folder, place collection packages in the user’s home directory.

  • Fix a bug that was allowing nesting other decks under filtered decks.

  • Fix a bug that was causing templates to get out of sync with field names on renaming if more than one filter was used (e.g., {{type:cloze:Text}}).

  • Don’t jump around in the browser’s card list when deleting cards.

  • On Linux systems that don’t have a documents folder defined, default to ~/Documents/Anki (in English) for the profile folder.

  • We no longer encode and decode %20 and so on when fields are edited. This should fix the bug where users were having text with percent signs in it being turned into other characters.

  • Tags that differ only in case are no longer allowed, as tags were sometimes case-sensitive and sometimes not. The case that you use the first time you enter the tag will be used for all future cards added with that tag. If you want to change the capitalization of that tag, you can temporarily remove the tag from all cards and then add it again with the new case.

  • Ignore >100MB files when syncing instead of having the server throw an error.

Changes in 2.0.28

  • Fix media syncing state not being properly reset when deauthorizing.

Changes in 2.0.27

  • Media syncing has been rewritten to be more reliable:

    • It no longer locks the account, so multiple clients can sync media at the same time (but please do not attempt this with the mobile clients yet, as they have not yet been updated). This is also paving the way towards background syncing of media in the future.

    • The initial sync on a new device can now avoid both sending and receiving files that already exist on both ends.

    • A large number of deleted files could cause timeouts in the past; this is no longer the case.

    • When resuming from a connection error, less data needs to be sent than before.

    • When deauthorizing sync, the media syncing state is reset.

  • On Linux, the Anki folder is now Documents/Anki, which matches the other platforms. Anki will use a previous Anki folder if it exists, so please rename it manually if you wish to use the new location.

  • Searches in the Browse screen can now be saved into the sidebar, and the tab key order has been improved (thanks to Houssam). These changes conflict with previous versions of the Advanced Browser add-on, so please ensure you download the latest version if you use this add-on.

  • Fixed a bug where a filtered deck with 'or' in it could mistakenly include suspended or buried cards.

  • Fixed crashes in the alternate Mac build.

  • The Preview window now has a "replay audio" button, with the shortcut 'R' like in the review screen.

  • The post-import log now lists the number of notes that were unchanged by a text import. "Unchanged" includes notes that were present in your collection as well as the imported file but were not updated in your collection, whether because the update option was off or they were not changed.

  • The options menu next to each deck in the deck list now has an "export" button, which opens the export dialog with that deck already selected.

  • Don’t display the "added duplicate" message multiple times when a note is already duplicated in the collection but only one new duplicate was added.

  • Fix a bug where Anki was inserting <br>s into the text of imported cards if using quoted multi-line notes, with HTML disabled.

  • Provide more helpful errors when importing corrupt collection packages or .anki2 files.

  • Anki now remembers the previous position and size of various dialogs it didn’t previously.

  • The "suspended" label in the card types graph has been changed to "Suspended+Buried" since that category also counts buried cards.

  • Anki now makes sure the Get Addons dialog opens at an appropriate size when the system font size is unusual.

  • Check that saving a statistics image was successful before displaying a success message, and give a warning if Anki doesn’t have permission to write to the desktop.

  • Give a less confusing error when Anki can’t create a profile folder.

  • Don’t throw an error when attempting to delete unused media that has already been removed.

  • Fix for exporting to csv with quotes in a field (thanks to Rubyu)

  • Tweaks to latex handling which will allow add-ons to switch to pdftex (thanks to Joel)

  • Round cards/minute stat instead of truncating it (thanks to Markus)

  • Fix errors when importing Mnemosyne’s latest db format.

  • Support pasting of m4a urls.

  • Add a fix for an AnkiDroid bug to the Check DB function (thanks to Houssam)

  • Fix tooltip colour for inverted colour schemes. (Thanks to Pat)

  • Don’t trigger help when enter pressed in preferences screen.

  • Fix a bug on Windows where the main window was left open when a corrupt collection was detected.

  • Fix error when Anki is running for multiple users on a multi-user machine.

  • Don’t try to authenticate username and password if user cancels login dialog.

  • Allow changing case of profile name on Windows.

  • Update all duplicates when importing in update mode.

  • Remove initial search text when ctrl-clicking a left panel item.

  • Fix rounding of cards/minute in stats; use 1 decimal place.

  • Fix error when exporting w/ non-latin text in profile name.

  • Prevent profiles from getting out of sync when rename fails.

  • Update note type on apkg import when only templates have changed

  • Search terms in the browser and filtered decks can now be separated by a full width space (thanks to Paul)

  • Catch some rare startup errors on Windows and show them in a dialog box instead of exiting silently.

A special thanks to Soren, who contributed many of the bugfixes in this release.

Changes in 2.0.26

  • Fix more crashes on Macs.

  • Fix pasting from office applications on Macs.

  • Fix recorded audio playing back at wrong speed on Mac computers that couldn’t record at CD quality.

  • Fix cloze markers appearing on cards when multiple cloze fields were listed in the template on a single line.

  • Fixes to source code tests, thanks to ispedals and julienbaley.

  • Add some hooks for add-on authors, thanks to sagittarian.

Changes in 2.0.25

  • Fix copy right click menu not appearing when reviewing.

  • Possible fix for shortcut issues with some add-ons when reviewing.

  • Fix from Julien to fail more gracefully when templates need updating.

  • Fix Qt4.7 Windows build failing to start.

  • Workaround a crash on Macs that was happening when a progress bar was shown.

  • Roll back to a previous mplayer version on OSX to fix some audio playing too fast.

  • Fix Anki failing to recognize clozes when user had defined multiple cloze fields on a single line in their template.

Changes in 2.0.24

  • A required upgrade to continue syncing, as the encryption certificate has been updated. More info is available at anki.tenderapp.com/discussions/announcements/60-anki-and-heartbleed

  • An alternative build is now provided which uses an older version of the toolkit. This addresses the Thai slowdown issue on Windows, and continues support for OSX 10.5 & 10.6 on Mac, as the primary build now requires 10.7 or later.

  • For people using add-ons that used multiple colons such as {{ring:my_tag:file.mp3}} you should update your template to {{ring (my_tag):file.mp3}} For add-on authors, this change is an improvement by Julien that allows multiple filters to be chained together.

  • If you get an error message about pyqtconfig, please contact the author of the failing add-on and ask them to update the add-on to use qtmajor/qtminor instead, as pyqtconfig was obsoleted a while ago.

  • The deck list in the browser sidebar is now collapsible. This and a few other changes thanks to Houssam.

  • Include buried cards in the suspended count of the graphs.

  • Fix crashes and corruption in column headers on qt5.2 (only relevant for Linux users at the moment)

  • Fix for warnings in console on bleeding edge Linux distros, thanks to ospalh.

  • Remove leech tag on undo if it was added during review.

  • Allow copy context menu for things like card preview.

  • Tweaks to supermemo importer thanks to Bryan.

  • Remove marked and leech tags when exporting without scheduling.

  • More friendly error when ssl fails.

  • Fix 1000 cap in overview screen.

  • Catch another invalid temp folder message.

  • Disallow \r and \n in filenames, and ./.. in profile names.

Changes in 2.0.23

Due to a build error, this version was skipped.

Changes in 2.0.22

  • Fix a regression in the type-answer feature where multiple clozes were not presented in order.

  • Some tweaks to the SuperMemo importer, thanks to jmaatta.

Changes in 2.0.21

  • Now that AnkiDroid has been updated, buried cards will now only be automatically unburied when a new day rolls over, and not when you sync or restart Anki. If you sync from this version to AnkiWeb and then to the mobile clients, they should also switch over to this new behaviour.

  • New users will now need to confirm their choice of interface language before proceeding.

  • Increase filtered deck max size to 99999

  • Fix drag&drop of Google images from Safari

  • Ignore filtered cards when determining min/max in reposition dialog

  • When a corrupt collection is found, rename it so the profile can be loaded again and restored from backup.

  • Fix a regression in displaying startup errors and quitting from the profile manager

  • Display a better error message when a sync times out

  • Fix an error caused by an add-on that changes browser columns

  • Fix a bug where the forward & optional reverse note type was invalid when added in languages other than English.

  • If the same word has been cloze-deleted multiple times in a cloze, only require it to be typed once in the type in the answer feature.

Changes in 2.0.2—2.0.20

Changes in 2.0.20

  • Fixed a bug where "check media" could incorrectly report media as unused when the media filenames were encoding incorrectly.

Changes in 2.0.19

  • When resizing columns in the browser, move the others.

  • Fix a bug in the "reschedule as new" feature that could lead to cards ending up in an inconsistent state in some circumstances.

  • Fix card layout screen jumping to original tab when flipping.

  • Fix an error in syncing when time passed between connections.

  • Fix a bug in "check media".

  • When rescheduling in the browser, automatically remove from a filtered deck instead of ignoring filtered cards. Same with buried/suspended.

  • If a non-media URL is pasted in, paste it verbatim instead of ignoring it.

  • Change import default for new users to ignore duplicates, instead of updating them.

  • Fix a bug in the pasting of certain image links.

  • Fix a error that could occur on Windows when switching profiles or syncing.

  • Add a more description error message to certain network issues.

  • Fix an issue with media resyncing on Macs.

  • Fix the message that displays when the clock is incorrect.

  • Add an option to the preferences to disable compression of backups for slow computers.

  • Fix an install error on FreeBSD.

Changes in 2.0.18

  • Fix a bug that could cause invalid scheduling when a card was manually buried while in a filtered deck. For now, burying in a filtered deck will mean that the card returns to the home deck.

  • Fix an issue where Anki was failing to start if prefs.db was corrupt.

  • Don’t create a .log file when exporting files.

  • Rotate log files when they hit 10MB.

  • Warn user when they have filenames with an invalid encoding.

  • Fix a long error being shown when syncing without a net connection on some Linux computers.

  • Update "check database" to catch an issue with note types.

  • Fix issues on some Linux systems that had simplejson installed.

  • Fix some issues that were masking actual connection errors.

  • Catch more temp folder issues.

  • Possible fix for OSX crash when editing.

Changes in 2.0.17

  • Fix a delay when showing the next card on some computers.

  • Make sure suspended & buried cards are reset when exporting without scheduling information.

Changes in 2.0.16

Please see the 2.0.13 notes below for larger changes, such as the new sibling handling.

  • Fix a regression that was causing new cards to be shown in creation order instead of their assigned due order.

  • Fix an issue where Anki was returning to the study screen early when burying was disabled for a deck.

  • Fix cards not being completely reset when exported from a filtered deck.

  • Fix font alignment and crash issues on OSX.

  • Fix "check media" not fixing some encoding issues that it should have been.

  • Tweaks to the debug logging in 2.0.15 that improve performance with some add-ons.

  • Translation updates

Changes in 2.0.15

  • Add an option to disable burying of reviews.

  • Added a "bury card" option to the review screen, and changed the shortcut to bury a note to "=".

  • Added a new is:buried search, and is:suspend no longer shows buried cards.

  • Added a new cid:<card id> search to search for a particular card by its ID, and IDs are now shown in the Card Info screen.

  • Don’t mark cards as modified when automatically burying, which could potentially cause issues.

  • Increase sync timeout

  • When Anki detects the clock is wrong, it now shows how far it is off.

  • Fix an issue working around a broken trash folder on Windows.

  • Fix problems double clicking on files to import when path contains non-latin text, thanks to wlhuang.

  • Display a more informative error when the user’s temp folder permissions are wrong.

  • When double-clicking on a backup file to restore, skip the sync on startup.

  • Log some scheduling operations to make it easier to debug issues.

Changes in 2.0.14

  • Fix a bug that was causing proxy authentication errors to be reported when the issue was something else.

  • A full upload now removes the deletion log, which can save a lot of space if you’ve added many notes and deleted them again.

  • Better feedback when a sync is aborted due to concurrent access from another device.

  • Stop errors from appearing when the tags column is enabled in the browser and the user has non-latin text in tags.

  • Fix an issue that was causing note types to be renamed when they shouldn’t be.

Changes in 2.0.13

  • Sibling handling has been reworked, which should better ensure that cards from the same note don’t appear together:

    • When you answer a card, Anki will automatically bury any siblings that are in the new queue or review queue. Cards in the (re)learning queue can not be buried, but reviewing those cards will cause any new & review cards to be buried.

    • Cards are no longer unburied when returing to the deck list, but can be unburied with a button on the study overview screen.

    • To avoid problems during the upgrade period, cards are currently unburied when you sync or close your collection. When all clients have been updated, this behaviour will change so that cards are only automatically unburied when a day has passed. You will still be able to manually unbury them if you wish.

    • This new behaviour ensures that siblings are spaced even in filtered decks.

    • Burying of new cards can be disabled in the options if you want to introduce related cards in the same session. If disabled, Anki will try to spread out the siblings like it does in 2.0.12, though like 2.0.12 spacing is not guaranteed and may fail when you edit cards or perform operations that require a queue rebuild.

  • When importing an .apkg file, existing notes will be updated if they are newer in the .apkg file, and the note types are compatible. Cards are not touched, so existing progress will be retained. This means content authors can now easily distribute not only new content, but updates to existing content as well.

  • Filtered decks have a new "relative overdueness" sort option that will sort cards by how overdue they are compared to their interval, in the same manner Anki did a few years ago.

  • You can now show tags as a browser column.

  • Fix an issue with importing when a filtered deck was selected in the main window.

  • Don’t treat modified q/a templates as an incompatible note type.

  • Anki now enforces a standard encoding of media files with non-latin text, which should fix some issues moving media between Mac and non-Mac computers, and will ensure you don’t end up with multiple files in your media folder that look like they have the same filename but actually have a different encoding.

  • The 'unused media' menu option has been renamed back to "Check Media", and it is now capable of renaming fields and media filenames to ensure they’re consistent.

  • Fix an issue where dragging files from the desktop on Linux was pasting a URL instead of embedding the file

  • Fixed a bug where Anki failed to start on Linux distributions with an older Python version.

  • Anki now allows you to import .apkgs which have been renamed to .zip, as unfortunately some browsers "helpfully" rename the files when downloading them.

  • The "Find Duplicates" function in the browser now ignores HTML when comparing duplicates, and provides an option to tag the duplicates.

  • Fix an error in showing an error when downloading addons

  • Fix < and > in a field causing text to disappear when typing in the answer .

  • The "study deck" and deck/note type selection windows now remember their size and position.

  • Fix an issue showing clozes when the user’s mistyped the cloze characters.

  • Tolerate Windows trash errors .

  • Fix an error when upgrading some Anki 1 decks.

  • Separate users on the same machine can now run Anki concurrently.

  • Anki should no longer have issues starting upon Linux after a previous instance didn’t terminate properly.

  • Fix some issues with suspending, burying & rescheduling learning cards that could cause a later "download the fix assertion addon" message.

  • After syncing once, the sync username should become visible in the preferences dialog.

  • When adding a new column in the browser, scroll it into view.

  • When adding or importing note types, ensure they have a unique name.

  • Speed improvements to some text operations, thanks to hssm.

Changes in 2.0.12

  • Changed the way pastes and drag&drops are handled. This should hopefully fix various issues people were having with Google Images, and will now automatically add any images in a chunk of selected text to your collection if you have HTML stripping turned off.

  • Fixed errors caused by importing notes with a changed schema

  • Revert a change made in 2.0.9 where Anki would switch the active review deck when a different deck was selected in the add screen. This caused issues where the note type would change invisibly and some people objected to the new behaviour.

  • Work around a crash when closing Anki on Windows caused by a toolkit bug.

  • Make sure we always show 3 buttons for cards in initial learning in a filtered deck.

  • Improve the checking for and stripping of filename characters that can’t be stored on some filesystems.

  • Fixed an error when pasting media with non-latin characters in the URL.

  • Don’t throw an error if user adds cloze reference to a non-cloze note type.

  • Fix error shown when importing csv file with blank first line.

  • Fix year and all time review graph.

  • If the user’s recycle bin is broken, just delete the file instead.

  • Don’t send old backups to the recycle bin.

  • Fix duplicates not being detected when pasting text.

  • Fix a bug where the clipboard was being clobbered after the first paste.

  • When pasting images between fields, don’t try to download them.

  • Allow includegraphics in LaTeX

  • You can now view stats on filtered decks.

  • Warn when prefs.db is corrupt, and catch another corruption case

  • Allow searches for decks with + in their name.

  • Work around linux crash on paste of invalid image.

  • Fix an issue where duplicates were not being detected on paste

  • Ensure starting ease can’t be set below 130%.

  • Make sure we include 'px' in stats (thanks to steveaw)

  • Fix error shown when importing from command line (thanks to Hans)

  • Fix incorrect instructions to "maintenance" menu (thanks to Soren)

  • Unused media now shows "no missing media" message in a tooltip (thanks to Julien)

Changes in 2.0.11

  • 2.0.9 introduced a change that produced cleaner HTML output when editing fields, but unfortunately this revealed a bug in the GUI toolkit which could cause Anki to crash when editing those fields. So the 2.0.9 change has been reverted, and Anki will output divs instead of br tags again. This update will not change the format of cards that were created in 2.0.9 or 2.0.10 and thus they may still cause crashes when editing, but any cards added after upgrading should not trigger the toolkit bug.

  • Fix problems syncing when Anki’s running on a mapped network drive

  • Fix problems reporting correct error message when sync fails

Changes in 2.0.10

  • Fix pasting of images

  • Fix error when syncing media on an unmapped network drive

  • Fix issues with non-latin text in images in card layout and preview windows

  • Fix unicode error on export

  • Default to allowing HTML on import

  • Fix error when opening card layout

  • Force y axis minimum of 0 in reps graph

  • Fix duplicate searching in Add window

  • Improve type answer comparison of accented characters

  • Make sure we show field when nothing typed in

  • Allow apostrophe when renaming deck

  • Mnemosyne importer tweaks

  • Other minor fixes

Changes in 2.0.9

  • Improvements to the type answer feature: no more "the correct answer was" text, clearer indications of typed vs correct answer, customizable colours (.typeBad/.typeGood/.typeMissed), monospace by default so input+correct lines up (code#typeans), an example comparison in the Cards dialog, and automatic moving of the answer comparison underneath the Q/A line. Example attached.

  • The browser now has a preview button that makes it easier to quickly browse previews of cards.

  • The 'limit to tags' and 'study a random selection of cards' options in the custom study dialog have been merged together into a single new option that allows you to study new cards, due cards or all cards (cram), optionally limiting to particular tags as well.

  • If Anki detects that the media is out of sync, it will now automatically recover on the next sync. Furthermore, it no longer needs to send files that already exist on each side, so when this change is incorporated into the mobile clients you’ll be able to copy media over to them to avoid a long initial media sync.

  • When media is deleted via a sync or unused media, it’s now placed in the OS’s trash folder instead of deleted completely. Likewise for rotated backups and profile deletions.

  • When notes are deleted, their content is logged in a file called deleted.txt in your profile folder.

  • The filter area when selecting decks or note types now matches on consecutive characters, and uses spaces to separate search terms. So if you had a deck called "German::Verbs", you can search for it with "man verb", but not "grman"

  • You can now choose a font size > 20px for the card list. It’s not possible to resize the line height for each individual card, so choosing a large font size in one note type will make the line height large for all cards.

  • Anki should output BRs instead of DIV tags when you hit enter in the editor now, which should make editing the resulting text on mobile clients easier. Note this will only apply to content you add after upgrading.

  • Card types are removed with an X on the tab instead of an item in More.

  • Check Database, Unused Media and Empty Cards are now in the Tools menu, instead of a submenu.

  • Full Sync is now in the preferences, not in the menu.

  • Syncing now checks to see if the database is consistent prior to syncing, and if it finds any errors, it recommends a database check rather than a full sync.

  • If a database check finds any errors, it automatically forces a full sync.

  • When closing the collection, check for corruption. This makes closing Anki and switching profiles a bit slower, but ensures that corruption is detected early so that backups are useful.

  • If user has Add window open and syncs, ask if they want to keep the content and cancel sync if so.

  • After uploading a collection, notify user they need to download on other devices.

  • More verbose sync conflict message.

  • Shift clicking on a sidebar item in the browser will now OR it with the current search.

  • Prioritize HTML over images, so pasting from Microsoft apps pastes text again.

  • Timeboxing now pops up dialog instead of a tooltip, with options to continue or finish.

  • Don’t import notes multiple times when the note type has been modified

  • Add mature correct/today stat to graphs.

  • You can now hold down the shift key while starting Anki to disable add-on loading and automatic syncing (except if you’re on an old Linux distro).

  • Make sure to update card order when changing, adding or deleting option groups.

  • Make sure to shuffle after importing txt or apkg files if your deck options say to shuffle.

  • When exporting to an .apkg with scheduling off (or when sharing a deck on AnkiWeb), new cards now have their current order preserved.

  • Anki will now warn when you try to add a cloze deletion note without any deletions.

  • Anki will allow you to cloze delete when a normal note type is selected, with a popup warning instead of an error.

  • Anki should now run on an unmapped network drive on Windows and display images correctly.

  • Ctrl+Shift+T (Command+Shift+T on a Mac) now jumps to the Tags entry field.

  • When pasting from field to field, strip <span> tags that were being inserted by WebKit.

  • When importing from a text file, include a list of all updated or duplicated notes in the import log.

  • Fix unused media spuriously reporting unused media with leading underscores.

  • Fix cloze+latex issue where multiple answer images were generated.

  • Fix cloze+latex issue where unused media deleted used images and created others.

  • Fix error when trying to reschedule with min>max

  • Add scrollbar to About dialog.

  • Don’t allow images to be dragged (and deleted) from the review window.

  • Better warning when importing invalid .apkg file

  • When saving a note, strip quotes from the tags and sort tags in alphabetical order.

  • Fix an issue with images failing to show up when they had an apostrophe in them.

  • Fix issues with pasting links to sounds/images where the filenames had non-latin characters or punctuation characters.

  • Fix issues with pasting invalid links.

  • Deck descriptions are now always displayed verbatim, and not truncated.

  • Fix issues with syncing media on a vfat drive.

  • When inserting a media file that already exists in the media folder, checksum all alternative filenames (thanks to Julien Baley)

  • Fix a bug where the number of buttons would decrease from 3 to 2 on the second answer of new cards in a filtered deck.

  • Make it clearer when changing deck options will affect multiple decks.

  • Fix an issue where invalid filenames were generated when pasting a link to a remote filename with non-latin characters.

  • Fix an issue where rescheduling of relearning cards into new cards would cause a later "download the fix assertion addon" message.

  • Allow pasting of a few more audio formats.

  • Fix main window appearing on top after pasting on Windows.

  • The 'show duplicates' feature when adding now correctly shows all duplicates in the browser, regardless of their embedded formatting.

  • Allow canceling of note type selection.

  • When clicking Add, make sure to reshow Add window if it’d been minimized.

  • Make desktop folder if it was missing when saving stats to image.

  • More checks for the Check Database routine.

  • Fixed a bug where some Windows users were unable to start Anki.

  • Allow overwriting existing files in export (thanks to Chris Burel)

  • Fix an error when user comments out type answer field (thanks to Ospalh)

  • Fixed an issue where a field: search that didn’t match would prevent the search from matching anything.

  • Handle cloned note types in mnemosyne importer.

  • Don’t save note if no changes have been made.

  • Fix an issue with unused media and different file name representations (thanks to Ospalh)

  • When changing deck in Add window, switch review deck too.

  • Don’t play audio twice when changing templates

  • When hitting 's' on a deck with no due cards, display a tooltip.

  • Handle non-breaking spaces in furigana markup.

  • Fix bug where some text was being swallowed in error messages.

  • Fix a bug where leading whitespace was being cut off in text imports.

  • Fix inverted sub/superscript shortcuts

  • Make sure sort field is updated when field is deleted

  • Allow HTML in Mnemosyne import

  • Fix downloading of add-ons when running from USB disk

  • Fix field outline (thanks to Frostschutz)

  • Workaround a Qt bug that was preventing clicks on the sidebar in the browser (thanks to Frostshutz)

  • Pauker importer (thanks to Frostshutz)

  • Added --version option (thanks to Hut)

  • Fixed an error upgrading very old Anki 1 decks.

  • Use "question" and "answer" for browser labels, instead of "front" and "back".

  • When using 'change deck', select the current deck by default.

  • When searching in the browser, use double quotes rather than single quotes.

  • Don’t allow invalid characters in filenames when exporting.

  • Allow enter to close the change note type dialog.

  • Fixed a bug where rescheduling learning cards as reviews could cause the cards to be in an invalid state.

  • If Anki config can’t be loaded, start with new prefs.db

  • Fixed a bug where Anki would close without saving when it was closed while another window was focused.

  • Catch another firewall error.

  • Various other minor fixes.

  • Add shortcut key for history button

  • Work around an issue when backspacing over all text that was formatted.

  • Fix a bug that was causing formatting to be lost when copying between fields.

  • Fix line disappearing in card layout.

  • Resize deck options dialog when it’s opened.

  • Ensure cards have correct due number to make sibling spacing work when importing.

  • Show profile name in title bar

  • Make sure we focus first field when adding next note when JP support add-on installed.

  • Fix a bug where hitting enter in the tags completion list could select the wrong tag.

  • When studying a filtered card, clicking Add will default to that deck.

  • Add a hideable warning to the bottom of the deck list when there are over 25 decks.

  • Fix issues where images with extra properties weren’t being found in unused media.

  • Don’t copy the implicit max-width property on images when pasting between fields.

  • Fix a non-rounded number issue in stats

  • Use correct extension when exporting notes/cards as text.

  • Fix alignment issues in top and bottom toolbars

  • Work around a startup problem on misconfigured Windows systems

  • Ignore sticky fields when checking if blank when add window closed

  • Allow multiple spaces in type answer

  • Work around broken images when pasting/attaching on Linux

  • Fix error when sending non-Latin text to trash on Linux

  • Fix a timer bug (thanks to Frostschutz)

  • Fix unicode error on export

  • Fix enter key in add/remove tags dialog

  • Only show browser close menu item on mac

  • Change the way we deal with non-latin chars in filenames on Windows

  • Include full info on sync error

  • Fix modification check in note merge

  • The 'full sync' option should force a sync even if no other changes were made

  • Various fixes to the Mnemosyne importer

  • Fix find duplicates feature when fieldname case differs

Changes in 2.0.8

  • Fix recording on Windows.

  • Better error when Anki blocked by firewall.

  • Fixed an issue with upgrading some Anki 1 decks.

  • Allow apostrophe in deck names.

  • Some changes which should speed up upgrading old Anki 1 decks.

  • When rescheduling is off in a filtered deck, show "(end)" on buttons that will end studying of that card.

  • Fix extra spaces being included when showing tags on card.

  • Make sure we switch back to the previous deck when creation of a filtered deck cancelled.

  • Fix a bug that was causing the automatically generated Reading field in the Japanese Support add-on to be blanked out again if you clicked directly on the Reading field.

Changes in 2.0.7

  • Add a "suspend card" option to the review screen.

  • Don’t set browser font/size when cards are created, so they take on the system font until customized.

  • Work around slow initial audio playing on Windows caused by antivirus software.

  • Allow Qt4.6 again, but warn on startup that it has known issues.

  • Work around for Japanese furigana on Qt4.6

  • Fix incorrect error message when media sync fails.

  • Fix crashes on Windows/Linux when performing a long search operation in the browser.

  • Fix links appearing twice when clicked in card layout window.

  • Conditional tags now ignore formatting, and require actual text to be considered non-empty.

  • Don’t trigger links when ctrl+shift etc pressed on Windows

  • Better warning when sync fails due to Linux distro packaging error.

  • Fix "Focus Note" menu option in the browser.

Changes in 2.0.6

  • Fix a bug where suspended cards imported from Anki 1 would have the wrong due date.

  • Fix a bug where re-failing a relearning card would not honour the minimum interval setting.

  • Anki will now automatically recover from a syncing error instead of asking the user to post a bunch of numbers on the forum.

  • Fix a bug when anki1.2 decks that hadn’t been opened in Anki 1.2.8 were failing to import.

  • Change from ospalh to make it easier to style the type in the answer box.

  • Remove automatic newlines after field reference that were added in 2.0.5.

  • Fix bug when appending note type to an existing search.

Changes in 2.0.5

  • Possible fix for "host not found" errors when syncing via proxy.

  • Fix a problem when creating filtered deck for deck with spaces.

  • Don’t fail when importing decks that contain media references to subdirs.

  • Don’t open a web browser when 'more…​' clicked on study overview.

  • Add "Close" to browser edit menu; support Command+W to close.

  • Better warning when trying to import non-UTF8 content.

  • Possible fix for supermemo importer.

  • Fix 'show duplicates' when fields contain newlines/formatting.

  • When a user has multiple note types with the same name, clicking on one in the browser will now show only cards for that note type, not all of them.

  • Fix bug caused by applying settings to subdecks when a subdeck was a filtered deck.

  • Fix errors caused by burying (re)learning cards. Like suspending, burying now removes the cards from the learning queue first.

  • Other minor updates.

Changes in 2.0.4

  • You should no longer need to fix decks in Anki 1 when upgrading; if any errors are found, Anki 2 should automatically fix them.

  • The duplicate check while adding cards now ignores HTML when comparing. If your cards have any bold/italics/colours/etc, please run Tools>Maintenance>Full Sync after upgrading so that the duplicate cache can be updated.

  • Anki will now apply a fuzz to review intervals so they spread out more. This fuzz is not reported on the answer buttons, as it is only calculated when the card is actually answered. You can check it in the review history.

  • If you have a failure multiplier set so that failed reviews have their interval reduced rather than zero out, that multiplier will now be applied if you refail the card in the relearning queue as well.

  • You can now customize note types from the tools menu.

  • Possible fixes for proxy connections. Thanks to Arfrever for the heads up on the new httplib2 version.

Import/export:

  • Remember the "allow HTML" setting in the import dialog.

  • Remember import mode across invocations.

  • Add an option to export card q/a rather than notes.

  • Fix importing of LaTeX cache files.

  • When importing a .apkg, make sure the descriptions of the parent decks are imported too.

Browser/Add changes:

  • Allow browser font customization on a per-template basis, via the Cards dialog. Should default to system font.

  • Don’t lose card selection when using "change deck".

  • Newlines in fields should now be converted to a space in the card list.

  • Allow unlimited nesting of decks in browser sidebar.

  • Don’t show 'marked' or 'leeched' tag in browser sidebar, as it’s listed near the top already.

  • When an existing search term is reused, move it to top of the history.

  • When Add window opened, start with empty tag list instead of last tags used by that note type.

  • Disable editor buttons until a field is focused.

The rest:

  • When restoring from a backup, force a full sync.

  • Don’t autorepeat delete key during review.

  • Force full sync if any problems found in db check.

  • When reviewing new cards in a filtered deck, don’t log them as a cram review.

  • Fix bug when renaming foo::bar foo to new parent.

  • Catch missing notes in DB check.

  • Fixed a sync error caused by importing note types from an .apkg

  • When checking if note types match in import, consider question/answer templates as well.

  • Fix lapsed reviews getting learn steps instead of relearn steps.

  • Fix pasting of image URLs with %s.

  • Custom study’s "preview" should not reschedule cards.

  • Fix custom study search for failed cards with 2+ days.

  • Fix possible error in Makefile

  • Refuse to run on Qt4.6, as it’s broken.

  • Don’t use native filepicker on OSX due to crash.

  • Force XP theme on Windows so Anki on Win8 looks better.

  • Add Cmd+W shortcut to add cards window & stats window on OSX

  • Improve various error messages.

  • Some tweaks from Ospalh

  • Addon editor tweaks from Thomas

  • Update old beta.ankiweb references.

  • Increase minimum size of editing area so it can’t be accidentally hidden.

  • Fix a bug where a progress window would appear blank.

  • Display count of notes deleted.

  • Fix issues where unbolding parts of a field would fail.

  • Disable undo when switching profiles.

  • Fix issues with clozes and <% %>.

  • Prevent access to main window while auth dialog shown.

  • Don’t rename if note type rename cancelled.

  • Sort clone: note type items.

  • Clarify that deck description is not in option group.

Add-on authors:

2.0.4 removed some unnecessary imports, which unfortunately broke some add-ons that assumed those imports would exist. One example is add-ons that import 'anki' and then try to access 'anki.stats' without specifically importing 'anki.stats' first.

Changes in 2.0.3

  • Fix some more issues with importing content that used a modified version of models already present in your collection. Decks (including 1.2 decks) are now imported in such a way that repeatedly importing them will no longer result in duplicate note types, notes or cards. The duplicate check only works against previous imports made in 2.0.3 however, so if you imported decks with divergent models in a previous Anki 2 version, the first time you import that content again, a duplicate will be created.

  • Fix a few errors that could occur when renaming decks.

  • Fix timeboxing counting one too many cards on the first session and not accounting for undone reviews.

  • Suspended cards now have their due date shown surrounded by brackets in the browser.

  • When a learning card is suspended, it is moved back to new if it was in initial learning, or moved back to a review card if it was in relearning.

  • Fix 1+ day steps not working for relearning cards.

  • Fixed some issues with settings not syncing due to the collection being accidentally marked as modified when it was loaded.

  • Add decimal point to reviews a day statistic.

  • When creating a filtered deck, default to searching through the current deck.

  • Display a progress window when closing the collection, as it may take a while.

  • Fix font size setting in Add Field button.

Changes in 2.0.2

  • Filtered deck changes:

    • The filtered deck presets have been moved into a new button called "Custom Study" which appears at the bottom of the overview. Daily new & review limits can also be adjusted from that screen.

    • The "filter by tags" preset now presents a dialog like Anki 1.2’s active tags dialog, to make it easier to select tags. If the custom study window is opened again later, Anki will remember the previously selected tags for that deck.

    • Correctly show 3 buttons when showing new cards in a filtered deck.

    • Moved the Filter/Cram button on the decks/overview screen to the tools menu.

    • Filtered decks no longer show their search terms, as they’re confusing to new users and easily findable in the options.

    • Filtered decks now show a brief description of how they work.

    • The custom study option automatically names the filtered deck "Custom Study Session", and will reuse an existing deck if one exists. If you wish to keep a custom study session, you can rename it.

    • Filtered decks now appear in the deck list as blue.

    • When creating a filtered deck, it uses a default name instead of asking you for a name, as you can rename it afterwards if you wish.

    • Change Deck will now move cards out of a filtered deck instead of ignoring them.

  • Stats changes:

    • Information about the current day is now included at the top.

    • The # of cards due tomorrow is listed in the Forecast section.

    • Information about the generated date and limit is included at the bottom.

    • "Save Image" now saves the image to the desktop, making it easier for students to locate it. The stats screen also uses a subtle background now, to make it harder for students to fake the graphs.

    • Make sure we display the review card/time graphs even if there’s only a single data point.

    • Fix x-axis on interval graph when using deck life period.

    • Fix rounding error in history graphs.

  • Importing changes:

    • Fix some issues where your collection could become corrupt if you previously saved or exported a model to different decks and then modified it in different ways.

    • When you export your entire collection, it will automatically be named "collection.apkg" and placed on your desktop.

    • There is no add/replace question when importing - Anki will ask to replace if the imported file is called collection.apkg or is a backup file, and will otherwise add.

    • Use a tooltip instead of a big box when showing "xxx notes imported".

    • Imports from a CSV file now give you the option of escaping HTML characters.

    • Imports from a CSV file now let you choose whether you want to allow duplicates.

    • When importing a CSV file, make sure to update field list when separator is changed.

    • When importing cards from a filtered deck, convert them to normal cards.

  • The Cards screen now has an "Add Field" button for people who feel uncomfortable editing HTML.

  • Newly created collections now include two new note types: forward&reverse type, and a forward&optional reverse type.

  • Anki is now stricter about invalid CSS, to make it more consistent with the other clients.

  • Better warning when deleting fields.

  • Fixed bugs where counts on the deck list didn’t match the overview screen.

  • When the browser is opened during study, it will continue to show the current note like before, but you can now hit enter to quickly show all cards in the deck.

  • The browser will focus on the current card when it’s opened.

  • Don’t return the cursor to the top of the screen when cards are deleted.

  • Don’t throw an error when the edit screen is open and a card is deleted.

  • Show due date for suspended cards.

  • Allow 1 field notes.

  • When the cloze button is clicked in the browser, point the user to the Change Note Type option.

  • The main window will no longer switch to a "resume now" button as soon as you start typing in the Add window.

  • Better error message when insecure LaTeX word is encountered.

  • Work around some errors in Anki 1.2 decks when upgrading.

  • Accept newlines in LaTeX like in Anki 1.2.

  • When LaTeX fails, point the user to the generated .tex file.

  • Unbury cards when returning to the deck list.

  • Don’t remove cards from filtered deck when they’re buried.

  • Fix error when renaming decks and mixing upper/lowercase.

  • When a cloze has a hint, don’t show dots.

  • Fix an error that appeared when editing cards that were in a filtered deck.

  • Add a "Create Deck" button back to the deck list.

  • Holding down the delete key will no longer delete multiple cards in the browser.

  • After media has been added to a field, return focus to that field.

  • Accept enter/space keys when returning to the answer from a different program.

  • Properly display minutes when "studied today" exceeds an hour.

  • Work around a few bugs caused by the mobile clients.

Changes in Anki 2

Translations

This page in other languages:

Please Read This

Your time is precious, and you may not have time to read this whole document - that’s fine. But please read this section, as it points out a few things that are most likely to cause surprises in the new version.

  • If you used Dropbox with previous versions of Anki, please read the next section before upgrading.

  • If you ever exported & imported .anki decks in the previous version, or find you are missing cards after upgrading, please read this section.

  • Reviews are limited to 100/day by default.

  • When you answer "again", there are now two learning reviews of the card, so the learning (orange) count will increase by two.

  • Cloze deletion has been much improved, but now requires you to select a special cloze type (the top left button in the Add window).

  • Selective study is still possible, but is done differently. You can either move cards into different decks (via 'Change Deck' in the card browser), or create a filtered deck that searches for particular tags, card properties and so on.

  • If you study material in multiple directions / used multiple card templates, please see this section for info on how cards are selected now.

  • Anki only checks the first field to see if it’s unique now.

  • If you delete a deck and sync, that deck will now be deleted on your other devices as well.

  • If you use "hide" on any decks in Anki 1, Anki 2 will not automatically import them. You can still import them manually, via File>Import. Anki 1 decks were stored in Documents\Anki by default.

The rest of this page describes all the changes in more detail. For more information, please also see the user manual, which has been completely rewritten for version 2.

Dropbox

If you didn’t use Dropbox in the previous version of Anki, you can skip this section.

If you used Dropbox, before upgrading, please go to Settings>Preferences and change the media section to "keep media next to deck". After that, please open and close each deck in turn in order to move the media back to its original location, so that Anki 2 can find it.

Decks & Profiles

  • Instead of storing each deck in a separate file, Anki now stores all of your decks in a single file called a 'collection'. This makes it easy to move cards between decks, and different decks can now share models and facts.

  • Decks can now be organized in a tree. Use "::" to mark descending levels, like "German::My textbook::Lesson 1".

  • Multiple decks can share the same settings group, so updating the settings for one deck updates the settings for the other decks using that group.

  • If more than one person uses Anki on your computer, you can now create a separate user profile for each user. Each user profile has their own collection of decks, and Anki will remember settings separately for each user. More info.

Terminology

  • A 'fact' is now called a 'note'.

  • Instead of talking about a note’s 'model', we now talk about a note’s 'type'.

  • A 'collection' stores all your notes, cards, and so on.

  • You can divide the cards up into separate groups, called 'decks'.

  • 'Plugins' are now called 'add-ons'.

Per-day limiting

  • The new cards per day limit is controllable per deck, and bounded by the parent decks. This means if "French" has a limit of 20 cards and "French::Lesson 1" and "French::Lesson 2" both have limits of 15 cards, you’ll get 15 cards from lesson 1 but only 5 cards from lesson 2.

  • Decks now have a limit on daily reviews as well, which defaults to 100. When the limit is reached, Anki will not present further reviews from that deck, even if there are cards waiting. When the congratulations page is reached, a notice will be displayed, advising the user that for optimum memory, they should consider increasing the daily limit. This change is intended to reduce the sense of being overwhelmed that people feel after returning to Anki from a break. Large due counts can be off-putting, and while it’s not optimal for a user to leave due cards waiting, if they give up in frustration that’s an even worse outcome.

  • No limit is applied to cards in learning, as the learning count is a product of the number of new cards and reviews that are done each day.

Shared Decks

  • Shared decks can now be browsed on AnkiWeb, and downloaded from your browser.

  • You can now rate and comment on shared decks.

  • You can now pull in new cards from a previously downloaded shared deck.

Selective Study

Anki’s new deck system is based on the following observations:

  • Nested categories like "French→Book 1→Lesson 3" are more intuitive to the typical user than the tags "french book1 lesson3".

  • Many users struggled with the old selective study system, be it because they’d accidentally used overlapping tags that cancelled out what they wanted to do, or because they’d removed particular tags from review and forgotten they’d done so.

  • Tag-based limiting did not perform well - slowdowns of 10x or more were not uncommon.

  • Some users wished to assign different study settings to different cards. This is not practical with tags, as they overlap, and it would require an elaborate system of defining which tags should take precedence for that to work.

Those issues are addressed as follows:

  • In Anki 2, the standard review system is based on the 'current deck', rather than a list of allowed/disallowed tags. Decks can be nested, allowing you to define the order cards should appear in and allowing you to focus on specific subsections individually.

  • Tag-based study is still possible via a flexible filtered deck system, described further below.

As there’s no way to directly map the old selective study feature into the new way of doing things, a little manual setup is required after upgrading if you were using selective study before.

If you had a small number of tags which you switched between, such as "Japanese" and "French", then your best bet is probably to search for each tag in turn in the browser, and use "Change Deck" to move the resulting cards into separate decks.

If you were using selective study to control introduction of new cards (such as blocking lessons 5-18 from being displayed), you could also convert each lesson into a deck, but that’s somewhat cumbersome. An easier method would be to suspend the cards you’re not ready for, and then unsuspend them on a per-lesson basis when you’re ready to study them. You could do it like this:

  1. Search for "tag:lesson* is:new" to find all new cards with a lesson tag. Select them all, and suspend them.

  2. Assuming you were halfway through lesson4 before upgrading, search for tag:lesson4 is:new" and unsuspend any cards that got suspended by the previous step.

  3. When you’re ready to move on to lesson 5, search for "tag:lesson5" and unsuspend the cards.

Priorities

  • Like selective study, card display order is now controlled via nested decks instead of tags. When you select a given deck, Anki walks the deck and its subdecks in alphabetical order looking for cards. So if you have cards in "French::Vocab", "French::Sentences" and "French:Misc" and you select the "French" deck, cards will be fetched first from Misc, then Sentences, and then Vocab, as that is the alphabetical order of those decks. You can use this property to ensure certain cards are reviewed earlier or later than normal: prepending a "!" like "!Vocab" would ensure vocab cards come first, and prepending a "_" would ensure they come last.

  • For more fine-grained reordering of new card presentation order, the browser now has a reposition command which can change the order of new cards in the queue. You can use this for prioritizing material, changing the order cards of different types will be mixed together, and so on.