diff options
| author | Jose Antonio Ortega Ruiz <jao@gnu.org> | 2009-06-17 03:13:38 +0200 | 
|---|---|---|
| committer | Jose Antonio Ortega Ruiz <jao@gnu.org> | 2009-06-17 03:13:38 +0200 | 
| commit | bcc096b289e0ca237914c8aaa3e351d2bf7d0731 (patch) | |
| tree | 6ea9607c7b0060bef0cbc6e63ea6d4ec37ffa54c | |
| parent | 44a70803378f67ef2f6a9bfb91a2d9cbe7063369 (diff) | |
| download | geiser-bcc096b289e0ca237914c8aaa3e351d2bf7d0731.tar.gz geiser-bcc096b289e0ca237914c8aaa3e351d2bf7d0731.tar.bz2 | |
Implementation-specific backtrace display.
| -rw-r--r-- | elisp/geiser-debug.el | 11 | ||||
| -rw-r--r-- | elisp/geiser-impl.el | 3 | ||||
| -rw-r--r-- | elisp/geiser.el | 2 | 
3 files changed, 12 insertions, 4 deletions
| diff --git a/elisp/geiser-debug.el b/elisp/geiser-debug.el index f0dc6ec..3bf262c 100644 --- a/elisp/geiser-debug.el +++ b/elisp/geiser-debug.el @@ -25,6 +25,7 @@  ;;; Code: +(require 'geiser-impl)  (require 'geiser-eval)  (require 'geiser-popup)  (require 'geiser-base) @@ -60,13 +61,17 @@  (defun geiser-debug--display-retort (what ret)    (let* ((err (geiser-eval--retort-error ret)) -         (output (geiser-eval--retort-output ret))) +         (key (geiser-eval--error-key err)) +         (output (geiser-eval--retort-output ret)) +         (impl geiser-impl--implementation) +         (module (geiser-eval--get-module)))      (geiser-debug--with-buffer        (erase-buffer)        (insert what)        (newline 2) -      (when err (insert (geiser-eval--error-str err) "\n\n")) -      (when output (insert output "\n\n")) +      (unless (geiser-impl--display-error impl module key output) +        (when err (insert (geiser-eval--error-str err) "\n\n")) +        (when output (insert output "\n\n")))        (goto-char (point-min)))      (when err (geiser-debug--pop-to-buffer)))) diff --git a/elisp/geiser-impl.el b/elisp/geiser-impl.el index b4c01c7..fadc8b6 100644 --- a/elisp/geiser-impl.el +++ b/elisp/geiser-impl.el @@ -186,6 +186,9 @@  (defsubst geiser-impl--external-help (impl symbol module)    (geiser-impl--call-if-bound impl "external-help" symbol module)) +(defsubst geiser-impl--display-error (impl module key msg) +  (geiser-impl--call-if-bound impl "display-error" module key msg)) +  ;;; Access to implementation guessing function: diff --git a/elisp/geiser.el b/elisp/geiser.el index 926cb4f..748fb23 100644 --- a/elisp/geiser.el +++ b/elisp/geiser.el @@ -117,11 +117,11 @@             geiser-xref             geiser-edit             geiser-doc +           geiser-debug             geiser-impl             geiser-completion             geiser-autodoc             geiser-compile -           geiser-debug             geiser-eval             geiser-connection             geiser-syntax | 
