diff options
author | Jose Antonio Ortega Ruiz <jao@gnu.org> | 2009-06-16 22:35:21 +0200 |
---|---|---|
committer | Jose Antonio Ortega Ruiz <jao@gnu.org> | 2009-06-16 22:35:21 +0200 |
commit | 7fad7a69914a920774fd2ce766198ecbd25265bc (patch) | |
tree | 65539d06be810ff61b0362037e10be5d30f386a7 /elisp/geiser-connection.el | |
parent | d8da8d0e8733bb5c2fc01347be17dfc7c1c4cfa7 (diff) | |
download | geiser-7fad7a69914a920774fd2ce766198ecbd25265bc.tar.gz geiser-7fad7a69914a920774fd2ce766198ecbd25265bc.tar.bz2 |
Better parsing of scheme retorts in the Emacs end.
Diffstat (limited to 'elisp/geiser-connection.el')
-rw-r--r-- | elisp/geiser-connection.el | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/elisp/geiser-connection.el b/elisp/geiser-connection.el index 33579f6..33668e0 100644 --- a/elisp/geiser-connection.el +++ b/elisp/geiser-connection.el @@ -160,10 +160,14 @@ (defun geiser-con--comint-buffer-form () (with-current-buffer (geiser-con--comint-buffer) - (geiser-syntax--prepare-scheme-for-elisp-reader) (condition-case nil - (let ((form (read (current-buffer)))) - (if (listp form) form (error))) + (progn + (goto-char (point-min)) + (re-search-forward "((\\(result\\|error\\) ") + (goto-char (match-beginning 0)) + (geiser-syntax--prepare-scheme-for-elisp-reader) + (let ((form (read (current-buffer)))) + (if (listp form) form (error)))) (error `((error (key . geiser-con-error) (msg . ,(buffer-string)))))))) (defun geiser-con--process-next (con) |