summaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorThanos Apollo <[email protected]>2024-02-18 16:33:05 +0200
committerThanos Apollo <[email protected]>2024-02-18 16:33:05 +0200
commitf5334b5ba4a2bf8bc4e1abbbf5f7890c3891b701 (patch)
tree9b16a5b73d66c09611d32955ffec38fcaf489ef5 /doc
parent6a91e428cdb78c9f2add0aadc27c4509f11aff08 (diff)
doc: Update for version 0.1.7
Diffstat (limited to 'doc')
-rw-r--r--doc/gnosis.info185
-rw-r--r--doc/gnosis.org100
-rw-r--r--doc/gnosis.texi140
3 files changed, 221 insertions, 204 deletions
diff --git a/doc/gnosis.info b/doc/gnosis.info
index 712033c..348e70a 100644
--- a/doc/gnosis.info
+++ b/doc/gnosis.info
@@ -15,12 +15,11 @@ Gnosis (γνῶσις), pronounced "noh-sis", _meaning knowledge in Greek_, is
a spaced repetition system implementation for note taking and self
testing.
-This manual is written for Gnosis version 0.1.5, released on 2023-01-29.
+This manual is written for Gnosis version 0.1.7, released on 2023-02-18.
• Official manual: <https://thanosapollo.org/user-manual/gnosis>
• Git repositories:
- • main: <https://git.thanosapollo.org/gnosis>
- • sourcehut (mirror): <https://git.sr.ht/~thanosapollo/gnosis>
+ • <https://git.thanosapollo.org/gnosis>
* Menu:
@@ -29,6 +28,7 @@ This manual is written for Gnosis version 0.1.5, released on 2023-01-29.
* Adding notes::
* Note Types::
* Customization & Extension::
+* Gnosis Algorithm::
-- The Detailed Node Listing --
@@ -47,16 +47,15 @@ Note Types
Customization & Extension
-* Adjust string comparison::
+* Adjust for typos | String Comparison::
* Creating Custom Note Types::
-* Customizing Gnosis Algorithm::
-* Auto push changes::
-Customizing Gnosis Algorithm
+Gnosis Algorithm
-* Gnosis Algorithm Initial Interval::
-* Gnosis Algorithm Easiness Factor::
-* Gnosis Algorithm Forgetting Factor::
+* Initial Interval::
+* Easiness Factor::
+* Forgetting Factor::
+* Auto push changes::

@@ -79,10 +78,8 @@ File: gnosis.info, Node: Installation, Next: Adding notes, Prev: Introduction
2 Installation
**************
-Gnosis is not currently available in any ELPA, the recommended way to
-install gnosis is via straight.el:
-
- <https://github.com/radian-software/straight.el>
+Gnosis is available via MELPA
+ • <https://melpa.org/#/gnosis>
* Menu:
@@ -256,43 +253,41 @@ the ANSWER must be either 121 (‘y’) or 110 (‘n’), as those correspond to
the character values used to represent them.

