You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
25 lines
700 B
25 lines
700 B
3 years ago
|
;;;; cl-bible.lisp
|
||
|
|
||
|
(in-package #:cl-bible.data)
|
||
|
|
||
|
(defun init-bible (&optional (bible "mng"))
|
||
|
(setf *bible*
|
||
|
(mapcar #'v:string-to-verse
|
||
|
(uiop:read-file-lines
|
||
|
(asdf:system-relative-pathname
|
||
|
"cl-bible"
|
||
|
(format nil "resources/~A.tsv" bible))))))
|
||
|
|
||
|
(defvar *bible*)
|
||
|
(defvar *mng* (init-bible))
|
||
|
(defvar *vul* (init-bible "vul"))
|
||
|
(defvar *grb* (init-bible "grb"))
|
||
|
(defvar *kjv* (init-bible "kjv"))
|
||
|
|
||
|
(defun update-bible (str)
|
||
|
(let ((bibles `(("mng" . ,*mng*)
|
||
|
("kjv" . ,*kjv*)
|
||
|
("vul" . ,*vul*)
|
||
|
("grb" . ,*grb*))))
|
||
|
(setf *bible* (cdr (assoc str bibles :test #'string=)))))
|