]> code.delx.au - gnu-emacs/blobdiff - lisp/isearch-multi.el
(struct group): Add gr_gid member.
[gnu-emacs] / lisp / isearch-multi.el
index cd5307b145ae2b336c4e66797fc070f70d82d5b1..fbb712670d6384f94bc8883e117709cae8d4acb2 100644 (file)
@@ -1,16 +1,16 @@
 ;;; isearch-multi.el --- isearch extensions for multi-buffer search
 
-;; Copyright (C) 2007  Free Software Foundation, Inc.
+;; Copyright (C) 2007, 2008  Free Software Foundation, Inc.
 
 ;; Author: Juri Linkov <juri@jurta.org>
 ;; Keywords: matching
 
 ;; This file is part of GNU Emacs.
 
-;; GNU Emacs is free software; you can redistribute it and/or modify
+;; GNU Emacs is free software: you can redistribute it and/or modify
 ;; it under the terms of the GNU General Public License as published by
-;; the Free Software Foundation; either version 3, or (at your option)
-;; any later version.
+;; the Free Software Foundation, either version 3 of the License, or
+;; (at your option) any later version.
 
 ;; GNU Emacs is distributed in the hope that it will be useful,
 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of
@@ -18,9 +18,7 @@
 ;; GNU General Public License for more details.
 
 ;; You should have received a copy of the GNU General Public License
-;; along with GNU Emacs; see the file COPYING.  If not, write to the
-;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
-;; Boston, MA 02110-1301, USA.
+;; along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.
 
 ;;; Commentary:
 
   :version "23.1"
   :group 'isearch)
 
+(defcustom isearch-buffers-multi t
+  "Non-nil enables searching multiple related buffers, in certain modes."
+  :type 'boolean
+  :version "23.1"
+  :group 'isearch-buffers)
+
 (defcustom isearch-buffers-pause t
   "A choice defining where to pause the search.
 If the value is nil, don't pause before going to the next buffer.
@@ -60,15 +64,16 @@ The value is nil when the search still is in the initial buffer.")
   "Function to call to get the next buffer to search.
 
 When this variable is set to a function that returns a buffer, then
-after typing another C-s or C-r at a failing search, the search goes
+after typing another \\[isearch-forward] or \\[isearch-backward] \
+at a failing search, the search goes
 to the next buffer in the series and continues searching for the
 next occurrence.
 
 The first argument of this function is the current buffer where the
 search is currently searching.  It defines the base buffer relative to
 which this function should find the next buffer.  When the isearch
-direction is backward (when isearch-forward is nil), this function
-should return the previous buffer to search. If the second argument of
+direction is backward (when `isearch-forward' is nil), this function
+should return the previous buffer to search.  If the second argument of
 this function WRAP is non-nil, then it should return the first buffer
 in the series; and for the backward search, it should return the last
 buffer in the series.")
@@ -121,7 +126,7 @@ Intended to be added to `isearch-mode-hook'."
        ;; successively, and search the string in them.  Do this only
        ;; when bound is nil (i.e. not while lazy-highlighting search
        ;; strings in the current buffer).
-       (unless bound
+       (when (and (not bound) isearch-buffers-multi)
         ;; If no-pause or there was one attempt to leave the current buffer
         (if (or (null isearch-buffers-pause)
                 (and isearch-buffers-pause isearch-buffers-current-buffer))