1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-01-30 04:10:54 -08:00

(comint-send-input): Don't call comint-arguments while

computing the value for history.
(comint-delim-arg): Treat quoted delim chars as non-delims.
This commit is contained in:
Richard M. Stallman 1993-11-24 05:12:36 +00:00
parent 043efc41eb
commit 33956d30b7

View file

@ -983,9 +983,15 @@ Quotes are single and double."
(if (or (null comint-delimiter-argument-list)
(string-match "[\"\'\`]" arg))
(list arg)
(let ((not-delim (format "[^%s]+" (mapconcat
(function (lambda (d) (regexp-quote d)))
comint-delimiter-argument-list "")))
(let ((not-delim (concat
(format "\\([^%s]" (mapconcat
(function (lambda (d) (regexp-quote d)))
comint-delimiter-argument-list ""))
"\\|"
(mapconcat (function (lambda (d)
(concat "\\\\" (regexp-quote d))))
comint-delimiter-argument-list "\\|")
"\\)+"))
(delim-str (mapconcat (function (lambda (d)
(concat (regexp-quote d) "+")))
comint-delimiter-argument-list "\\|"))
@ -1080,10 +1086,7 @@ Similarly for Soar, Scheme, etc."
;; functions used do insertion, rather than return
;; strings. We have to expand, then insert back.
(comint-replace-by-expanded-history)
(let ((copy (buffer-substring pmark (point))))
(delete-region pmark (point))
(insert input)
(comint-arguments copy 0 nil)))))
(buffer-substring pmark (point)))))
(if comint-process-echoes
(delete-region pmark (point))
(insert ?\n))