diff options
Diffstat (limited to 'src/gizmo/wasp-dna.el')
| -rw-r--r-- | src/gizmo/wasp-dna.el | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/src/gizmo/wasp-dna.el b/src/gizmo/wasp-dna.el index 5c8f19a5..d3e0ef81 100644 --- a/src/gizmo/wasp-dna.el +++ b/src/gizmo/wasp-dna.el @@ -23,12 +23,16 @@ "Return the paths of every log file." (--filter (s-matches? (rx "log-" (+ digit) "-" (+ digit) "-" (+ digit) ".txt") it) (f-files "~/logs"))) +(defvar w/dna-log-cache nil) (defun w/dna-complete-log () "Return a complete log of every historical message." - (let* ((paths (w/dna-get-all-log-paths)) - (logstr (apply #'s-concat (-map #'w/slurp paths))) - (log (--map (w/list-to-pair (s-split ": " it)) (-non-nil (--map (cadr (s-split "\t" it)) (s-lines logstr)))))) - log)) + (or + w/dna-log-cache + (let* ((paths (w/dna-get-all-log-paths)) + (logstr (apply #'s-concat (-map #'w/slurp paths))) + (log (--map (w/list-to-pair (s-split ": " it)) (-non-nil (--map (cadr (s-split "\t" it)) (s-lines logstr)))))) + (setf w/dna-log-cache log) + log))) (defun w/dna-user-log (user) "Return a complete log of every message sent by USER." |
