summaryrefslogtreecommitdiff
path: root/elisp/geiser-repl.el
diff options
context:
space:
mode:
authorJose Antonio Ortega Ruiz <jao@gnu.org>2009-03-04 02:07:41 +0100
committerJose Antonio Ortega Ruiz <jao@gnu.org>2009-03-04 02:07:41 +0100
commit708205e21031dd016172523ef15e9aeda4417412 (patch)
tree5671a36110621612599b2578d3e3159cd7ad92c9 /elisp/geiser-repl.el
parent1561d097a65189175d43b5960a93cac194f4a2f4 (diff)
downloadgeiser-708205e21031dd016172523ef15e9aeda4417412.tar.gz
geiser-708205e21031dd016172523ef15e9aeda4417412.tar.bz2
New geiser-reload command. New geiser command.
Diffstat (limited to 'elisp/geiser-repl.el')
-rw-r--r--elisp/geiser-repl.el18
1 files changed, 16 insertions, 2 deletions
diff --git a/elisp/geiser-repl.el b/elisp/geiser-repl.el
index c542a66..304b0d4 100644
--- a/elisp/geiser-repl.el
+++ b/elisp/geiser-repl.el
@@ -158,9 +158,13 @@ REPL buffer."
;;; Interface: starting and interacting with geiser REPL:
(defalias 'switch-to-guile 'run-guile)
-(defalias 'switch-to-geiser-repl 'run-guile)
-(defun run-guile (&optional arg)
+(defun run-guile ()
+ "Run Geiser using Guile."
+ (interactive)
+ (geiser 'guile))
+
+(defun geiser (&optional implementation)
"Show the geiser-repl buffer, starting the process if needed."
(interactive)
(let ((buf (process-buffer (geiser-repl--process t)))
@@ -223,6 +227,16 @@ REPL buffer."
(define-key geiser-repl-mode-map "\M-." 'geiser-edit-symbol-at-point)
(define-key geiser-repl-mode-map "\M-," 'geiser-edit-pop-edit-symbol-stack)
+
+;;; Unload:
+
+(defun geiser-repl--live-p ()
+ (buffer-live-p geiser-repl--buffer))
+
+(defun geiser-repl-unload-function ()
+ (when (geiser-repl--live-p)
+ (kill-buffer geiser-repl--buffer))
+ t)
(provide 'geiser-repl)