diff options
| -rw-r--r-- | elisp/geiser-repl.el | 12 | 
1 files changed, 4 insertions, 8 deletions
| diff --git a/elisp/geiser-repl.el b/elisp/geiser-repl.el index babebf8..8720a68 100644 --- a/elisp/geiser-repl.el +++ b/elisp/geiser-repl.el @@ -602,11 +602,8 @@ If SAVE-HISTORY is non-nil, save CMD in the REPL history."      (narrow-to-region (geiser-repl--last-prompt-end) (point-max))      (geiser-syntax--nesting-level))) -(defun geiser-repl--mark-input-bounds (beg end) -  (add-text-properties beg end '(field t))) - -(defun geiser-repl--is-history-input () -  (get-text-property (if (eolp) (save-excursion (comint-bol)) (point)) 'field)) +(defun geiser-repl--is-input () +  (not (eq (field-at-pos (point)) 'output)))  (defun geiser-repl--grab-input ()    (let ((pos (comint-bol))) @@ -623,7 +620,6 @@ If SAVE-HISTORY is non-nil, save CMD in the REPL history."             (not (geiser-repl--is-debugging))             (compilation-forget-errors))        (geiser-repl--prepare-send) -      (geiser-repl--mark-input-bounds pmark eob)        (comint-send-input)        (when (string-match "^\\s-*$" intxt)          (comint-send-string proc (geiser-eval--scheme-str '(:ge no-values))) @@ -633,7 +629,7 @@ If SAVE-HISTORY is non-nil, save CMD in the REPL history."    (interactive)    (let ((p (point)))      (cond ((< p (geiser-repl--last-prompt-start)) -	   (if (geiser-repl--is-history-input) +	   (if (geiser-repl--is-input)  	       (geiser-repl--grab-input)  	     (ignore-errors (compile-goto-error))))            ((let ((inhibit-field-text-motion t)) @@ -677,7 +673,7 @@ buffer."         '((comint-highlight-prompt geiser-font-lock-repl-prompt)           (comint-highlight-input geiser-font-lock-repl-input)))    (set (make-local-variable 'mode-line-process) nil) -  (set (make-local-variable 'comint-use-prompt-regexp) t) +  (set (make-local-variable 'comint-use-prompt-regexp) nil)    (set (make-local-variable 'comint-prompt-read-only)         geiser-repl-read-only-prompt-p)    (setq comint-process-echoes nil) | 
