General Information about Exports

There are three kinds of saved items:

  • Phrase
  • Words with context
  • Words without context

A phrase is saved when you click on the star next to a subtitle.

A word with context is saved when you mark a word in the subtitles or the dictionary examples. The word is saved together with the context in which it was saved. When these are exported as Anki flashcards, the context is presented with the marked word removed.

A word without context is saved when you mark a word in the words panel directly. In this case, no context is saved with the word. When the word is exported as a flashcard, one side contains a translation of the word, the other the word itself. It is more desirable to save a word with an example. You can do this by clicking on the word (to open the dictionary), then right clicking on the word in one of the examples there.

Anki Export

To install Anki see this video: https://www.youtube.com/watch?v=Pzmxbvg3j4E

We recently updated the Anki Export with new features! You need to change how you import cards into Anki.

To export cards from the extension, first click this button in the extension side panel, to open the export dialogue.

In the dialogue, select 'Saved Items' and 'Export from Language Reactor...'.

On the website, click 'Export' again...

To get the following dialogue:

The 'Include media' option will export Anki notes (as a CSV file) along with media files (images and audio) together in a zip archive. You will need to unzip the archive, then copy the media files into the Anki media folder. Depending on your operating system, you can find this folder in a different location:

On Windows

The latest Anki versions store your Anki files in your appdata folder. The full path is something like: C:Users[WINDOWS USERNAME]AppDataRoamingAnki2[ANKI USERNAME]collection.media . Older versions of Anki stored your Anki files in a folder called Anki in your Documents folder.

On Mac

Recent Anki versions store all their files in the [HOME DIRECTORY]/Library/Application Support/Anki2 folder. Then open a folder with your username, and finally, open collection.media 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 [HOME DIRECTORY]/.local/share/Anki2, or $XDG_DATA_HOME/Anki2 if you have set a custom data path. Then open a folder with your username, and finally, open collection.media folder. Older versions of Anki stored your files in [HOME DIRECTORY]/Documents/Anki or [HOME DIRECTORY]/Anki.

To export the notes into Anki, go to 'file' and 'import'.

In the import dialogue, you must select 'Cloze' type, Field seperator should be ' ' (Tab), and select 'Allow HTML in fields'. You must check these options are set correctly every time you import, or the notes will not be imported correctly.

Here's how it looks when you set the field seperator.

That's it. Click 'Import'. From the main screen, you can now browse your cards.

Click 'Whole Collection' to see all your cards.

You can sync your cards to your the Anki App on your phone (AnkiMobile on iOS and AnkiDroid on Android).

CSV Export

This export format exports one item per line (Tab seperated). It can be imported into Anki using a custom note type.

This feature hasn't been reviewed in a while and could probably be improved.

