summaryrefslogtreecommitdiff
path: root/elisp/geiser-mode.el
diff options
context:
space:
mode:
authorJose Antonio Ortega Ruiz <jao@gnu.org>2010-08-14 21:48:10 +0200
committerJose Antonio Ortega Ruiz <jao@gnu.org>2010-08-14 21:48:10 +0200
commit4c25551e639bb19a60211d30e6c7adb2bc51c59e (patch)
treec91a581510c5ed9dca8dc8dc91ac04db32696388 /elisp/geiser-mode.el
parent739dde06bdd997995873fcd59f2c1cc1d2976aef (diff)
downloadgeiser-guile-4c25551e639bb19a60211d30e6c7adb2bc51c59e.tar.gz
geiser-guile-4c25551e639bb19a60211d30e6c7adb2bc51c59e.tar.bz2
New restart repl command and a bit more docs.
Diffstat (limited to 'elisp/geiser-mode.el')
-rw-r--r--elisp/geiser-mode.el12
1 files changed, 12 insertions, 0 deletions
diff --git a/elisp/geiser-mode.el b/elisp/geiser-mode.el
index 083d90a..d786b1b 100644
--- a/elisp/geiser-mode.el
+++ b/elisp/geiser-mode.el
@@ -164,6 +164,18 @@ With prefix, try to enter the current's buffer module."
(interactive)
(geiser-mode-switch-to-repl t))
+(defun geiser-restart-repl ()
+ "Restarts the REPL associated with the current buffer."
+ (interactive)
+ (let ((b (current-buffer)))
+ (geiser-mode-switch-to-repl nil)
+ (comint-kill-subjob)
+ (sit-for 0.1) ;; ugly hack; but i don't care enough to fix it
+ (call-interactively 'run-geiser)
+ (sit-for 0.2) ;; ditto
+ (end-of-buffer)
+ (pop-to-buffer b)))
+
;;; Geiser mode: