Emacs minor mode for making Anki cards with Org Mode
Find a file
2018-01-31 23:12:25 +08:00
anki-editor.el Add a command to cloze region 2018-01-31 23:12:25 +08:00
demo.gif Rework demo 2018-01-07 16:54:58 +08:00
examples.org Fix elements being joined together after replacing 2018-01-28 16:04:20 +08:00
README.org Add a command to cloze region 2018-01-31 23:12:25 +08:00

anki-editor Make Anki Cards in Org-mode

Installation

Requirements

  • anki-connect, an Anki add-on required by this package to interact with Anki.
  • curl

If you have MELPA in your package-archives, just M-x package-install RET anki-editor RET, or install it manually by downloading and visiting /elisp/anki-editor/src/commit/8523ddb9c1bc5a1a2cf8f0b7dc4328e6e1c8cb72/anki-editor.el in your emacs buffer, and M-x package-install-from-buffer RET.

Usage

The Syntax

Now you can compose Anki notes in Org syntax, e.g. lists, code blocks, tables, latex fragments / environments, when being submitted to Anki, they will be converted to HTML by Org-mode's HTML backend with specific markers (e.g. latex) translated to the Anki style.

The structure of contents is as follow, which is inspired by org-drill. See examples.org for reference.

* English                                           :deck:
** Vocabulary
*** Item                                            :note:
    :PROPERTIES:
    :ANKI_NOTE_TYPE: Basic (and reversed card)
    :ANKI_TAGS: vocab idioms
    :END:
**** Front
     (it's) raining cats and dogs
**** Back
     it's raining very hard
  • Headings of deck are tagged with deck
  • Headings of note are tagged with note
  • Levels are not significant, but note headings must be descendents of their deck headings
  • Custom properties of a note heading can be used to specify note type and tags
  • Subheadings of a note heading are fields of its note type

Command Cheatsheet

Command Brief Description
anki-editor-submit Send notes in current buffer to Anki.
anki-editor-insert-deck Insert a deck heading.
anki-editor-insert-note Insert the skeleton of a note.
anki-editor-insert-tags Insert a tag at point with autocompletion.
anki-editor-cloze-region Cloze region.
anki-editor-export-heading-contents-to-html Export the contents of the heading at point to HTML.
anki-editor-convert-region-to-html Convert and replace region to HTML.

Note that anki-editor-submit will fail if the deck does not exist yet. New decks must be created in Anki first.

Since I'm not a native English speaker, let me know if there's any ambiguity or grammatical mistakes.

Demo

/elisp/anki-editor/media/commit/8523ddb9c1bc5a1a2cf8f0b7dc4328e6e1c8cb72/demo.gif

Change Log

0.1.2

  • Make deck/note insertion commands smarter on choosing insertion point
  • Bug fixes