summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJose Antonio Ortega Ruiz <jao@gnu.org>2016-06-11 18:37:36 +0200
committerJose Antonio Ortega Ruiz <jao@gnu.org>2016-06-11 18:37:36 +0200
commit2fc156374fb2e20e2f25ab020589dc032ff4578a (patch)
tree9ed0b63f95c85ae005cbe7574960ce3bf8f06fe6
parentcc84a03528f016779f7ce478b46d6170b989de81 (diff)
downloadgeiser-2fc156374fb2e20e2f25ab020589dc032ff4578a.tar.gz
geiser-2fc156374fb2e20e2f25ab020589dc032ff4578a.tar.bz2
Cleanups to the show/jump debug buffer mess
Let's see if i finally got this right...
-rw-r--r--elisp/geiser-compile.el9
-rw-r--r--elisp/geiser-debug.el17
2 files changed, 12 insertions, 14 deletions
diff --git a/elisp/geiser-compile.el b/elisp/geiser-compile.el
index 521803e..26aad16 100644
--- a/elisp/geiser-compile.el
+++ b/elisp/geiser-compile.el
@@ -1,6 +1,6 @@
;; geiser-compile.el -- compile/load scheme files
-;; Copyright (C) 2009, 2010, 2011, 2012, 2013 Jose Antonio Ortega Ruiz
+;; Copyright (C) 2009, 2010, 2011, 2012, 2013, 2016 Jose Antonio Ortega Ruiz
;; This program is free software; you can redistribute it and/or
;; modify it under the terms of the Modified BSD License. You should
@@ -37,12 +37,11 @@
(let* ((b/p (geiser-compile--buffer/path path))
(buffer (car b/p))
(path (cdr b/p))
- (msg (format "%s %s ..." msg path)))
+ (msg (format "%s %s ..." msg path))
+ (code `(,(if compile-p :comp-file :load-file) ,path)))
(message msg)
(geiser-autodoc--clean-cache)
- (geiser-compile--display-result
- msg (geiser-eval--send/wait
- `(,(if compile-p :comp-file :load-file) ,path)))))
+ (geiser-compile--display-result msg (geiser-eval--send/wait code))))
;;; User commands:
diff --git a/elisp/geiser-debug.el b/elisp/geiser-debug.el
index 7afcb53..07ac98a 100644
--- a/elisp/geiser-debug.el
+++ b/elisp/geiser-debug.el
@@ -155,6 +155,7 @@ buffer.")
(when dir (setq default-directory dir))
(unless after
(geiser-debug--display-error impl module nil what)
+ (goto-char (point-max))
(newline 2))
(setq img (when (and res (not err)) (geiser-debug--insert-res res)))
(setq dbg (geiser-debug--display-error impl module key output))
@@ -164,15 +165,13 @@ buffer.")
(geiser-debug--display-error impl module nil what))
(goto-char (point-min)))
(when (or img dbg)
- (when geiser-debug-show-debug-p
- (geiser-debug--pop-to-buffer))
- (when (and dbg (not geiser-debug-jump-to-debug-p))
- (ignore-errors (next-error))
- (when (not geiser-debug-show-debug-p)
- (pop-to-buffer (geiser-debug--buffer)
- 'display-buffer-reuse-window t)
- (View-quit))
- (message "Evaluation error: %s" dbg)))))
+ (when (or geiser-debug-jump-to-debug-p geiser-debug-show-debug-p)
+ (if geiser-debug-jump-to-debug-p
+ (geiser-debug--pop-to-buffer)
+ (display-buffer (geiser-debug--buffer))
+ (when dbg
+ (ignore-errors (next-error))
+ (message "=> %s" dbg)))))))
(defsubst geiser-debug--wrap-region (str)
(format "(begin %s)" str))