summaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorThanos Apollo <[email protected]>2024-01-29 10:53:27 +0200
committerThanos Apollo <[email protected]>2024-01-29 10:53:27 +0200
commit4516d10b32c3729ee83d6edb89cd79e5e8f5f203 (patch)
treef844fd764e559b78fde268f562e90cd1ee1ed098 /doc
parentf9d4039ac7783219de88a25df9767f9cf0a4aecc (diff)
parent8768382c80e595695059ce5818845e480647b6b8 (diff)
Merge branch 'version-0.1.5'0.1.5
- Adjust emacsql - Fix initialization - Rewrite string comparison using string-distance - Update documentation - Fix package requirments for MELPA
Diffstat (limited to 'doc')
-rw-r--r--doc/gnosis.info104
-rw-r--r--doc/gnosis.org26
-rw-r--r--doc/gnosis.texi54
3 files changed, 124 insertions, 60 deletions
diff --git a/doc/gnosis.info b/doc/gnosis.info
index ddae27d..a96d4c1 100644
--- a/doc/gnosis.info
+++ b/doc/gnosis.info
@@ -15,7 +15,7 @@ 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.4, released on 2023-01-19.
+This manual is written for Gnosis version 0.1.5, released on 2023-01-29.
• Official manual: <https://thanosapollo.org/user-manual/gnosis>
• Git repositories:
@@ -28,7 +28,7 @@ This manual is written for Gnosis version 0.1.4, released on 2023-01-19.
* Installation::
* Adding notes::
* Note Types::
-* Customization & Development::
+* Customization & Extension::
-- The Detailed Node Listing --
@@ -45,8 +45,9 @@ Note Types
* MCQ (Multiple Choice Question)::
* y-or-n::
-Customization & Development
+Customization & Extension
+* Adjust string comparison::
* Creating Custom Note Types::
* Customizing Gnosis Algorithm::
@@ -102,8 +103,8 @@ following emacs lisp snippet:
(straight-use-package
'(gnosis :type git
- :host nil
- :repo "https://git.thanosapollo.org/gnosis"))
+ :host nil
+ :repo "https://git.thanosapollo.org/gnosis"))

