[Anki] Tutorials

This thread is over 2 years old and the last reply was over a year ago.
@CyrusS should this thread not have been archived?

@MikkaT1 Katakana will activate on capitalization.

If you press Enter or 1 it will go forward as the “Good “ button. You can press 1 for “Again”

@sornvru I still answer the replies. So I don’t mind it being open.

Thanks :slight_smile:

Threads in this sub-forum don’t have an auto-close date like the rest do. We wanted to leave it open in case app creators came back after long breaks to update, etc.


@hinekidori Hi, may I ask which TTS engine you used, for example in your WK Example Sentences deck?
That TTS voice is amazing and I would like to use it in my decks as well. For now I’m using AnkiDroid with turned on TTS. So it automatically uses Google TTS for all my cards. No need for audio files. I really love it.

But your TTS sounds much better than the Google TTS and I think having a good TTS is a huge benefit for learning Japanese. So would you mind to give some details about how you created that WK Example Sentences deck? And do you know if there is any real TTS engine (which can be set up as primary TTS service) available for android, that is better than Google’s Japanese TTS?

Thanks a lot

To be honest I don’t remember. I’m not usually a fan of TTS. This was just the best compromise at the time. I do remember that what I was using had a selection of options of which I tried to choose what I thought sounded best.

Sorry I couldn’t be more helpful.

1 Like

So, if you happen to be an unscrupulous student like myself and want to study your Anki decks at work, but are hampered by a restrictive corporate firewall, the beta version of Anki allows you to skip SSL verification and not be blocked by said firewall (probably).

All you have to do is install the beta version of Anki and run the following commands. You can save this as a .bat file and run it (changing the location of Anki here if you installed it somewhere else).

start "" "C:\Program Files (x86)\Anki\anki.exe"

I have the .bat file on my desktop, next to my kill-the-antivirus script, but it should work anywhere.

So in short if I input all the same settings/intervals as posted above if I ever see the Anki algorithm pop up (four buttons) then I just hit again.

Other than that I should hit again and good only. Just want to make sure I’m using this right because it’s all above my level of understanding.

After the first time I see a card and I select “good” does it “graduate” and I will then see it with four buttons? Or does it graduate after it reaches the 121 day interval (161280 min)

The way I have it set up you will see four buttons after the 4320 mark. This is in order to move it into the Lapses pile, which you can do by hitting Again. Once you hit the 161280 mark you will then just decide if you want to let the Anki algorithm take over for the card or suspend it if you feel you really know it.

Hope that makes sense.


I think it does. I will hit AGAIN when I see the four buttons appear the first time to move it into the Lapses pile. Once I move it is there I will see the card again in 1 min and hit GOOD. Then it moves to the 10080 min interval.

Not sure how it will all play out but I’m just trusting you are way smarter than me and it will work similar to WaniKani as you say!

If you are interested I have moved on to using Kitsun.io which has a couple of my decks on there. It solves some of the issues that Anki has.


Thanks for the explanation. Now I finally understand how it works. But I still have a question regarding Starting Ease.

If I understand correctly after 4320 mark card will get 250% Ease. After 3 days (Graduating interval) I will see this card again with 4 buttons, right? So I hit Again to bypass Anki’s algorithm and put this card into Lapses pile but Ease Factor will drop to 230% (2.3) after hitting Again button, right? As far as I know the new interval is calculated by this equation = current interval * ease (2.5 by default) * interval modifier (1 by default). Wouldn’t it affect the next interval 10080 in this case or Ease Factor won’t come into play until 161280 mark is reached?

Hi @hinekidori! Is moving from Anki to Kitsun worth the price of $6.50 a year?
Pretty expensive in my opinion.

Thank you.

Correct. Ease factor won’t come into play until you are out of the Lapses pile

1 Like

It’s subjective to your needs. Personally I consider it well worth it. Kitsun.io solves a lot of issues I had with Anki.

I would recommend trying it out and seeing if it is a good fit for you.

1 Like

I see. Thanks. By the way, there is a new beta scheduler in Anki 2.1 and there are 4 buttons for learning cards as well )

Learning cards have 4 buttons instead of 3 - Hard repeats the current step after the first step, and is the average of Again and Good on the first step.

@hinekidori i need help about your anki deck core 10k breakdown. i dont understand anki very well, and dont know how to use forums correct too, so im sorry if i am in the wrong place.

when i review the content of the deck, and I answer wrong, like wk , my answer will be '‘red’. but the anki buttons is ‘‘again’’, ‘‘good’’ and ‘‘easy’’. i would like to know what happens when i answer wrong but press ‘‘good’’. anki will consider wrong or ‘‘good’’? cuz every time i answer wrong i just press the ENTER, and its the same thing as hitting the ‘‘good’’ buttom? idk why but i dont have the ‘‘hard’’ buttom, and i dont know if your anki undertand that its wrong and consider it wrong.

if i got the answer wrong, i would like the anki to understand that i hit wrong of course. but im affraid of the anki understanding as ‘‘correct’’.

