;;;; cl-bible.lisp (in-package #:cl-bible.data) (defvar *translations* '(("Menge" :mng "mng") ("King James Version" :kjv "kjv") ("Vulgata" :vul "vul") ("Greek Bible" :grb "grb") ("Elberfelder Übersetzung 1871" :elb1871 "elb1871") ("NEÜ" :neue "neue") ("Luther 1545" :luth1545 "luth1545") ("Luther 1912" :luth1912 "luth1912") ("Schlachter 1951" :sch1951 "sch1951") ("Ukrainische Version" :ukr "ukr"))) (defun read-bible-from-tsv (filename) (mapcar #'v:string-to-verse (uiop:read-file-lines (uiop:native-namestring (concatenate 'string "~/.bible/" filename ".tsv"))))) (defvar *translation* :vul) (defvar *bible* (read-bible-from-tsv "vul")) (defun update-bible (translation) (setf *bible* (read-bible-from-tsv (string-downcase translation))))