aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--etc/NEWS5
-rw-r--r--lisp/comint.el3
2 files changed, 5 insertions, 3 deletions
diff --git a/etc/NEWS b/etc/NEWS
index 8bf1da470fc..87c3950b1e3 100644
--- a/etc/NEWS
+++ b/etc/NEWS
@@ -191,6 +191,11 @@ It now treats the optional 2nd argument to mean that the URL should be
191shown in the currently selected window. 191shown in the currently selected window.
192 192
193** Comint 193** Comint
194*** 'comint-insert-previous-argument' no longer interprets &.
195This worked strangely in shell-mode in the presence of &&. And omitting this
196logic makes sense since 'comint-insert-previous-argument' exists to emulate M-.
197in bash and zsh, and neither of those treat & specially.
198
194*** 'comint-insert-previous-argument' knows how to count args 199*** 'comint-insert-previous-argument' knows how to count args
195from the beginning or from the end. This is useful because 200from the beginning or from the end. This is useful because
196'comint-insert-previous-argument' exists to emulate M-. in bash and zsh; and 201'comint-insert-previous-argument' exists to emulate M-. in bash and zsh; and
diff --git a/lisp/comint.el b/lisp/comint.el
index f66e40b150b..82c547c9760 100644
--- a/lisp/comint.el
+++ b/lisp/comint.el
@@ -2705,9 +2705,6 @@ is the last argument. This command is like `M-.' in bash and zsh."
2705 (set-marker comint-insert-previous-argument-last-start-pos (point)) 2705 (set-marker comint-insert-previous-argument-last-start-pos (point))
2706 ;; Insert the argument. 2706 ;; Insert the argument.
2707 (let ((input-string (comint-previous-input-string 0))) 2707 (let ((input-string (comint-previous-input-string 0)))
2708 (when (string-match "[ \t\n]*&" input-string)
2709 ;; strip terminating '&'
2710 (setq input-string (substring input-string 0 (match-beginning 0))))
2711 (insert (comint-arguments input-string index index))) 2708 (insert (comint-arguments input-string index index)))
2712 ;; Make next invocation return arg from previous input 2709 ;; Make next invocation return arg from previous input
2713 (setq comint-input-ring-index (1+ (or comint-input-ring-index 0))) 2710 (setq comint-input-ring-index (1+ (or comint-input-ring-index 0)))