diff options
author | Jose Antonio Ortega Ruiz <jao@gnu.org> | 2009-05-13 23:14:47 +0200 |
---|---|---|
committer | Jose Antonio Ortega Ruiz <jao@gnu.org> | 2009-05-13 23:14:47 +0200 |
commit | 369b3e464bded04224ad63416584ba61e798b293 (patch) | |
tree | b9ccbddf933c0212e37457c33a9625272c880f9f /elisp | |
parent | 440b40c47d553d53ece268e2988123feaadbb2d6 (diff) | |
download | geiser-chez-369b3e464bded04224ad63416584ba61e798b293.tar.gz geiser-chez-369b3e464bded04224ad63416584ba61e798b293.tar.bz2 |
Bug fix: current buffer's impl is used now in switch-to-geiser.
Diffstat (limited to 'elisp')
-rw-r--r-- | elisp/geiser-repl.el | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/elisp/geiser-repl.el b/elisp/geiser-repl.el index 602122b..7c1779a 100644 --- a/elisp/geiser-repl.el +++ b/elisp/geiser-repl.el @@ -179,17 +179,18 @@ implementation name gets appended to it." With prefix argument, ask for which one if more than one is running. If no REPL is running, execute `run-geiser' to start a fresh one." (interactive "P") - (let* ((repl (cond ((and (not ask) (not impl) + (let* ((impl (or impl geiser-impl--implementation)) + (repl (cond ((and (not ask) (not impl) (or (geiser-repl--this-buffer-repl) (car geiser-repl--repls)))) - ((and (not ask) impl (geiser-repl--repl/impl impl))) - ((= 1 (length geiser-repl--repls)) (car geiser-repl--repls)))) - (impl (or impl (and (not repl) - (or (and (not ask) - (geiser-repl--only-impl-p)) - (geiser-repl--read-impl "Switch to scheme REPL: "))))) + ((and (not ask) impl (geiser-repl--repl/impl impl))))) (pop-up-windows geiser-repl-window-allow-split)) - (if repl (pop-to-buffer repl) (run-geiser impl)))) + (if repl + (pop-to-buffer repl) + (run-geiser (or impl + (and (not ask) + (geiser-repl--only-impl-p)) + (geiser-repl--read-impl "Switch to scheme REPL: ")))))) (defalias 'geiser 'switch-to-geiser) |