File: gnosis.info, Node: Installing manually from source, Prev: Using straightel, Up: Installation
@@ -138,13 +139,13 @@ gnosis-add-note’
Example:
(gnosis-add-note--basic :deck "DECK-NAME"
- :question "Your Question"
- :answer "Answer"
- :hint "hint"
- :extra "Explanation"
- :image "Image displayed before user-input" ;; Optional
- :second-image "Image displayed after user-input" ;; Optional
- :tags '("tag1" "tag2"))
+ :question "Your Question"
+ :answer "Answer"
+ :hint "hint"
+ :extra "Explanation"
+ :image "Image displayed before user-input" ;; Optional
+ :second-image "Image displayed after user-input" ;; Optional
+ :tags '("tag1" "tag2"))
By default, the value of image and second image is nil. Their value
must a string, the path of an image, from inside ‘gnosis-images-dir’.
@@ -164,7 +165,7 @@ all the logic.
to know when creating new notes.

-File: gnosis.info, Node: Note Types, Next: Customization & Development, Prev: Adding notes, Up: Top
+File: gnosis.info, Node: Note Types, Next: Customization & Extension, Prev: Adding notes, Up: Top
4 Note Types
************
@@ -254,10 +255,10 @@ 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 & Development, Prev: Note Types, Up: Top
+File: gnosis.info, Node: Customization & Extension, Prev: Note Types, Up: Top
-5 Customization & Development
-*****************************
+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
@@ -272,13 +273,35 @@ enter ‘n’ (no) at the prompt "Start development env?"
* Menu:
+* Adjust string comparison::
* Creating Custom Note Types::
* Customizing Gnosis Algorithm::

-File: gnosis.info, Node: Creating Custom Note Types, Next: Customizing Gnosis Algorithm, Up: Customization & Development
+File: gnosis.info, Node: Adjust string comparison, Next: Creating Custom Note Types, Up: Customization & Extension
-5.1 Creating Custom Note Types
+5.1 Adjust string comparison
+============================
+
+You may 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
+implies that two strings will be recognized as similar if they exhibit a
+difference of at most one character edit.
+
+ To demonstrate, 'example' and 'examples' will be recognized as
+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
+
+5.2 Creating Custom Note Types
==============================
Creating custom note types for gnosis is a fairly simple thing to do
@@ -308,9 +331,9 @@ should be done.
‘gnosis-display’ functions

-File: gnosis.info, Node: Customizing Gnosis Algorithm, Prev: Creating Custom Note Types, Up: Customization & Development
+File: gnosis.info, Node: Customizing Gnosis Algorithm, Prev: Creating Custom Note Types, Up: Customization & Extension
-5.2 Customizing Gnosis Algorithm
+5.3 Customizing Gnosis Algorithm
================================
* Menu:
@@ -322,7 +345,7 @@ File: gnosis.info, Node: Customizing Gnosis Algorithm, Prev: Creating Custom N

File: gnosis.info, Node: Gnosis Algorithm Initial Interval, Next: Gnosis Algorithm Easiness Factor, Up: Customizing Gnosis Algorithm
-5.2.1 Gnosis Algorithm Initial Interval
+5.3.1 Gnosis Algorithm Initial Interval
---------------------------------------
‘gnosis-algorithm-interval’ is a list of 2 numbers, representing the
@@ -339,7 +362,7 @@ 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
-5.2.2 Gnosis Algorithm Easiness Factor
+5.3.2 Gnosis Algorithm Easiness Factor
--------------------------------------
‘gnosis-algorithm-ef’ is a list that consists of 3 items.
@@ -366,7 +389,7 @@ increase-factor as well.

File: gnosis.info, Node: Gnosis Algorithm Forgetting Factor, Prev: Gnosis Algorithm Easiness Factor, Up: Customizing Gnosis Algorithm
-5.2.3 Gnosis Algorithm Forgetting Factor
+5.3.3 Gnosis Algorithm Forgetting Factor
----------------------------------------
‘gnosis-algorithm-ff’ is a floating number below 1.
@@ -385,23 +408,24 @@ upon an unsuccessful review the next interval will be 6 * 0.5

Tag Table:
Node: Top246
-Node: Introduction1372
-Node: Installation1852
-Node: Using straightel2221
-Node: Installing manually from source2737
-Node: Adding notes3426
-Node: Note Types4856
-Node: Cloze5082
-Node: Basic Type6055
-Node: Double6333
-Node: MCQ (Multiple Choice Question)6679
-Node: y-or-n7088
-Node: Customization & Development7514
-Node: Creating Custom Note Types8195
-Node: Customizing Gnosis Algorithm9299
-Node: Gnosis Algorithm Initial Interval9617
-Node: Gnosis Algorithm Easiness Factor10208
-Node: Gnosis Algorithm Forgetting Factor11212
+Node: Introduction1397
+Node: Installation1877
+Node: Using straightel2246
+Node: Installing manually from source2758
+Node: Adding notes3447
+Node: Note Types4863
+Node: Cloze5087
+Node: Basic Type6060
+Node: Double6338
+Node: MCQ (Multiple Choice Question)6684
+Node: y-or-n7093
+Node: Customization & Extension7519
+Node: Adjust string comparison8223
+Node: Creating Custom Note Types9019
+Node: Customizing Gnosis Algorithm10154
+Node: Gnosis Algorithm Initial Interval10470
+Node: Gnosis Algorithm Easiness Factor11061
+Node: Gnosis Algorithm Forgetting Factor12065

End Tag Table
diff --git a/doc/gnosis.org b/doc/gnosis.org
index 28b9cf9..29c4188 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.4
-#+macro: release-date 2023-01-19
-#+macro: development-version 0.1.4-dev
+#+macro: stable-version 0.1.5
+#+macro: release-date 2023-01-29
+#+macro: development-version 0.1.6-dev
#+macro: file @@texinfo:@file{@@$1@@texinfo:}@@
#+macro: space @@texinfo:@: @@
#+macro: kbd @@texinfo:@kbd{@@$1@@texinfo:}@@
@@ -175,7 +175,7 @@ When using the hidden function =gnosis-add-note--y-or-n=, note that the
ANSWER must be either 121 (~y~) or 110 (~n~), as those correspond to the
character values used to represent them.
-* Customization & Development
+* Customization & Extension
To make development and customization easier, gnosis comes with
=gnosis-dev= module, that should be used to create a custom database for
@@ -187,6 +187,24 @@ database.
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
+for string comparison that determines the maximum acceptable
+Levenshtein distance between two strings, which identifies their
+similarity
+
+Let's illustrate with an example:
+#+begin_src emacs-lisp
+(setf gnosis-string-difference 1)
+#+end_src
+
+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.
+
+To demonstrate, 'example' and 'examples' will be recognized as
+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
diff --git a/doc/gnosis.texi b/doc/gnosis.texi
index 9054e3f..f2762af 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.4, released on 2023-01-19.
+This manual is written for Gnosis version 0.1.5, released on 2023-01-29.
@itemize
@item
@@ -46,7 +46,6 @@ sourcehut (mirror): @uref{https://git.sr.ht/~thanosapollo/gnosis}
@end itemize
@insertcopying
-
@end ifnottex
@menu
@@ -54,7 +53,7 @@ sourcehut (mirror): @uref{https://git.sr.ht/~thanosapollo/gnosis}
* Installation::
* Adding notes::
* Note Types::
-* Customization & Development::
+* Customization & Extension::
@detailmenu
--- The Detailed Node Listing ---
@@ -72,8 +71,9 @@ Note Types
* MCQ (Multiple Choice Question)::
* y-or-n::
-Customization & Development
+Customization & Extension
+* Adjust string comparison::
* Creating Custom Note Types::
* Customizing Gnosis Algorithm::
@@ -123,8 +123,8 @@ following emacs lisp snippet:
@lisp
(straight-use-package
'(gnosis :type git
- :host nil
- :repo "https://git.thanosapollo.org/gnosis"))
+ :host nil
+ :repo "https://git.thanosapollo.org/gnosis"))
@end lisp
@node Installing manually from source
@@ -164,13 +164,13 @@ Example:
@lisp
(gnosis-add-note--basic :deck "DECK-NAME"
- :question "Your Question"
- :answer "Answer"
- :hint "hint"
- :extra "Explanation"
- :image "Image displayed before user-input" ;; Optional
- :second-image "Image displayed after user-input" ;; Optional
- :tags '("tag1" "tag2"))
+ :question "Your Question"
+ :answer "Answer"
+ :hint "hint"
+ :extra "Explanation"
+ :image "Image displayed before user-input" ;; Optional
+ :second-image "Image displayed after user-input" ;; Optional
+ :tags '("tag1" "tag2"))
@end lisp
By default, the value of image and second image is nil. Their value
@@ -270,8 +270,8 @@ When using the hidden function @samp{gnosis-add-note--y-or-n}, note that the
ANSWER must be either 121 (@code{y}) or 110 (@code{n}), as those correspond to the
character values used to represent them.
-@node Customization & Development
-@chapter Customization & Development
+@node Customization & Extension
+@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
@@ -285,10 +285,32 @@ To exit the testing environment, rerun @samp{M-x gnosis-dev-test} and then
enter @samp{n} (no) at the prompt ``Start development env?''
@menu
+* Adjust string comparison::
* Creating Custom Note Types::
* Customizing Gnosis Algorithm::
@end menu
+@node Adjust string comparison
+@section Adjust string comparison
+
+You may 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
+
+Let's illustrate with an example:
+@lisp
+(setf gnosis-string-difference 1)
+@end lisp
+
+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.
+
+To demonstrate, 'example' and 'examples' will be recognized as
+similar, considering that the latter involves just one additional
+character.``
+
@node Creating Custom Note Types
@section Creating Custom Note Types
@@ -398,4 +420,4 @@ Example:
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
-@bye
+@bye \ No newline at end of file