emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] master a710f8a: * lisp/comint.el (comint-history-isearch-s


From: Juri Linkov
Subject: [Emacs-diffs] master a710f8a: * lisp/comint.el (comint-history-isearch-setup): Check if process is live.
Date: Tue, 6 Feb 2018 16:39:07 -0500 (EST)

branch: master
commit a710f8aa61ca73054109dc4f926d1ac6aabdd849
Author: Juri Linkov <address@hidden>
Commit: Juri Linkov <address@hidden>

    * lisp/comint.el (comint-history-isearch-setup): Check if process is live.
    
    Don't activate comint-history isearch when shell prompt is empty
    like in all *Async Shell Command* buffers. (Bug#30187)
---
 lisp/comint.el | 15 +++++++++++----
 1 file changed, 11 insertions(+), 4 deletions(-)

diff --git a/lisp/comint.el b/lisp/comint.el
index 8dba317..b4fbfc8 100644
--- a/lisp/comint.el
+++ b/lisp/comint.el
@@ -1448,10 +1448,17 @@ If nil, Isearch operates on the whole comint buffer."
 (defun comint-history-isearch-setup ()
   "Set up a comint for using Isearch to search the input history.
 Intended to be added to `isearch-mode-hook' in `comint-mode'."
-  (when (or (eq comint-history-isearch t)
-           (and (eq comint-history-isearch 'dwim)
-                ;; Point is at command line.
-                (comint-after-pmark-p)))
+  (when (and (get-buffer-process (current-buffer))
+            (or (eq comint-history-isearch t)
+                (and (eq comint-history-isearch 'dwim)
+                     ;; Point is at command line.
+                     (comint-after-pmark-p)
+                     ;; Prompt is not empty like in Async Shell Command buffers
+                     (not (eq (save-excursion
+                                (goto-char (comint-line-beginning-position))
+                                (forward-line 0)
+                                (point))
+                              (comint-line-beginning-position))))))
     (setq isearch-message-prefix-add "history ")
     (setq-local isearch-search-fun-function
                 #'comint-history-isearch-search)



reply via email to

[Prev in Thread] Current Thread [Next in Thread]