Subject: bug#13592: 24.2.92; C-s prompts with "Multi I-search:" today

From: Juri Linkov <[email-masked]>
Date: Sat, 02 Feb 2013 01:44:06 +0200

> Anyway, I see that I cannot convince you, no matter what I say.  So
> let's leave this at a disagreement.

You don't have to convince me because I don't disagree with you :-)

Multi-node I-search in the Info reader already doesn't show "Multi",
it is identical to a simple search until it's about to cross
to the next Info node.

Multi-file I-search could do the same.  What I'm trying to understand is
the logic of showing "Multi" and should it be customizable?

What you want is possible to do by the following patch
that will show the prefix only when the user explicitly
invokes multi-isearch.  And customizability of the I-search
prompt was recently discussed in bug#12988.

=== modified file 'lisp/isearch.el'
--- lisp/isearch.el	2013-01-18 22:10:46 +0000
+++ lisp/isearch.el	2013-02-01 23:43:27 +0000
@@ -2530,7 +2530,8 @@ (defun isearch-message-prefix (&optional
 			   "word ")
 		     "")
 		   (if isearch-regexp "regexp " "")
-		   (if multi-isearch-next-buffer-current-function "multi " "")
+		   (if multi-isearch-file-list "multi-file " "")
+		   (if multi-isearch-buffer-list "multi-buffer " "")
 		   (or isearch-message-prefix-add "")
 		   (if nonincremental "search" "I-search")
 		   (if isearch-forward "" " backward")

2. The documentation could be improved with something like this:

=== modified file 'doc/emacs/search.texi'
--- doc/emacs/search.texi	2013-01-03 00:36:36 +0000
+++ doc/emacs/search.texi	2013-02-01 23:43:52 +0000
@@ -1375,6 +1375,22 @@ (@pxref{Repetition}).
 This command is just like @code{multi-isearch-buffers}, except it
 performs an incremental regexp search.
 
+@item M-x multi-isearch-files
+Prompt for one or more file names, ending with @key{RET}; then,
+begin a multi-file incremental search in those files.  (If the
+search fails in one file, the next @kbd{C-s} tries searching the
+next specified file, and so forth.)  With a prefix argument, prompt
+for a regexp and begin a multi-file incremental search in files
+matching that regexp.
+
+@item M-x multi-isearch-files-regexp
+This command is just like @code{multi-isearch-files}, except it
+performs an incremental regexp search.
+
+In some modes that set the buffer-local variable
+@code{multi-isearch-next-buffer-function} (e.g., in Change Log mode)
+a multi-file incremental search is activated automatically.
+
 @cindex Occur mode
 @cindex mode, Occur
 @item M-x occur