-File: gnosis.info, Node: Customization & Extension, Prev: Note Types, Up: Top
+File: gnosis.info, Node: Customization & Extension, Next: Gnosis Algorithm, Prev: Note Types, Up: Top
5 Customization & Extension
***************************
To make development and customization easier, gnosis comes with
-‘gnosis-dev’ module, that should be used to create a custom database for
-testing.
+‘gnosis-test’ module, that should be used to create a custom database
+for testing.
- To use ‘gnosis-dev’, first you have to ‘(require 'gnosis-dev)’ & run
-‘M-x gnosis-dev-test’. This will create a new directory 'testing' with
-a new database.
+ To use ‘gnosis-test’, first you have to ‘(require 'gnosis-test)’ &
+run ‘M-x gnosis-test-start’. This will create a new database 'testing'
+with random inputs.
- To exit the testing environment, rerun ‘M-x gnosis-dev-test’ and then
-enter ‘n’ (no) at the prompt "Start development env?"
+ To exit the testing environment, rerun ‘M-x gnosis-test-start’ and
+then enter ‘n’ (no) at the prompt "Start development env?"
* Menu:
-* Adjust string comparison::
+* Adjust for typos | String Comparison::
* Creating Custom Note Types::
-* Customizing Gnosis Algorithm::
-* Auto push changes::

-File: gnosis.info, Node: Adjust string comparison, Next: Creating Custom Note Types, Up: Customization & Extension
+File: gnosis.info, Node: Adjust for typos | String Comparison, Next: Creating Custom Note Types, Up: Customization & Extension
-5.1 Adjust string comparison
-============================
+5.1 Adjust for typos | String Comparison
+========================================
-You may adjust ‘gnosis-string-difference’, this is a threshold value for
+You can adjust ‘gnosis-string-difference’, this is a threshold value for
string comparison that determines the maximum acceptable Levenshtein
distance between two strings, which identifies their similarity
Let's illustrate with an example:
(setf gnosis-string-difference 1)
- In this scenario, we set 'gnosis-string-difference' to 1. This
+ In this scenario, we set ‘gnosis-string-difference’ to 1. This
implies that two strings will be recognized as similar if they exhibit a
difference of at most one character edit.
@@ -301,7 +296,7 @@ similar, considering that the latter involves just one additional
character."

-File: gnosis.info, Node: Creating Custom Note Types, Next: Customizing Gnosis Algorithm, Prev: Adjust string comparison, Up: Customization & Extension
+File: gnosis.info, Node: Creating Custom Note Types, Prev: Adjust for typos | String Comparison, Up: Customization & Extension
5.2 Creating Custom Note Types
==============================
@@ -333,22 +328,23 @@ should be done.
‘gnosis-display’ functions

-File: gnosis.info, Node: Customizing Gnosis Algorithm, Next: Auto push changes, Prev: Creating Custom Note Types, Up: Customization & Extension
+File: gnosis.info, Node: Gnosis Algorithm, Prev: Customization & Extension, Up: Top
-5.3 Customizing Gnosis Algorithm
-================================
+6 Gnosis Algorithm
+******************
* Menu:
-* Gnosis Algorithm Initial Interval::
-* Gnosis Algorithm Easiness Factor::
-* Gnosis Algorithm Forgetting Factor::
+* Initial Interval::
+* Easiness Factor::
+* Forgetting Factor::
+* Auto push changes::

-File: gnosis.info, Node: Gnosis Algorithm Initial Interval, Next: Gnosis Algorithm Easiness Factor, Up: Customizing Gnosis Algorithm
+File: gnosis.info, Node: Initial Interval, Next: Easiness Factor, Up: Gnosis Algorithm
-5.3.1 Gnosis Algorithm Initial Interval
----------------------------------------
+6.1 Initial Interval
+====================
‘gnosis-algorithm-interval’ is a list of 2 numbers, representing the
first two initial intervals for successful reviews.
@@ -362,85 +358,92 @@ you will see it again tomorrow, if you successfully review said note
again, the next review will be after 3 days.

-File: gnosis.info, Node: Gnosis Algorithm Easiness Factor, Next: Gnosis Algorithm Forgetting Factor, Prev: Gnosis Algorithm Initial Interval, Up: Customizing Gnosis Algorithm
+File: gnosis.info, Node: Easiness Factor, Next: Forgetting Factor, Prev: Initial Interval, Up: Gnosis Algorithm
-5.3.2 Gnosis Algorithm Easiness Factor
---------------------------------------
+6.2 Easiness Factor
+===================
-‘gnosis-algorithm-ef’ is a list that consists of 3 items.
+The ‘gnosis-algorithm-ef’ is a list that consists of three items:
- The first item is the increase factor, used to increase the easiness
-factor upon successful review.
+ 1. Easiness factor increase value: Added to the easiness factor upon a
+ successful review.
- Second item refers to the decrease factor, used to decrease the
-easiness factor upon an unsuccessful review.
+ 2. Easiness factor decrease value: Subtracted from the total easiness
+ factor upon a failed review.
- The third item is the initial total easiness factor, used to
-calculate the next interval.
+ 3. Initial total easiness factor: Used to calculate the next interval.
- The basic's of how this is used is that it's being multiplied with
-the last interval upon a successful review, e.g if you last reviewed a
-note 6 days ago, and the easiness factor of this note is 2.0, your next
-interval would be 6 * 2.0 & the total easiness factor would be 2.0 +
-increase-factor as well.
+ 4. How this is used:
- Example:
+ Multiplies the last interval by the easiness factor after a
+successful review.
- (setq gnosis-algorithm-ef '(0.3 0.3 1.3))
+ For example, if the last review was 6 days ago with an easiness
+factor of 2.0, the next interval would be calculated as 6 * 2.0, and the
+total easiness factor would be updated by adding the increase factor.
+
+ Configuration example:
+
+ (setq gnosis-algorithm-ef '(0.30 0.25 1.3))

-File: gnosis.info, Node: Gnosis Algorithm Forgetting Factor, Prev: Gnosis Algorithm Easiness Factor, Up: Customizing Gnosis Algorithm
+File: gnosis.info, Node: Forgetting Factor, Next: Auto push changes, Prev: Easiness Factor, Up: Gnosis Algorithm
-5.3.3 Gnosis Algorithm Forgetting Factor
-----------------------------------------
+6.3 Forgetting Factor
+=====================
‘gnosis-algorithm-ff’ is a floating number below 1.
- It's used to calculate the next interval upon an unsuccessful review,
-by being multiplied with last interval.
+ Used to determine the next interval after an unsuccessful review.
- Example:
+ Multiplied with the last interval to calculate the next interval.
+For example, if ‘gnosis-algorithm-ff’ is set to 0.5 and the last
+interval was 6 days, the next interval will be 6 * 0.5 = 3 days.
- (setq gnosis-algorithm-ff 0.5)
+ Example configuration:
- For a note with a value of last-interval of 6 days and a ff of 0.5,
-upon an unsuccessful review the next interval will be 6 * 0.5
+ (setq gnosis-algorithm-ff 0.5)

-File: gnosis.info, Node: Auto push changes, Prev: Customizing Gnosis Algorithm, Up: Customization & Extension
+File: gnosis.info, Node: Auto push changes, Prev: Forgetting Factor, Up: Gnosis Algorithm
-5.4 Auto push changes
+6.4 Auto push changes
=====================
-When setting ‘gnosis-auto-push’ to ‘t’, at the end of every review
-session the changes to ‘gnosis-db’ will be pushed to the pre-configured
-push remote. You have to set your push remote manually.
+You can interactively use ‘gnosis-vc-push’ & ‘gnosis-vc-pull’.
+
+ As the name suggests, they rely on ‘vc’ to work properly.
+
+ Make sure you have setup a git remote for gnosis.
+ cd ~/<your-emacs-directory>/gnosis # default location for gnosis
+ git remote add <remote_name> <remote_url> #
- (setf gnosis-auto-push t)
+ Depending on your setup, ‘vc’ might require an external package for
+the ssh passphrase dialog, such as ‘x11-ssh-askpass’.

Tag Table:
Node: Top246
-Node: Introduction1419
-Node: Installation1899
-Node: Using straightel2268
-Node: Installing manually from source2780
-Node: Adding notes3469
-Node: Note Types4885
-Node: Cloze5109
-Node: Basic Type6082
-Node: Double6360
-Node: MCQ (Multiple Choice Question)6706
-Node: y-or-n7115
-Node: Customization & Extension7541
-Node: Adjust string comparison8267
-Node: Creating Custom Note Types9063
-Node: Customizing Gnosis Algorithm10198
-Node: Gnosis Algorithm Initial Interval10540
-Node: Gnosis Algorithm Easiness Factor11131
-Node: Gnosis Algorithm Forgetting Factor12135
-Node: Auto push changes12713
+Node: Introduction1277
+Node: Installation1757
+Node: Using straightel2034
+Node: Installing manually from source2546
+Node: Adding notes3235
+Node: Note Types4651
+Node: Cloze4875
+Node: Basic Type5848
+Node: Double6126
+Node: MCQ (Multiple Choice Question)6472
+Node: y-or-n6881
+Node: Customization & Extension7307
+Node: Adjust for typos | String Comparison8020
+Node: Creating Custom Note Types8856
+Node: Gnosis Algorithm9966
+Node: Initial Interval10190
+Node: Easiness Factor10697
+Node: Forgetting Factor11602
+Node: Auto push changes12162

End Tag Table
diff --git a/doc/gnosis.org b/doc/gnosis.org
index c2ffcf1..b10af7a 100644
--- a/doc/gnosis.org
+++ b/doc/gnosis.org
@@ -4,9 +4,9 @@
#+language: en
#+options: ':t toc:nil author:t email:t num:t
#+startup: content
-#+macro: stable-version 0.1.5
-#+macro: release-date 2023-01-29
-#+macro: development-version 0.1.6-dev
+#+macro: stable-version 0.1.7
+#+macro: release-date 2023-02-18
+#+macro: development-version 0.1.8-dev
#+macro: file @@texinfo:@file{@@$1@@texinfo:}@@
#+macro: space @@texinfo:@: @@
#+macro: kbd @@texinfo:@kbd{@@$1@@texinfo:}@@
@@ -32,8 +32,7 @@ This manual is written for Gnosis version {{{stable-version}}}, released on {{{r
+ Official manual: <https://thanosapollo.org/user-manual/gnosis>
+ Git repositories:
- + main: <https://git.thanosapollo.org/gnosis>
- + sourcehut (mirror): <https://git.sr.ht/~thanosapollo/gnosis>
+ + <https://git.thanosapollo.org/gnosis>
#+texinfo: @insertcopying
@@ -48,10 +47,8 @@ your notes & review sessions, making it easier to study.
* Installation
-Gnosis is not currently available in any ELPA, the recommended way to
-install gnosis is via straight.el:
-
- <https://github.com/radian-software/straight.el>
+Gnosis is available via MELPA
++ <https://melpa.org/#/gnosis>
** Using straight.el
If you have not installed straight.el, follow the instructions here:
@@ -178,17 +175,18 @@ character values used to represent them.
* Customization & Extension
To make development and customization easier, gnosis comes with
-=gnosis-dev= module, that should be used to create a custom database for
+=gnosis-test= module, that should be used to create a custom database for
testing.
-To use =gnosis-dev=, first you have to =(require 'gnosis-dev)= & run =M-x
-gnosis-dev-test=. This will create a new directory 'testing' with a new
-database.
+To use =gnosis-test=, first you have to =(require 'gnosis-test)= & run
+=M-x gnosis-test-start=. This will create a new database 'testing'
+with random inputs.
+
+To exit the testing environment, rerun =M-x gnosis-test-start= and
+then enter =n= (no) at the prompt "Start development env?"
-To exit the testing environment, rerun =M-x gnosis-dev-test= and then
-enter =n= (no) at the prompt "Start development env?"
-** Adjust string comparison
-You may adjust =gnosis-string-difference=, this is a threshold value
+** Adjust for typos | String Comparison
+You can adjust =gnosis-string-difference=, this is a threshold value
for string comparison that determines the maximum acceptable
Levenshtein distance between two strings, which identifies their
similarity
@@ -198,7 +196,7 @@ Let's illustrate with an example:
(setf gnosis-string-difference 1)
#+end_src
-In this scenario, we set `gnosis-string-difference` to 1. This implies
+In this scenario, we set =gnosis-string-difference= to 1. This implies
that two strings will be recognized as similar if they exhibit a
difference of at most one character edit.
@@ -207,6 +205,7 @@ similar, considering that the latter involves just one additional
character."
** Creating Custom Note Types
+
Creating custom note types for gnosis is a fairly simple thing to do
+ First add your NEW-TYPE to =gnosis-note-types=
@@ -233,8 +232,8 @@ this should be done.
+ Optionally, you might want to create your own custom =gnosis-display= functions
-** Customizing Gnosis Algorithm
-*** Gnosis Algorithm Initial Interval
+* Gnosis Algorithm
+** Initial Interval
=gnosis-algorithm-interval= is a list of 2 numbers, representing the
first two initial intervals for successful reviews.
@@ -249,56 +248,61 @@ Using the above example, after first successfully reviewing a note,
you will see it again tomorrow, if you successfully review said note
again, the next review will be after 3 days.
-*** Gnosis Algorithm Easiness Factor
+** Easiness Factor
-=gnosis-algorithm-ef= is a list that consists of 3 items.
+The =gnosis-algorithm-ef= is a list that consists of three items:
-The first item is the increase factor, used to increase the easiness
-factor upon successful review.
+1. Easiness factor increase value: Added to the easiness factor upon a
+ successful review.
+
+2. Easiness factor decrease value: Subtracted from the total easiness
+ factor upon a failed review.
+
+3. Initial total easiness factor: Used to calculate the next interval.
-Second item refers to the decrease factor, used to
-decrease the easiness factor upon an unsuccessful review.
++ How this is used:
+
+Multiplies the last interval by the easiness factor after a successful
+review.
-The third item is the initial total easiness factor, used to calculate
-the next interval.
+For example, if the last review was 6 days ago with an easiness factor
+of 2.0, the next interval would be calculated as 6 * 2.0, and the
+total easiness factor would be updated by adding the increase factor.
-The basic's of how this is used is that it's being multiplied with the
-last interval upon a successful review, e.g if you last reviewed a
-note 6 days ago, and the easiness factor of this note is 2.0, your
-next interval would be 6 * 2.0 & the total easiness factor would be
-2.0 + increase-factor as well.
-
-Example:
+Configuration example:
#+begin_src emacs-lisp
- (setq gnosis-algorithm-ef '(0.3 0.3 1.3))
+ (setq gnosis-algorithm-ef '(0.30 0.25 1.3))
#+end_src
-*** Gnosis Algorithm Forgetting Factor
+** Forgetting Factor
=gnosis-algorithm-ff= is a floating number below 1.
-It's used to calculate the next interval upon an unsuccessful review,
-by being multiplied with last interval.
+Used to determine the next interval after an unsuccessful review.
+Multiplied with the last interval to calculate the next interval. For
+example, if =gnosis-algorithm-ff= is set to 0.5 and the last interval
+was 6 days, the next interval will be 6 * 0.5 = 3 days.
-Example:
+Example configuration:
#+begin_src emacs-lisp
(setq gnosis-algorithm-ff 0.5)
#+end_src
-For a note with a value of last-interval of 6 days and a ff of 0.5,
-upon an unsuccessful review the next interval will be 6 * 0.5
+** Auto push changes
+You can interactively use =gnosis-vc-push= & =gnosis-vc-pull=.
-** Auto push changes
-When setting =gnosis-auto-push= to =t=, at the end of every review
-session the changes to ~gnosis-db~ will be pushed to the pre-configured
-push remote. You have to set your push remote manually.
+As the name suggests, they rely on =vc= to work properly.
-#+begin_src emacs-lisp
-(setf gnosis-auto-push t)
+Make sure you have setup a git remote for gnosis.
+#+begin_src bash
+ cd ~/<your-emacs-directory>/gnosis # default location for gnosis
+ git remote add <remote_name> <remote_url> #
#+end_src
+Depending on your setup, =vc= might require an external package for
+the ssh passphrase dialog, such as ~x11-ssh-askpass~.
diff --git a/doc/gnosis.texi b/doc/gnosis.texi
index efb9e18..487a4c1 100644
--- a/doc/gnosis.texi
+++ b/doc/gnosis.texi
@@ -30,7 +30,7 @@ a spaced repetition system implementation for note taking and self
testing.
@noindent
-This manual is written for Gnosis version 0.1.5, released on 2023-01-29.
+This manual is written for Gnosis version 0.1.7, released on 2023-02-18.
@itemize
@item
@@ -39,9 +39,7 @@ Official manual: @uref{https://thanosapollo.org/user-manual/gnosis}
Git repositories:
@itemize
@item
-main: @uref{https://git.thanosapollo.org/gnosis}
-@item
-sourcehut (mirror): @uref{https://git.sr.ht/~thanosapollo/gnosis}
+@uref{https://git.thanosapollo.org/gnosis}
@end itemize
@end itemize
@@ -54,6 +52,7 @@ sourcehut (mirror): @uref{https://git.sr.ht/~thanosapollo/gnosis}
* Adding notes::
* Note Types::
* Customization & Extension::
+* Gnosis Algorithm::
@detailmenu
--- The Detailed Node Listing ---
@@ -73,16 +72,15 @@ Note Types
Customization & Extension
-* Adjust string comparison::
+* Adjust for typos | String Comparison::
* Creating Custom Note Types::
-* Customizing Gnosis Algorithm::
-* Auto push changes::
-Customizing Gnosis Algorithm
+Gnosis Algorithm
-* Gnosis Algorithm Initial Interval::
-* Gnosis Algorithm Easiness Factor::
-* Gnosis Algorithm Forgetting Factor::
+* Initial Interval::
+* Easiness Factor::
+* Forgetting Factor::
+* Auto push changes::
@end detailmenu
@end menu
@@ -101,10 +99,11 @@ your notes & review sessions, making it easier to study.
@node Installation
@chapter Installation
-Gnosis is not currently available in any ELPA, the recommended way to
-install gnosis is via straight.el:
-
-@uref{https://github.com/radian-software/straight.el}
+Gnosis is available via MELPA
+@itemize
+@item
+@uref{https://melpa.org/#/gnosis}
+@end itemize
@menu
* Using straight.el: Using straightel.
@@ -275,27 +274,25 @@ character values used to represent them.
@chapter Customization & Extension
To make development and customization easier, gnosis comes with
-@samp{gnosis-dev} module, that should be used to create a custom database for
+@samp{gnosis-test} module, that should be used to create a custom database for
testing.
-To use @samp{gnosis-dev}, first you have to @samp{(require 'gnosis-dev)} & run @samp{M-x
-gnosis-dev-test}. This will create a new directory 'testing' with a new
-database.
+To use @samp{gnosis-test}, first you have to @samp{(require 'gnosis-test)} & run
+@samp{M-x gnosis-test-start}. This will create a new database 'testing'
+with random inputs.
-To exit the testing environment, rerun @samp{M-x gnosis-dev-test} and then
-enter @samp{n} (no) at the prompt ``Start development env?''
+To exit the testing environment, rerun @samp{M-x gnosis-test-start} and
+then enter @samp{n} (no) at the prompt ``Start development env?''
@menu
-* Adjust string comparison::
+* Adjust for typos | String Comparison::
* Creating Custom Note Types::
-* Customizing Gnosis Algorithm::
-* Auto push changes::
@end menu
-@node Adjust string comparison
-@section Adjust string comparison
+@node Adjust for typos | String Comparison
+@section Adjust for typos | String Comparison
-You may adjust @samp{gnosis-string-difference}, this is a threshold value
+You can adjust @samp{gnosis-string-difference}, this is a threshold value
for string comparison that determines the maximum acceptable
Levenshtein distance between two strings, which identifies their
similarity
@@ -305,7 +302,7 @@ Let's illustrate with an example:
(setf gnosis-string-difference 1)
@end lisp
-In this scenario, we set `gnosis-string-difference` to 1. This implies
+In this scenario, we set @samp{gnosis-string-difference} to 1. This implies
that two strings will be recognized as similar if they exhibit a
difference of at most one character edit.
@@ -352,17 +349,18 @@ this should be done.
Optionally, you might want to create your own custom @samp{gnosis-display} functions
@end itemize
-@node Customizing Gnosis Algorithm
-@section Customizing Gnosis Algorithm
+@node Gnosis Algorithm
+@chapter Gnosis Algorithm
@menu
-* Gnosis Algorithm Initial Interval::
-* Gnosis Algorithm Easiness Factor::
-* Gnosis Algorithm Forgetting Factor::
+* Initial Interval::
+* Easiness Factor::
+* Forgetting Factor::
+* Auto push changes::
@end menu
-@node Gnosis Algorithm Initial Interval
-@subsection Gnosis Algorithm Initial Interval
+@node Initial Interval
+@section Initial Interval
@samp{gnosis-algorithm-interval} is a list of 2 numbers, representing the
first two initial intervals for successful reviews.
@@ -377,60 +375,72 @@ Using the above example, after first successfully reviewing a note,
you will see it again tomorrow, if you successfully review said note
again, the next review will be after 3 days.
-@node Gnosis Algorithm Easiness Factor
-@subsection Gnosis Algorithm Easiness Factor
+@node Easiness Factor
+@section Easiness Factor
-@samp{gnosis-algorithm-ef} is a list that consists of 3 items.
+The @samp{gnosis-algorithm-ef} is a list that consists of three items:
-The first item is the increase factor, used to increase the easiness
-factor upon successful review.
+@enumerate
+@item
+Easiness factor increase value: Added to the easiness factor upon a
+successful review.
-Second item refers to the decrease factor, used to
-decrease the easiness factor upon an unsuccessful review.
+@item
+Easiness factor decrease value: Subtracted from the total easiness
+factor upon a failed review.
-The third item is the initial total easiness factor, used to calculate
-the next interval.
+@item
+Initial total easiness factor: Used to calculate the next interval.
-The basic's of how this is used is that it's being multiplied with the
-last interval upon a successful review, e.g if you last reviewed a
-note 6 days ago, and the easiness factor of this note is 2.0, your
-next interval would be 6 * 2.0 & the total easiness factor would be
-2.0 + increase-factor as well.
+@item
+How this is used:
+@end enumerate
-Example:
+Multiplies the last interval by the easiness factor after a successful
+review.
+
+For example, if the last review was 6 days ago with an easiness factor
+of 2.0, the next interval would be calculated as 6 * 2.0, and the
+total easiness factor would be updated by adding the increase factor.
+
+Configuration example:
@lisp
-(setq gnosis-algorithm-ef '(0.3 0.3 1.3))
+(setq gnosis-algorithm-ef '(0.30 0.25 1.3))
@end lisp
-@node Gnosis Algorithm Forgetting Factor
-@subsection Gnosis Algorithm Forgetting Factor
+@node Forgetting Factor
+@section Forgetting Factor
@samp{gnosis-algorithm-ff} is a floating number below 1.
-It's used to calculate the next interval upon an unsuccessful review,
-by being multiplied with last interval.
+Used to determine the next interval after an unsuccessful review.
+Multiplied with the last interval to calculate the next interval. For
+example, if @samp{gnosis-algorithm-ff} is set to 0.5 and the last interval
+was 6 days, the next interval will be 6 * 0.5 = 3 days.
-Example:
+Example configuration:
@lisp
(setq gnosis-algorithm-ff 0.5)
@end lisp
-For a note with a value of last-interval of 6 days and a ff of 0.5,
-upon an unsuccessful review the next interval will be 6 * 0.5
-
@node Auto push changes
@section Auto push changes
-When setting @samp{gnosis-auto-push} to @samp{t}, at the end of every review
-session the changes to @code{gnosis-db} will be pushed to the pre-configured
-push remote. You have to set your push remote manually.
+You can interactively use @samp{gnosis-vc-push} & @samp{gnosis-vc-pull}.
-@lisp
-(setf gnosis-auto-push t)
-@end lisp
+As the name suggests, they rely on @samp{vc} to work properly.
+
+Make sure you have setup a git remote for gnosis.
+@example
+cd ~/<your-emacs-directory>/gnosis # default location for gnosis
+git remote add <remote_name> <remote_url> #
+@end example
+
+Depending on your setup, @samp{vc} might require an external package for
+the ssh passphrase dialog, such as @code{x11-ssh-askpass}.
@bye