ll-in-anki / find-missing-words

Find words in a text that you don't have Anki flashcards for yet
14 stars 0 forks source link
anki anki-addon

Find Missing Words in Anki

An Anki add-on for searching through your collection to find gaps in your vocabulary and quickly create notes to fill in those gaps.

This is a similar flow to LingQ or ReadLang. But instead of starting your vocab from scratch, it uses your existing Anki collection to find which words you don't know.

Demo

Video demo

Installation

See AnkiWeb for quick install instructions.

Addon code: 754868802

Usage

Search

  1. Open the "Find Missing Words" addon from the Anki Tools menu
  2. Optionally filter your search
    • By deck and/or by models and their fields
    • Check the box next to the filter to enable it, disable to leave search open
    • This filter will determine if the words in the text are considered 'known' or 'missing.'
    • Note: including the fields in the search is much more accurate than leaving it blank (all fields).
  3. Enter text into the text area
  4. Click "Search"

Example of model/field filter. I usually add words to these two note types/fields:

Search with populated info:

Word Select

Upon search, you are presented with a window that shows the text, with words not found in your query colored green.

Known Words

These will not be colored green, but can be clicked on to view the current notes that contain the word.

  1. Click on word in left pane
  2. In right pane, view the list of notes that contain the word
    • Note: these will only be notes that contain the word and fall within the filter parameters.
  3. Click on a note entry in the list
  4. Use the editor to make any adjustments, if necessary

New Words

  1. Click on a green word bubble that holds a new word
  2. In the right pane, notice there are two options
    1. Ignore the word (marks the word as known, removes green highlighting)
    2. Create a note based on a note preset
Ignoring

Ignoring a word is handy when you are just starting to use the addon and many little, insignificant words (articles, stop words, proper nouns, words you know by heart) are shown in green. You don't need cards for them, so you can ignore them and they will cease to show up as green from now on.

Create Note from Note Preset

Now for the fun part: actually creating notes for missing words.

When you first start out, you won't have any note creation presets. A note creation preset is a mapping that tells the extension what you'd like to do with a new word. This includes the location (deck and model/field) as well as the surrounding sentences for context (more on that later).

To create a preset:

  1. Click the plus ('+') button
    • This brings up the config (more on that later, too)
  2. On the "Note Creation" tab of the config, click on "Add" at the bottom of the list pane
  3. Choose a name for your preset
    • E.g. "Fill in the Blank," "New Word Form," "Word Order"
  4. Choose a destination for the word
    1. Note type (the model, e.g. "Basic")
    2. Word destination Field (e.g. "Front")
  5. Optionally use the surrounding sentence(s) for context
  6. Save, you will be taken back to the Note Creation view
  7. Click on the new Note Creation Preset button (e.g. "Fill in the Blank")
  8. View the pre-populated fields, fill in any extra info for your note

Upon adding a note, the word that was selected (and any duplicates) will be marked as "known" and cease to be highlighted in the word selection view.

Clicking on the same word again will bring up the (new) note(s) associated with it. The regular note editor will be used instead of the "Add Note Editor" (notice not "Add" or "Cancel" buttons at the bottom).

Sentences

For a note creation preset, you can include the surrounding sentences for helpful context.

To add sentences:

  1. Enable the sentence box by checking the box next to "Sentences"
  2. Pick a field (based on the "Note Type" model fields from above)
  3. Pick a sentence configuration type
    1. Whole sentence
    2. Word blanked out (word -> "__")
    3. Word removed (word -> "")
    4. Word clozed (reuse cloze for all occurrences)
      • "{{c1::word}} ... {{c1::Word}} ... {{c1:: word}}"
      • All word occurrences revealed on card flip
    5. Word clozed (separate cloze for each occurrence)
      • "{{c1::word}} ... {{c2::Word}} ... {{c3:: word}}"
      • Helpful for creating multiple cards
  4. Optionally add more sentence configurations
    • E.g. one for whole sentence in the "whole sentence" field and another for a "sentence with word blanked out" field

Config

The config has two parts:

  1. Search configuration
  2. Note creation presets

We've just discussed #2 above, so here's some info on search configuration:

Search Configuration

This tab of the config lets you set defaults to save time by not having to re-enter the search filters.

Filters

Here, you can set a default deck and note/field combination for future searches. The steps are the same as the above Search section. If you use the same deck and fields for your words in Anki, these are for you.

Ignored Words

In this text box, you can enter the words you don't want showing up as 'new' in the word select step.

The words are separated by new lines; and common punctuation is ignored by default. When you ignore words in the Word Select view, they will save to your config and be sorted for you to see here.

Before and after ignoring a word:

Clicking "Ignore" in the top right in the Note Creation pane:

Seeing the word ignored in the config:

Saving and Cancelling

Clicking "Cancel" will revert the config to the state/preferences it had when you opened it. Clicking "Save All" will save any changes on both tabs that were made since opening the config.

Contributing


Enjoy!