summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThanos Apollo <[email protected]>2024-07-16 14:04:48 +0300
committerThanos Apollo <[email protected]>2024-07-16 14:09:20 +0300
commit50be722192a13bb757d27295e8f107a41ad7229a (patch)
treee732f3ec67e33d72b61715cf3ff54f01e1645933
parent3389e5c53ebd0122d1fd3fa7f303a26ab0b80298 (diff)
cloze: Add gnosis-cloze-mark-answers
* Mark answers in cloze review using FACE.
-rw-r--r--gnosis.el12
1 files changed, 12 insertions, 0 deletions
diff --git a/gnosis.el b/gnosis.el
index f7bb550..7d66ab5 100644
--- a/gnosis.el
+++ b/gnosis.el
@@ -477,6 +477,18 @@ Refer to =gnosis-db-schema-extras' for informations on images stored."
(replace-match (propertize (format "[%s]" (nth count hints)) 'face 'gnosis-face-cloze)))
(setq count (1+ count)))
(buffer-string))))
+
+(defun gnosis-cloze-mark-answers (str answers face)
+ "Mark ANSWERS in STR with FACE."
+ (cl-assert (listp answers) nil "Answers to mark must be a list.")
+ (with-temp-buffer
+ (insert str)
+ (goto-char (point-min))
+ (dolist (answer answers)
+ (when (search-forward answer nil t)
+ (replace-match (propertize answer 'face face) nil t)))
+ (buffer-string)))
+
(defun gnosis-display-basic-answer (answer success user-input)
"Display ANSWER.