Giter VIP home page Giter VIP logo

org-anki's Introduction

org-anki

Minor mode to synchronize your org-mode entries to Anki.

Works via AnkiConnect add-on to Anki.[fn:1]

Creates “Basic” type of cords, heading of org entry is set as front, text content until next heading is set as back[fn:2]. See sample.org for how it looks like after all entries are synced to Anki.

Exposes these commands:

org-anki-sync-entry
adds or updates the current org-entry under cursor
org-anki-delete-entry
deletes entry from Anki. Entry must have ANKI_NOTE_ID property

Setup

  • Start Anki with AnkiConnect installed
  • Add #+ANKI_DECK: my-target-deck to top of the .org file
  • Run anki-sync-entry on some heading with content

Note: the card browser must be closed while synchronizing, as it won’t update the note otherwise (issue).

You probably want to bind anki-sync-entry to a key sequence, but not anki-delete-entry – as accidentally deleting notes will become too easy.

In any case, don’t forget to create backups, as deleting notes will lose their scheduling information.

Why

.. as there are anki-editor, pamparam, org-drill, org-fc?

Anki-editor requires subheadings for fields, so existing .org notes need to be modified to be ankified.

The other three are emacs or org-mode only[fn:3], so no spaced repetition from your phone or web.

Todo

  • [ ] convert title and content to html when uploading
  • [ ] target deck: read target deck name until found from
    1. entry property
    2. global property
    3. customized variable (i.e in .emacs)
    4. library default
  • [ ] anki-sync-buffer: adds or updates all entries to Anki;
  • [ ] anki-delete-buffer: deletes all entries from Anki which have ANKI_NOTE_ID property;

Footnotes

[fn:1] AnkiConnect starts a HTTP server on localhost:8765 which the current package talks to.

[fn:2] Even if the next heading is a sub-heading (you probably don’t want subheadings in card contents anyway).

[fn:3] I mean, do you really want to use thes just to use Anki?? :p

org-anki's People

Contributors

eyeinsky avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.