dont know if you understood my question, but im not good with anki, and im not a good english speaker :c

thank you!

Hi @himidesu
Not Hinekidori here, but I’m using the same deck :wink:

Long version

As far as I understood it checks whether what your input is correct but then you have to manually decide which button (usually Again/Good/Easy , but at times you get 4 options). So it’s there mostly so you get the same experience as on WK (writing the word down and checking it for you), but then you are the final judge i.e. you decide. [You could even skip writing the word and leaving the field empty but then it would be the common 10k…]

I write the word, then press “Enter”, (replay the audio with “R”) and then press one of the default buttons. But don’t do it with the mouse! You can press the keys “1”, “2”, “3” (and so on) on the keyboard so you don’t waste time switching between mouse/touchpad and keyboard.
1 ----> Again
2 -----> Second Button (Usually “Hard” or “Good”)
3 -----> Third Option (Usually called “Easy”)

I checked the behaviour you expected: I tried the same card with both the correct and wrong answers (pressing CTRL+Z) and Anki selected the same button (the “good” one aka number “2”) so pressing Enter would be the same as pressing always 2, independently of whether I got it right or wrong.

TL;DR: Do not press Enter, as far as I can see that doesn’t work the way you want it to (and I suppose you would have to crack/rewrite Anki to make it work that way…so, not possible).
Just check whether the color was green or red, and then press “1” or “2” or “3”.

But i dont have the “hard” buttom, so if i press “again” it ll consider like “wrong”? Cuz the other options is good and easy :c

Hi @hinekidori

I’m trying to modify your card template. I want to get rid of container with left and right columns but there is an element altmean which can’t be deleted without breaking a template


<div id="container">
<div class="row">
  <div class="column left">
    <div id="item-info">Meaning</div>
    <p class="english">{{English}}</p>
    <p id="altmean" class="alt-english">{{Alternative Meanings}}</p><br>
    <div id="item-info">Reading</div>
    <p class="furigana">{{kana:Reading}}</p>
    <p class="alt-english">{{furigana:Alternative Reading}}</p><br>
    <div id="item-info">Part of Speech</div>

I guess it has something to do with this script

//Script for modifying 'Show Answer' behavior for Input types.
var htmlTextNodes = [];
var innerHTMLText = [];
var htmlNodeLength =document.getElementById('typeans').childNodes.length;
var typedAnswer;
var correctAnswer;
var firstBr = null;
var secondBr;

//capture each node to array
for (i = 0; i < htmlNodeLength; i++) {
  htmlTextNodes[i] = document.getElementById('typeans').childNodes[i];
 innerHTMLText[i] = document.getElementById('typeans').childNodes[i].innerHTML;
 //locate <br> tags for output change markers
 if (document.getElementById('typeans').childNodes[i].nodeName == "BR") {
  console.log("Runs if BR");
  if (firstBr != null) {
   secondBr = i;
  } else {
   firstBr = i;

//If answer is correct, firstBr will still be null, so must set to length of typeans.childNode
if (firstBr == null) {
 firstBr = htmlNodeLength;

//assemble typed and correct answer strings
str2 = innerHTMLText.slice(0,firstBr).join("");
var typeParse = str2.replace(/[(/\W, " ")]/g,' ');
var typedAnswer = typeParse.replace(/\s/g, '');
var typedAnsDis = str2.replace(/[^a-zA-Z0-9]/g,' ');
var typedUpper = typedAnswer.toUpperCase();

//typedUpper = "KITTEN"
var corr = document.getElementById('correctAnswer');
str = corr.innerHTML;
var correctParse = str.replace(/[/\W, " "]/g,' ');
var correctAnswer = correctParse.replace(/\s/g, '');

//split alternative answers into array
var getalt = document.getElementById('altmean');
var altmean = getalt.innerHTML;
altmean += ", "
altmean += correctAnswer;
var array = altmean.split(", ");
for ( var i = 0; i < array.length; i++ ) {
    array[i] = "" + array[i].toUpperCase() + "";
    array[i] = "" + array[i].replace(/[/\W, " "]/g,' ');; + "";
    array[i] = "" + array[i].replace(/\s/g, ''); + "";

//Modify answer output
if ((array.indexOf(typedUpper) > -1) &&  (!(typedUpper == "" ))) {
 var c = "<div class=\"animated fadeIn\" id='correct'>"+typedAnsDis+"</div>";
 var d = document.getElementById('typeans');
 d.innerHTML =  c;
} else {
if(typedAnsDis == "") {
typedAnsDis = ":chicken: :chicken: :chicken:";
 var e = "<div class=\"animated fadeIn\" id='incorrect'>"+typedAnsDis+"</div>";
 var f = document.getElementById('typeans');
 f.innerHTML =  e;

Could you please tell me if it’s possible to get rid of Alternative Meaning (I don’t need it) without breaking template? I spent 2 days googling and trying to figure this out but to no avail xD.