The CSV fields are:

  • 'Item key'
  • 'Item type' ('WORD or 'PHRASE')
  • 'Subtitle'
  • 'Translation'
  • 'Word'
  • 'Lemma'
  • 'Part of speech'
  • 'Color'
  • 'Word definition'
  • 'Source'
  • 'Language'
  • 'Translation language'
  • 'Word transliteration'
  • 'Phrase transliteration'
  • 'Subtitle index'
  • 'Video ID'
  • 'Video title'
  • 'Date created'
  • 'Context'
  • 'Context machine translation'
  • 'Context human translation'
  • 'Previous Image media filename'
  • 'Next Image media filename'
  • 'Audio clip media filename'

Forum user Weissblattangst created an Anki Custom Note type, get it here: https://ankiweb.net/shared/info/1580143799 .

JSON Export

This option will export a JSON document with your saved items. Here's typescript 'schema' for the data.

export type savedItem_EXPORT_t = savedWord_EXPORT_t | savedPhrase_EXPORT_t;

interface savedWord_EXPORT_t {

   itemType: 'WORD';

   langCode_G: string;

   context: {

       wordIndex: number;

       phrase: phrase_EXPORT_t;

   } | null;

   tags: string[];

   learningStage: 'LEARNING' | 'KNOWN' | 'SKIPPED'

   wordTranslationsArr: string[] | null;

   translationLangCode_G: string;

   wordType: 'lemma' | 'form';

   word: {

       text: string;

       translit?: string; // currently only Korean, Thai, Japanese (kana)

       pinyin?: string[];

       tones?: number[];

   };

   timeModified_ms: number;

   audio: itemAudio_EXPORT_t | null;

   freqRank: number | null;

}

interface savedPhrase_EXPORT_t {

   itemType: 'PHRASE';

   langCode_G: string;

   translationLangCode_G: string;

   tags: string[];

   learningStage: 'LEARNING' | 'KNOWN' | 'SKIPPED'

   context: {

       phrase: phrase_EXPORT_t;

   };

   timeModified_ms: number;

   audio: itemAudio_EXPORT_t | null;

   freqRank: number | null;

}

export interface phrase_EXPORT_t {

   subtitleTokens: {

       0: Array<ud_single_EXPORT_t> | null;

       1: Array<ud_single_EXPORT_t>;

       2: Array<ud_single_EXPORT_t> | null;

   };

   subtitles: {

       0: string | null;

       1: string;

       2: string | null;

   };

   mTranslations: {

       0: string | null;

       1: string;

       2: string | null;

   } | null;

   hTranslations: {

       0: string | null;

       1: string;

       2: string | null;

   } | null;

   reference:

       | NF_reference_EXPORT_t

       | YT_reference_EXPORT_t

       | TEXT_reference_EXPORT_t

       | VIDEO_FILE_reference_EXPORT_t

       | DICTIONARY_reference_EXPORT_t;

   thumb_prev: thumbImage_EXPORT_t | null;

   thumb_next: thumbImage_EXPORT_t | null;

}

interface ud_single_EXPORT_t {

   form: {

       text: string;

       translit?: string; // currently only Korean, Thai, Japanese (kana)

       pinyin?: string[];

       tones?: number[];

       // hash?: string;

   };

   pos: // 17 Universal POS tags:

   | 'ADJ'

       | 'ADP'

       | 'ADV'

       | 'AUX'

       | 'NOUN'

       | 'PROPN'

       | 'VERB'

       | 'DET'

       | 'SYM'

       | 'INTJ'

       | 'CCONJ'

       | 'PUNCT'

       | 'X'

       | 'NUM'

       | 'PART'

       | 'PRON'

       | 'SCONJ'

       // Unknown text, either UDPipe returned nothing

       // for this token, or simpleNLP identified it as

       // not whitespace and not punctuation:

       | '_'

       // Whitespace:

       | 'WS';

   index?: number;

   lemma?: {

       text: string;

       translit?: string; // currently only Korean, Thai, Japanese (kana)

       pinyin?: string[];

       tones?: number[];

       // hash: string;

   };

   xpos?: string;

   features?: any;

   pointer?: number;

   deprel?: string;

   freq?: number;

}

export interface YT_reference_EXPORT_t {

   source: 'YOUTUBE';

   channelId: string | null;

   ownerChannelName: string | null;

   langCode_YT: string; // Youtube langauge code

   langCode_G: string | null; // not always available

   title: string | null; // not always available

   movieId: string;

   subtitleIndex: number;

   numSubs: number;

   startTime_ms: number | null; // not available for older items

   endTime_ms: number | null; // not available for older items

}

export interface NF_reference_EXPORT_t {

   source: 'NETFLIX';

   movieId: string;

   langCode_N: string;

   langCode_G: string | null;

   title: string | null;

   subtitleIndex: number;

   numSubs: number;

   startTime_ms: number | null;

   endTime_ms: number | null;

}

type TEXT_reference_EXPORT_t = {

   source: 'TEXT';

   movieId: null; // null if unsaved text, or text id if saved.

   title: string | null;

   tm: {

       langCode_G: langCode_G_t;

   };

   url: string | null;

};

type VIDEO_FILE_reference_EXPORT_t = {

   source: 'VIDEO_FILE';

   movieId: string; // subs md5, used for querying

   title: string; // file name, used for querying

   subtitleIndex: number;

   numSubs: number;

   startTime_ms: number;

   endTime_ms: number;

   tm: {

       langCode_G: langCode_G_t;

       subsFileName: string;

   };

};

type DICTIONARY_reference_EXPORT_t = {

   source: 'DICTIONARY';

   tm: {

       langCode_G: langCode_G_t;

   };

   // title, movieId probably won't be used, but make TS checks more simple

   title: string | null;

   movieId: string | null;

};

export interface thumbImage_EXPORT_t {

   height: number;

   width: number;

   time: number;

   dataURL: string;

}

export interface itemAudio_EXPORT_t {

   source: 'microsoft' | 'google' | 'movie';

   voice: string | null;

   outputFormat: string; // e.g. 'Audio24Khz48KBitRateMonoMp3'

   dateCreated: number; // unix timestamp

   dataURL: string;

}

;