diff options
| author | Jose Antonio Ortega Ruiz <jao@gnu.org> | 2010-12-11 02:47:56 +0100 | 
|---|---|---|
| committer | Jose Antonio Ortega Ruiz <jao@gnu.org> | 2010-12-11 02:47:56 +0100 | 
| commit | 08e2e3fbda3092dea615d024e408d400ae8b2493 (patch) | |
| tree | 9ee970740a84a64cabdb24d8e30b1e9b10ce4d8b | |
| parent | fb6708e749fc42724ec821d9e12c7e7154be4372 (diff) | |
| download | geiser-08e2e3fbda3092dea615d024e408d400ae8b2493.tar.gz geiser-08e2e3fbda3092dea615d024e408d400ae8b2493.tar.bz2 | |
Print long expressions after errors in debug buffer.
You won't believe it, but people write procedures spanning several
pages, even in Scheme. Where's the art and the poetry of programming?
| -rw-r--r-- | elisp/geiser-debug.el | 12 | 
1 files changed, 9 insertions, 3 deletions
| diff --git a/elisp/geiser-debug.el b/elisp/geiser-debug.el index 9266eb3..25391db 100644 --- a/elisp/geiser-debug.el +++ b/elisp/geiser-debug.el @@ -81,19 +81,25 @@ buffer.")           (jump nil)           (dir default-directory)           (buffer (current-buffer)) -         (debug (eq key 'geiser-debugger))) +         (debug (eq key 'geiser-debugger)) +         (lines (with-temp-buffer +                  (insert what) +                  (count-lines (point-min) (point-max)))) +         (after (> lines 5)))      (when debug        (switch-to-geiser nil nil buffer)        (geiser-debug--enter-debugger impl))      (geiser-debug--with-buffer        (erase-buffer)        (when dir (setq default-directory dir)) -      (insert what) -      (newline 2) +      (unless after +        (insert what) +        (newline 2))        (when (and res (not err))          (insert res)          (newline 2))        (setq jump (geiser-debug--display-error impl module key output)) +      (when after (insert "\nExpression evaluated was:\n\n" what))        (goto-char (point-min)))      (when jump (geiser-debug--pop-to-buffer)))) | 
