From 5f46b51a31e37267fffae906afcab3eee582e84b Mon Sep 17 00:00:00 2001 From: "Richard M. Stallman" Date: Thu, 25 Nov 1993 04:14:10 +0000 Subject: [PATCH] (comint-send-input): Don't call comint-arguments to set HISTORY, even if comint-input-autoexpand is not `history'. When comint-input-autoexpand is `history', undo part of prev change: do put INPUT back in the buffer in place of expanded hist. --- lisp/comint.el | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/lisp/comint.el b/lisp/comint.el index 03cc7d35782..8d8c0623a76 100644 --- a/lisp/comint.el +++ b/lisp/comint.el @@ -1081,12 +1081,15 @@ Similarly for Soar, Scheme, etc." (comint-replace-by-expanded-history) (buffer-substring pmark (point)))) (history (if (not (eq comint-input-autoexpand 'history)) - (comint-arguments input 0 nil) + input ;; This is messy 'cos ultimately the original ;; functions used do insertion, rather than return ;; strings. We have to expand, then insert back. (comint-replace-by-expanded-history) - (buffer-substring pmark (point))))) + (let ((copy (buffer-substring pmark (point)))) + (delete-region pmark (point)) + (insert input) + copy)))) (if comint-process-echoes (delete-region pmark (point)) (insert ?\n))