diff options
author | Jose Antonio Ortega Ruiz <jao@gnu.org> | 2016-06-11 18:37:36 +0200 |
---|---|---|
committer | Jose Antonio Ortega Ruiz <jao@gnu.org> | 2016-06-11 18:37:36 +0200 |
commit | 2fc156374fb2e20e2f25ab020589dc032ff4578a (patch) | |
tree | 9ed0b63f95c85ae005cbe7574960ce3bf8f06fe6 | |
parent | cc84a03528f016779f7ce478b46d6170b989de81 (diff) | |
download | geiser-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.el | 9 | ||||
-rw-r--r-- | elisp/geiser-debug.el | 17 |
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)) |