diff options
| -rw-r--r-- | elisp/geiser-repl.el | 10 | 
1 files changed, 8 insertions, 2 deletions
| diff --git a/elisp/geiser-repl.el b/elisp/geiser-repl.el index 7c0994b..9e66901 100644 --- a/elisp/geiser-repl.el +++ b/elisp/geiser-repl.el @@ -239,8 +239,14 @@ module command as a string")      (switch-to-geiser)      (when (and m (eq major-mode 'geiser-repl-mode))        (goto-char (point-max)) -      (insert m) -      (comint-send-input)))) +      (let ((b (or (and comint-last-prompt-overlay +                        (overlay-start comint-last-prompt-overlay)) +                   (point)))) +        (insert m) +        (let ((e (point)) +              (comint-input-filter (lambda (x) nil))) +          (comint-send-input nil t) +          (comint-kill-region b (1+ e)))))))  (defun geiser-repl-nuke ()    "Try this command if the REPL becomes unresponsive." | 
