summaryrefslogtreecommitdiff
path: root/scheme/chibi/geiser/geiser.scm
diff options
context:
space:
mode:
Diffstat (limited to 'scheme/chibi/geiser/geiser.scm')
-rw-r--r--scheme/chibi/geiser/geiser.scm9
1 files changed, 8 insertions, 1 deletions
diff --git a/scheme/chibi/geiser/geiser.scm b/scheme/chibi/geiser/geiser.scm
index 20ff2cd..35a52b7 100644
--- a/scheme/chibi/geiser/geiser.scm
+++ b/scheme/chibi/geiser/geiser.scm
@@ -33,7 +33,14 @@
(define (geiser:eval module form . rest)
rest
- (guard (err (else (write `((result ,(show #f err))))))
+ (guard (err
+ (else
+ ;; TODO:We need to save output when returning errors too. The
+ ;; output may very well be produced before an error occurs. But to
+ ;; implement it wisely, we probably need something like two guard
+ ;; expressions. For example, org-mode's ob-scheme.el needs it.:END
+
+ (write `((result ,(show #f err))))))
(let* ((output (open-output-string))
(result (parameterize ((current-output-port output))
(if module