summaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorLeon Rische <leon.rische@me.com>2020-01-15 14:55:07 +0100
committerLeon Rische <leon.rische@me.com>2020-01-15 14:55:07 +0100
commit119562350f67e5f058ca4aecaadd3ee204662fa9 (patch)
tree8e71b950ecb06b236378a4f6f9fb52e485c47560 /doc
parent60d8d2e1628b878fd55440bfa0f594c7a928245a (diff)
Split more docs into separate file
Diffstat (limited to 'doc')
-rw-r--r--doc/alternative_applications.org10
-rw-r--r--doc/custom_spacing_algorithms.org (renamed from doc/custom_card_types.org)10
-rw-r--r--doc/review_internals.org38
3 files changed, 58 insertions, 0 deletions
diff --git a/doc/alternative_applications.org b/doc/alternative_applications.org
new file mode 100644
index 0000000..e984f5e
--- /dev/null
+++ b/doc/alternative_applications.org
@@ -0,0 +1,10 @@
+#+TITLE: Alternative Applications
+
+While the primary application is learning information using spaced
+repetition, at the end, the API should be flexible enough to implement
+other kinds of repeating tasks where it is necessary to store data in
+addition to the next date.
+
+One example would be storing one exercise per heading, using the
+positions to store one or more sets and logging the number of
+repetitions done on each "review".
diff --git a/doc/custom_card_types.org b/doc/custom_spacing_algorithms.org
index a4a034a..9aab5f5 100644
--- a/doc/custom_card_types.org
+++ b/doc/custom_spacing_algorithms.org
@@ -9,3 +9,13 @@ assumptions about the format of the review data.
A good implementation of this should allow using different spacing
algorithms based on a ~:FC_SPACING:~ property in the card.
+
+There are more advanced / complicated algorithms that could be
+implemented (SM5, MPI).
+
+In the years I've been using this algorithm, I've averaged a
+forgetting rate of ~6.8% on cards outside of the learning phase (box
+>= 2).
+
+I think the main benefit would be a decreased review frequency / density.
+I'm not sure the added complexity is worth this.
diff --git a/doc/review_internals.org b/doc/review_internals.org
new file mode 100644
index 0000000..60c1b7c
--- /dev/null
+++ b/doc/review_internals.org
@@ -0,0 +1,38 @@
+#+TITLE: Review Internals
+
+* Implementation
+Review is implemented by storing due cards in a global variable. The
+buffer the card is displayed in never leaves =org-mode=, [[https://github.com/abo-abo/hydra][abo-abo/hydra]]
+is used to show review statistics (number of cards remaining, percent
+again/hard/good/easy) and prompt for user actions.
+
+1. jump to the file + id of the current card
+2. set it up for review (i.e. hiding parts of the buffer)
+3. open a hydra prompting to flip the card
+4. flip the card or quit the review session
+5. open a hydra prompting for a rating
+6. rate the card or quit the review session
+7. set the current card to the next card due
+8. continue at 1.
+
+If an error occurs during review, ~org-fc-review-quit~ can be used to
+reset the current buffer and the review state.
+* Display of Cards
+Headlines are presented for review by hiding the all top level
+headings before and after the one the heading to be reviewed is
+located in.
+
+This is done through the function ~org-fc-org-narrow-tree~.
+~org-fc-show-all~ can be used to remove all overlays (i.e. reset the
+display of the buffer).
+
+All parent headings are shown but their body text (~section~) is
+hidden.
+
+If the file has a ~#+TITLE:~ keyword this is shown, too.
+
+To hide the title during review (e.g. for a "Definition" flashcard),
+add a ~:notitle:~ tag to the heading.
+
+To hide the heading text of the current card during review, add a
+~:noheading:~ tag.