From unknown Wed Jun 25 02:10:34 2025 X-Loop: don@donarmstrong.com Subject: bug#1352: 23.0.60; isearch-success-function Reply-To: "Drew Adams" , 1352@debbugs.gnu.org Resent-From: "Drew Adams" Resent-To: bug-submit-list@lists.donarmstrong.com Resent-CC: Emacs Bugs Resent-Date: Sat, 15 Nov 2008 23:45:03 +0000 Resent-Message-ID: Resent-Sender: don@donarmstrong.com X-Emacs-PR-Message: report 1352 X-Emacs-PR-Package: emacs X-Emacs-PR-Keywords: Received: via spool by submit@emacsbugs.donarmstrong.com id=B.122679237527119 (code B ref -1); Sat, 15 Nov 2008 23:45:03 +0000 X-Spam-Checker-Version: SpamAssassin 3.2.3-bugs.debian.org_2005_01_02 (2007-08-08) on rzlab.ucr.edu X-Spam-Level: X-Spam-Status: No, score=-7.2 required=4.0 tests=AWL,BAYES_00, RCVD_IN_DNSWL_MED,UNPARSEABLE_RELAY autolearn=ham version=3.2.3-bugs.debian.org_2005_01_02 Received: (at submit) by emacsbugs.donarmstrong.com; 15 Nov 2008 23:39:35 +0000 Received: from fencepost.gnu.org (fencepost.gnu.org [140.186.70.10]) by rzlab.ucr.edu (8.13.8/8.13.8/Debian-3) with ESMTP id mAFNdWbI027113 for ; Sat, 15 Nov 2008 15:39:33 -0800 Received: from mx10.gnu.org ([199.232.76.166]:60412) by fencepost.gnu.org with esmtp (Exim 4.67) (envelope-from ) id 1L1Ujf-0006Ni-Ig for emacs-pretest-bug@gnu.org; Sat, 15 Nov 2008 18:39:27 -0500 Received: from Debian-exim by monty-python.gnu.org with spam-scanned (Exim 4.60) (envelope-from ) id 1L1Uji-00020l-O6 for emacs-pretest-bug@gnu.org; Sat, 15 Nov 2008 18:39:31 -0500 Received: from rcsinet11.oracle.com ([148.87.113.123]:58834 helo=rgminet11.oracle.com) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1L1Uji-00020d-DP for emacs-pretest-bug@gnu.org; Sat, 15 Nov 2008 18:39:30 -0500 Received: from acsinet13.oracle.com (acsinet13.oracle.com [141.146.126.235]) by rgminet11.oracle.com (Switch-3.3.1/Switch-3.3.1) with ESMTP id mAFNe1xT017678 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK) for ; Sat, 15 Nov 2008 23:40:02 GMT Received: from acsmt707.oracle.com (acsmt707.oracle.com [141.146.40.85]) by acsinet13.oracle.com (Switch-3.3.1/Switch-3.3.1) with ESMTP id mAFNdb2u028824 for ; Sat, 15 Nov 2008 23:39:39 GMT Received: from dradamslap1 (/24.23.165.218) by default (Oracle Beehive Gateway v4.0) with ESMTP ; Sat, 15 Nov 2008 15:39:20 -0800 From: "Drew Adams" To: Date: Sat, 15 Nov 2008 15:39:35 -0800 Message-ID: <005c01c9477b$6adb8290$0200a8c0@us.oracle.com> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit X-Mailer: Microsoft Office Outlook 11 Thread-Index: AclHe2qABZ8MZmFzR7ydpVVHRhHdtg== X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.3350 X-Source-IP: acsmt707.oracle.com [141.146.40.85] X-Auth-Type: Internal IP X-CT-RefId: str=0001.0A090206.491F5DAD.006E:SCFSTAT928724,ss=1,fgs=0 X-detected-operating-system: by monty-python.gnu.org: GNU/Linux 2.6 (newer, 1) The name of `isearch-success-function' seems wrong, if we believe the doc string. The doc string suggests that it is a predicate that filters the search hits that would otherwise be available. That's very general. If that's true, then the name should reflect this meaning - perhaps `isearch-predicate'. Similarly, the name of `isearch-success-function-default' should be something that suggests its very limited meaning: it filters search hits to those that are visible, unless invisible text too can be searched. It is a particular kind of search filter, and its name should reflect that particularity. Also, in `isearch-search', there is this: ;; Clear RETRY unless we matched some invisible text ;; and we aren't supposed to do that. (if (or (not isearch-success) (bobp) (eobp) (= (match-beginning 0) (match-end 0)) (funcall isearch-success-function (match-beginning 0) (match-end 0))) (setq retry nil))) The code here is general; it is not related to text visibility. So the comment is not general enough. It is a vestige that is appropriate now only when the value of `isearch-success-function' is `isearch-success-function-default'. The comment should instead say that we clear RETRY unless the search predicate says to skip this search hit. It seems like this is a partly finished enhancement to behavior that was originally only for searching invisible text. Seems like this was generalized to an arbitrary predicate that filters possible search hits - but the job seems only half done. The code presumably works in a general way, but the comments and symbol names are inappropriate. The comments and the variable and function names need to reflect the new behavior, and this behavior should be documented for users. Users should know how to take advantage of this feature, defining their own search predicates that filter the search hits that would normally be available, so that hits that dissatisfy the predicate are skipped. In GNU Emacs 23.0.60.1 (i386-mingw-nt5.1.2600) of 2008-11-08 on LENNART-69DE564 Windowing system distributor `Microsoft Corp.', version 5.1.2600 configured using `configure --with-gcc (3.4) --no-opt --cflags -Ic:/g/include -fno-crossjumping' From unknown Wed Jun 25 02:10:34 2025 X-Loop: don@donarmstrong.com Subject: bug#1352: 23.0.60; isearch-success-function Reply-To: Stefan Monnier , 1352@debbugs.gnu.org Resent-From: Stefan Monnier Resent-To: bug-submit-list@lists.donarmstrong.com Resent-CC: Emacs Bugs Resent-Date: Sun, 16 Nov 2008 01:20:04 +0000 Resent-Message-ID: Resent-Sender: don@donarmstrong.com X-Emacs-PR-Message: report 1352 X-Emacs-PR-Package: emacs X-Emacs-PR-Keywords: Received: via spool by submit@emacsbugs.donarmstrong.com id=B.122679785418788 (code B ref -1); Sun, 16 Nov 2008 01:20:04 +0000 X-Spam-Checker-Version: SpamAssassin 3.2.3-bugs.debian.org_2005_01_02 (2007-08-08) on rzlab.ucr.edu X-Spam-Level: X-Spam-Status: No, score=-7.8 required=4.0 tests=AWL,BAYES_00,HAS_BUG_NUMBER, RCVD_IN_DNSWL_MED autolearn=ham version=3.2.3-bugs.debian.org_2005_01_02 Received: (at submit) by emacsbugs.donarmstrong.com; 16 Nov 2008 01:10:54 +0000 Received: from fencepost.gnu.org (fencepost.gnu.org [140.186.70.10]) by rzlab.ucr.edu (8.13.8/8.13.8/Debian-3) with ESMTP id mAG1ApBH018780 for ; Sat, 15 Nov 2008 17:10:52 -0800 Received: from mx10.gnu.org ([199.232.76.166]:34416) by fencepost.gnu.org with esmtp (Exim 4.67) (envelope-from ) id 1L1WA1-0008NV-Sg for emacs-pretest-bug@gnu.org; Sat, 15 Nov 2008 20:10:45 -0500 Received: from Debian-exim by monty-python.gnu.org with spam-scanned (Exim 4.60) (envelope-from ) id 1L1WA4-00087b-Et for emacs-pretest-bug@gnu.org; Sat, 15 Nov 2008 20:10:49 -0500 Received: from ironport2-out.pppoe.ca ([206.248.154.182]:57443 helo=ironport2-out.teksavvy.com) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1L1WA4-00087T-7K for emacs-pretest-bug@gnu.org; Sat, 15 Nov 2008 20:10:48 -0500 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: ArsEALcBH0lMCrcy/2dsb2JhbACBbMwWgnmBFA X-IronPort-AV: E=Sophos;i="4.33,612,1220241600"; d="scan'208";a="29926246" Received: from 76-10-183-50.dsl.teksavvy.com (HELO pastel.home) ([76.10.183.50]) by ironport2-out.teksavvy.com with ESMTP; 15 Nov 2008 20:10:47 -0500 Received: by pastel.home (Postfix, from userid 20848) id 666CF84E1; Sat, 15 Nov 2008 20:10:46 -0500 (EST) From: Stefan Monnier To: Drew Adams Cc: 1352@debbugs.gnu.org, Message-ID: References: <005c01c9477b$6adb8290$0200a8c0@us.oracle.com> Date: Sat, 15 Nov 2008 20:10:46 -0500 In-Reply-To: <005c01c9477b$6adb8290$0200a8c0@us.oracle.com> (Drew Adams's message of "Sat, 15 Nov 2008 15:39:35 -0800") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/23.0.60 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-detected-operating-system: by monty-python.gnu.org: Genre and OS details not recognized. > The name of `isearch-success-function' seems wrong, if we believe the > doc string. The doc string suggests that it is a predicate that > filters the search hits that would otherwise be available. That's very > general. If that's true, then the name should reflect this meaning - > perhaps `isearch-predicate'. Actually, based on your description, I'd name it `isearch-filter-predicate'. Stefan From unknown Wed Jun 25 02:10:34 2025 X-Loop: don@donarmstrong.com Subject: bug#1352: 23.0.60; isearch-success-function Reply-To: "Drew Adams" , 1352@debbugs.gnu.org Resent-From: "Drew Adams" Resent-To: bug-submit-list@lists.donarmstrong.com Resent-CC: Emacs Bugs Resent-Date: Sun, 16 Nov 2008 01:30:02 +0000 Resent-Message-ID: Resent-Sender: don@donarmstrong.com X-Emacs-PR-Message: report 1352 X-Emacs-PR-Package: emacs X-Emacs-PR-Keywords: Received: via spool by submit@emacsbugs.donarmstrong.com id=B.122679856421179 (code B ref -1); Sun, 16 Nov 2008 01:30:02 +0000 X-Spam-Checker-Version: SpamAssassin 3.2.3-bugs.debian.org_2005_01_02 (2007-08-08) on rzlab.ucr.edu X-Spam-Level: X-Spam-Status: No, score=-8.7 required=4.0 tests=AWL,BAYES_00,HAS_BUG_NUMBER, RCVD_IN_DNSWL_MED,UNPARSEABLE_RELAY autolearn=ham version=3.2.3-bugs.debian.org_2005_01_02 Received: (at submit) by emacsbugs.donarmstrong.com; 16 Nov 2008 01:22:44 +0000 Received: from fencepost.gnu.org (fencepost.gnu.org [140.186.70.10]) by rzlab.ucr.edu (8.13.8/8.13.8/Debian-3) with ESMTP id mAG1MfMw021173 for ; Sat, 15 Nov 2008 17:22:42 -0800 Received: from mail.gnu.org ([199.232.76.166]:34645 helo=mx10.gnu.org) by fencepost.gnu.org with esmtp (Exim 4.67) (envelope-from ) id 1L1WLU-0008WT-Pf for emacs-pretest-bug@gnu.org; Sat, 15 Nov 2008 20:22:36 -0500 Received: from Debian-exim by monty-python.gnu.org with spam-scanned (Exim 4.60) (envelope-from ) id 1L1WLX-0000Gb-6x for emacs-pretest-bug@gnu.org; Sat, 15 Nov 2008 20:22:40 -0500 Received: from rcsinet11.oracle.com ([148.87.113.123]:20145 helo=rgminet11.oracle.com) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1L1WLW-0000GX-UM for emacs-pretest-bug@gnu.org; Sat, 15 Nov 2008 20:22:39 -0500 Received: from acsinet13.oracle.com (acsinet13.oracle.com [141.146.126.235]) by rgminet11.oracle.com (Switch-3.3.1/Switch-3.3.1) with ESMTP id mAG1N10O009386 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Sun, 16 Nov 2008 01:23:03 GMT Received: from acsmt706.oracle.com (acsmt706.oracle.com [141.146.40.84]) by acsinet13.oracle.com (Switch-3.3.1/Switch-3.3.1) with ESMTP id mAG1Mc0N003857; Sun, 16 Nov 2008 01:22:39 GMT Received: from dradamslap1 (/24.23.165.218) by default (Oracle Beehive Gateway v4.0) with ESMTP ; Sat, 15 Nov 2008 17:22:24 -0800 From: "Drew Adams" To: "'Stefan Monnier'" Cc: <1352@debbugs.gnu.org>, References: <005c01c9477b$6adb8290$0200a8c0@us.oracle.com> Date: Sat, 15 Nov 2008 17:22:41 -0800 Message-ID: <006301c94789$d22fcf10$0200a8c0@us.oracle.com> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit X-Mailer: Microsoft Office Outlook 11 In-Reply-To: Thread-Index: AclHiFVcA8Hxa9NqTAquc19z3AplXAAATRug X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.3350 X-Source-IP: acsmt706.oracle.com [141.146.40.84] X-Auth-Type: Internal IP X-CT-RefId: str=0001.0A09020B.491F75D2.002F:SCFSTAT928724,ss=1,fgs=0 X-detected-operating-system: by monty-python.gnu.org: GNU/Linux 2.6 (newer, 1) X-CrossAssassin-Score: 2 > > The name of `isearch-success-function' seems wrong, if we > > believe the doc string. The doc string suggests that it is > > a predicate that filters the search hits that would > > otherwise be available. That's very general. If that's true, > > then the name should reflect this meaning - > > perhaps `isearch-predicate'. > > Actually, based on your description, I'd name it > `isearch-filter-predicate'. Sound good to me. (Although by the "principe des belles oranges", an Isearch predicate could pretty much only be for filtering.) From unknown Wed Jun 25 02:10:34 2025 X-Loop: don@donarmstrong.com Subject: bug#1352: 23.0.60; isearch-success-function Reply-To: Juri Linkov , 1352@debbugs.gnu.org Resent-From: Juri Linkov Resent-To: bug-submit-list@lists.donarmstrong.com Resent-CC: Emacs Bugs Resent-Date: Sun, 16 Nov 2008 21:25:03 +0000 Resent-Message-ID: Resent-Sender: don@donarmstrong.com X-Emacs-PR-Message: report 1352 X-Emacs-PR-Package: emacs X-Emacs-PR-Keywords: Received: via spool by submit@emacsbugs.donarmstrong.com id=B.122687035329152 (code B ref -1); Sun, 16 Nov 2008 21:25:03 +0000 X-Spam-Checker-Version: SpamAssassin 3.2.3-bugs.debian.org_2005_01_02 (2007-08-08) on rzlab.ucr.edu X-Spam-Level: X-Spam-Status: No, score=-7.8 required=4.0 tests=AWL,BAYES_00,FVGT_m_MULTI_ODD, HAS_BUG_NUMBER,MURPHY_DRUGS_REL8,RCVD_IN_DNSWL_MED,RCVD_IN_NIX1 autolearn=ham version=3.2.3-bugs.debian.org_2005_01_02 Received: (at submit) by emacsbugs.donarmstrong.com; 16 Nov 2008 21:19:13 +0000 Received: from fencepost.gnu.org (fencepost.gnu.org [140.186.70.10]) by rzlab.ucr.edu (8.13.8/8.13.8/Debian-3) with ESMTP id mAGLJ9Hv029145 for ; Sun, 16 Nov 2008 13:19:10 -0800 Received: from mx10.gnu.org ([199.232.76.166]:34360) by fencepost.gnu.org with esmtp (Exim 4.67) (envelope-from ) id 1L1p1L-0002p3-FE for emacs-pretest-bug@gnu.org; Sun, 16 Nov 2008 16:19:03 -0500 Received: from Debian-exim by monty-python.gnu.org with spam-scanned (Exim 4.60) (envelope-from ) id 1L1p1O-0005Kz-Og for emacs-pretest-bug@gnu.org; Sun, 16 Nov 2008 16:19:08 -0500 Received: from relay03.kiev.sovam.com ([62.64.120.201]:50376) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1L1p1O-0005KZ-1l for emacs-pretest-bug@gnu.org; Sun, 16 Nov 2008 16:19:06 -0500 Received: from [83.170.232.243] (helo=smtp.svitonline.com) by relay03.kiev.sovam.com with esmtp (Exim 4.67) (envelope-from ) id 1L1p1J-00048w-OH; Sun, 16 Nov 2008 23:19:02 +0200 From: Juri Linkov To: Stefan Monnier Cc: 1352@debbugs.gnu.org, Drew Adams , emacs-pretest-bug@gnu.org Organization: JURTA References: <005c01c9477b$6adb8290$0200a8c0@us.oracle.com> Date: Sun, 16 Nov 2008 23:16:17 +0200 In-Reply-To: (Stefan Monnier's message of "Sat, 15 Nov 2008 20:10:46 -0500") Message-ID: <87fxlrid7i.fsf@jurta.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/23.0.60 (x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Scanner-Signature: 4a7b5a5b2e932d77e907085f616b0add X-DrWeb-checked: yes X-SpamTest-Envelope-From: juri@jurta.org X-SpamTest-Group-ID: 00000000 X-SpamTest-Header: Trusted X-SpamTest-Info: Profiles 5467 [Oct 22 2008] X-SpamTest-Info: {received from trusted relay: common white list} X-SpamTest-Info: {HEADERS: header Content-Type found without required header Content-Transfer-Encoding} X-SpamTest-Method: white ip list X-SpamTest-Rate: 10 X-SpamTest-Status: Trusted X-SpamTest-Status-Extended: trusted X-SpamTest-Version: SMTP-Filter Version 3.0.0 [0278], KAS30/Release X-detected-operating-system: by monty-python.gnu.org: Genre and OS details not recognized. X-CrossAssassin-Score: 2 >> The name of `isearch-success-function' seems wrong, if we believe the >> doc string. The doc string suggests that it is a predicate that >> filters the search hits that would otherwise be available. That's very >> general. If that's true, then the name should reflect this meaning - >> perhaps `isearch-predicate'. > > Actually, based on your description, I'd name it `isearch-filter-predicate'. The name `isearch-success-function' was created to be consistent with other *-function variables and with `isearch-success', but I agree that more clear names are better. So the patch below renames it to `isearch-filter-predicate' and also renames `isearch-success-function-default' to `isearch-filter-invisible', plus renames in Dired and Info, and doc fixes: Index: lisp/isearch.el =================================================================== RCS file: /sources/emacs/emacs/lisp/isearch.el,v retrieving revision 1.335 diff -c -r1.335 isearch.el *** lisp/isearch.el 11 Nov 2008 20:11:34 -0000 1.335 --- lisp/isearch.el 16 Nov 2008 21:07:27 -0000 *************** *** 176,186 **** "Function to save a function restoring the mode-specific isearch state to the search status stack.") ! (defvar isearch-success-function 'isearch-success-function-default ! "Function to report whether the new search match is considered successful. ! The function has two arguments: the positions of start and end of text ! matched by the search. If this function returns nil, continue ! searching without stopping at this match.") ;; Search ring. --- 176,187 ---- "Function to save a function restoring the mode-specific isearch state to the search status stack.") ! (defvar isearch-filter-predicate 'isearch-filter-invisible ! "Predicate that filters the search hits that would normally be available. ! Search hits that dissatisfy the predicate are skipped. The function ! has two arguments: the positions of start and end of text matched by ! the search. If this function returns nil, continue searching without ! stopping at this match.") ;; Search ring. *************** *** 2257,2263 **** (isearch-no-upper-case-p isearch-string isearch-regexp))) (condition-case lossage (let ((inhibit-point-motion-hooks ! (and (eq isearch-success-function 'isearch-success-function-default) search-invisible)) (inhibit-quit nil) (case-fold-search isearch-case-fold-search) --- 2258,2264 ---- (isearch-no-upper-case-p isearch-string isearch-regexp))) (condition-case lossage (let ((inhibit-point-motion-hooks ! (and (eq isearch-filter-predicate 'isearch-filter-invisible) search-invisible)) (inhibit-quit nil) (case-fold-search isearch-case-fold-search) *************** *** 2267,2278 **** (while retry (setq isearch-success (isearch-search-string isearch-string nil t)) ! ;; Clear RETRY unless we matched some invisible text ! ;; and we aren't supposed to do that. (if (or (not isearch-success) (bobp) (eobp) (= (match-beginning 0) (match-end 0)) ! (funcall isearch-success-function (match-beginning 0) (match-end 0))) (setq retry nil))) (setq isearch-just-started nil) --- 2268,2279 ---- (while retry (setq isearch-success (isearch-search-string isearch-string nil t)) ! ;; Clear RETRY unless the search predicate says ! ;; to skip this search hit. (if (or (not isearch-success) (bobp) (eobp) (= (match-beginning 0) (match-end 0)) ! (funcall isearch-filter-predicate (match-beginning 0) (match-end 0))) (setq retry nil))) (setq isearch-just-started nil) *************** *** 2451,2460 **** nil) (setq isearch-hidden t))))))) ! (defun isearch-success-function-default (beg end) ! "Default function to report if the new search match is successful. ! Returns t if search can match hidden text, or otherwise checks if some ! text from BEG to END is visible." (or (eq search-invisible t) (not (isearch-range-invisible beg end)))) --- 2452,2461 ---- nil) (setq isearch-hidden t))))))) ! (defun isearch-filter-invisible (beg end) ! "Default predicate to filter out invisible text. ! It filters search hits to those that are visible (at least partially), ! unless invisible text too can be searched." (or (eq search-invisible t) (not (isearch-range-invisible beg end)))) *************** *** 2640,2651 **** (if isearch-lazy-highlight-wrapped isearch-lazy-highlight-end (window-start)))))) ! ;; Use a loop like in `isearch-search' (while retry (setq success (isearch-search-string isearch-lazy-highlight-last-string bound t)) (if (or (not success) ! (funcall isearch-success-function (match-beginning 0) (match-end 0))) (setq retry nil))) success) --- 2642,2655 ---- (if isearch-lazy-highlight-wrapped isearch-lazy-highlight-end (window-start)))))) ! ;; Use a loop like in `isearch-search'. (while retry (setq success (isearch-search-string isearch-lazy-highlight-last-string bound t)) + ;; Clear RETRY unless the search predicate says + ;; to skip this search hit. (if (or (not success) ! (funcall isearch-filter-predicate (match-beginning 0) (match-end 0))) (setq retry nil))) success) Index: lisp/dired-aux.el =================================================================== RCS file: /sources/emacs/emacs/lisp/dired-aux.el,v retrieving revision 1.181 diff -c -r1.181 dired-aux.el *** lisp/dired-aux.el 11 Nov 2008 20:12:44 -0000 1.181 --- lisp/dired-aux.el 16 Nov 2008 21:12:49 -0000 *************** *** 2303,2328 **** :group 'dired :version "23.1") ! (defvar dired-isearch-orig-success-function nil) (defun dired-isearch-filenames-toggle () "Toggle file names searching on or off. ! When on, Isearch checks the success of the current matching point ! using the function `dired-isearch-success-function' that matches only ! at file names. When off, it uses the default function ! `isearch-success-function-default'." (interactive) ! (setq isearch-success-function ! (if (eq isearch-success-function 'dired-isearch-success-function) ! 'isearch-success-function-default ! 'dired-isearch-success-function)) (setq isearch-success t isearch-adjusted t) (isearch-update)) --- 2303,2328 ---- :group 'dired :version "23.1") ! (defvar dired-isearch-filter-predicate-orig nil) (defun dired-isearch-filenames-toggle () "Toggle file names searching on or off. ! When on, Isearch skips matches outside file names using the predicate ! `dired-isearch-filter-filenames' that matches only at file names. ! When off, it uses the default predicate `isearch-filter-invisible'." (interactive) ! (setq isearch-filter-predicate ! (if (eq isearch-filter-predicate 'dired-isearch-filter-filenames) ! 'isearch-filter-invisible ! 'dired-isearch-filter-filenames)) (setq isearch-success t isearch-adjusted t) (isearch-update)) *************** *** 2330,2351 **** (defun dired-isearch-filenames-setup () "Set up isearch to search in Dired file names. Intended to be added to `isearch-mode-hook'." ! (when dired-isearch-filenames (define-key isearch-mode-map "\M-sf" 'dired-isearch-filenames-toggle) ! (setq dired-isearch-orig-success-function ! (default-value 'isearch-success-function)) ! (setq-default isearch-success-function 'dired-isearch-success-function) (add-hook 'isearch-mode-end-hook 'dired-isearch-filenames-end nil t))) (defun dired-isearch-filenames-end () "Clean up the Dired file name search after terminating isearch." (define-key isearch-mode-map "\M-sf" nil) ! (setq-default isearch-success-function dired-isearch-orig-success-function) (remove-hook 'isearch-mode-end-hook 'dired-isearch-filenames-end t)) ! (defun dired-isearch-success-function (beg end) "Match only at visible regions with the text property `dired-filename'." ! (and (isearch-success-function-default beg end) (if dired-isearch-filenames (text-property-not-all (min beg end) (max beg end) 'dired-filename nil) --- 2330,2355 ---- (defun dired-isearch-filenames-setup () "Set up isearch to search in Dired file names. Intended to be added to `isearch-mode-hook'." ! (when (or (eq dired-isearch-filenames 'dired-filename) (define-key isearch-mode-map "\M-sf" 'dired-isearch-filenames-toggle) ! (setq dired-isearch-filter-predicate-orig ! (default-value 'isearch-filter-predicate)) ! (setq-default isearch-filter-predicate 'dired-isearch-filter-filenames) (add-hook 'isearch-mode-end-hook 'dired-isearch-filenames-end nil t))) (defun dired-isearch-filenames-end () "Clean up the Dired file name search after terminating isearch." (define-key isearch-mode-map "\M-sf" nil) ! (setq-default isearch-filter-predicate dired-isearch-filter-predicate-orig) (remove-hook 'isearch-mode-end-hook 'dired-isearch-filenames-end t)) ! (defun dired-isearch-filter-filenames (beg end) "Match only at visible regions with the text property `dired-filename'." ! (and (isearch-filter-invisible beg end) (if dired-isearch-filenames (text-property-not-all (min beg end) (max beg end) 'dired-filename nil) Index: lisp/info.el =================================================================== RCS file: /sources/emacs/emacs/lisp/info.el,v retrieving revision 1.551 diff -u -r1.551 info.el --- lisp/info.el 20 Oct 2008 02:23:01 -0000 1.551 +++ lisp/info.el 16 Nov 2008 21:10:12 -0000 @@ -1660,7 +1660,7 @@ (point-max))) (while (and (not give-up) (or (null found) - (not (funcall isearch-success-function beg-found found)))) + (not (funcall isearch-filter-predicate beg-found found)))) (let ((search-spaces-regexp (if (or (not isearch-mode) isearch-regexp) Info-search-whitespace-regexp))) @@ -1740,7 +1740,7 @@ (setq give-up nil found nil) (while (and (not give-up) (or (null found) - (not (funcall isearch-success-function beg-found found)))) + (not (funcall isearch-filter-predicate beg-found found)))) (let ((search-spaces-regexp (if (or (not isearch-mode) isearch-regexp) Info-search-whitespace-regexp))) @@ -1847,7 +1847,7 @@ (defun Info-isearch-start () (setq Info-isearch-initial-node nil)) -(defun Info-search-success-function (beg-found found) +(defun Info-isearch-filter-predicate (beg-found found) "Skip invisible text, node header line and Tag Table node." (save-match-data (let ((backward (< found beg-found))) @@ -3533,8 +3533,8 @@ 'Info-isearch-wrap) (set (make-local-variable 'isearch-push-state-function) 'Info-isearch-push-state) - (set (make-local-variable 'isearch-success-function) - 'Info-search-success-function) + (set (make-local-variable 'isearch-filter-predicate) + 'Info-isearch-filter-predicate) (set (make-local-variable 'search-whitespace-regexp) Info-search-whitespace-regexp) (set (make-local-variable 'revert-buffer-function) -- Juri Linkov http://www.jurta.org/emacs/ From unknown Wed Jun 25 02:10:34 2025 X-Loop: don@donarmstrong.com Subject: bug#1352: 23.0.60; isearch-success-function Reply-To: Stefan Monnier , 1352@debbugs.gnu.org Resent-From: Stefan Monnier Resent-To: bug-submit-list@lists.donarmstrong.com Resent-CC: Emacs Bugs Resent-Date: Sun, 16 Nov 2008 23:15:02 +0000 Resent-Message-ID: Resent-Sender: don@donarmstrong.com X-Emacs-PR-Message: report 1352 X-Emacs-PR-Package: emacs X-Emacs-PR-Keywords: Received: via spool by submit@emacsbugs.donarmstrong.com id=B.122687685325474 (code B ref -1); Sun, 16 Nov 2008 23:15:02 +0000 X-Spam-Checker-Version: SpamAssassin 3.2.3-bugs.debian.org_2005_01_02 (2007-08-08) on rzlab.ucr.edu X-Spam-Level: X-Spam-Status: No, score=-7.8 required=4.0 tests=AWL,BAYES_00,HAS_BUG_NUMBER, MURPHY_DRUGS_REL8,RCVD_IN_DNSWL_MED autolearn=ham version=3.2.3-bugs.debian.org_2005_01_02 Received: (at submit) by emacsbugs.donarmstrong.com; 16 Nov 2008 23:07:33 +0000 Received: from fencepost.gnu.org (fencepost.gnu.org [140.186.70.10]) by rzlab.ucr.edu (8.13.8/8.13.8/Debian-3) with ESMTP id mAGN7T8H025460 for ; Sun, 16 Nov 2008 15:07:31 -0800 Received: from mx10.gnu.org ([199.232.76.166]:36405) by fencepost.gnu.org with esmtp (Exim 4.67) (envelope-from ) id 1L1qiC-0007OU-8v for emacs-pretest-bug@gnu.org; Sun, 16 Nov 2008 18:07:24 -0500 Received: from Debian-exim by monty-python.gnu.org with spam-scanned (Exim 4.60) (envelope-from ) id 1L1qiF-0003Py-IV for emacs-pretest-bug@gnu.org; Sun, 16 Nov 2008 18:07:28 -0500 Received: from ironport2-out.pppoe.ca ([206.248.154.182]:3774 helo=ironport2-out.teksavvy.com) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1L1qiF-0003Pm-9e for emacs-pretest-bug@gnu.org; Sun, 16 Nov 2008 18:07:27 -0500 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AhIFAK81IElMCrcy/2dsb2JhbACBbMsfgnmBFA X-IronPort-AV: E=Sophos;i="4.33,615,1220241600"; d="scan'208";a="29941838" Received: from 76-10-183-50.dsl.teksavvy.com (HELO pastel.home) ([76.10.183.50]) by ironport2-out.teksavvy.com with ESMTP; 16 Nov 2008 18:07:24 -0500 Received: by pastel.home (Postfix, from userid 20848) id 00F2B84E1; Sun, 16 Nov 2008 18:07:51 -0500 (EST) From: Stefan Monnier To: Juri Linkov Cc: 1352@debbugs.gnu.org, Drew Adams , emacs-pretest-bug@gnu.org Message-ID: References: <005c01c9477b$6adb8290$0200a8c0@us.oracle.com> <87fxlrid7i.fsf@jurta.org> Date: Sun, 16 Nov 2008 18:07:51 -0500 In-Reply-To: <87fxlrid7i.fsf@jurta.org> (Juri Linkov's message of "Sun, 16 Nov 2008 23:16:17 +0200") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/23.0.60 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-detected-operating-system: by monty-python.gnu.org: Genre and OS details not recognized. X-CrossAssassin-Score: 2 > The name `isearch-success-function' was created to be consistent > with other *-function variables and with `isearch-success', > but I agree that more clear names are better. So the patch below > renames it to `isearch-filter-predicate' and also renames > `isearch-success-function-default' to `isearch-filter-invisible', > plus renames in Dired and Info, and doc fixes: Sounds very good, thank you, please install it. Stefan PS: I especially like the isearch-filter-invisible, so it says what the function does, rather than how/where the function is expected to be used. From unknown Wed Jun 25 02:10:34 2025 X-Loop: don@donarmstrong.com Subject: bug#1352: 23.0.60; isearch-success-function Reply-To: "Drew Adams" , 1352@debbugs.gnu.org Resent-From: "Drew Adams" Resent-To: bug-submit-list@lists.donarmstrong.com Resent-CC: Emacs Bugs Resent-Date: Mon, 17 Nov 2008 00:55:04 +0000 Resent-Message-ID: Resent-Sender: don@donarmstrong.com X-Emacs-PR-Message: report 1352 X-Emacs-PR-Package: emacs X-Emacs-PR-Keywords: Received: via spool by submit@emacsbugs.donarmstrong.com id=B.122688282918794 (code B ref -1); Mon, 17 Nov 2008 00:55:04 +0000 X-Spam-Checker-Version: SpamAssassin 3.2.3-bugs.debian.org_2005_01_02 (2007-08-08) on rzlab.ucr.edu X-Spam-Level: X-Spam-Status: No, score=-8.7 required=4.0 tests=AWL,BAYES_00,HAS_BUG_NUMBER, RCVD_IN_DNSWL_MED,UNPARSEABLE_RELAY autolearn=ham version=3.2.3-bugs.debian.org_2005_01_02 Received: (at submit) by emacsbugs.donarmstrong.com; 17 Nov 2008 00:47:09 +0000 Received: from fencepost.gnu.org (fencepost.gnu.org [140.186.70.10]) by rzlab.ucr.edu (8.13.8/8.13.8/Debian-3) with ESMTP id mAH0l6Xf018786 for ; Sun, 16 Nov 2008 16:47:07 -0800 Received: from mx10.gnu.org ([199.232.76.166]:38382) by fencepost.gnu.org with esmtp (Exim 4.67) (envelope-from ) id 1L1sGa-0001QP-9C for emacs-pretest-bug@gnu.org; Sun, 16 Nov 2008 19:47:00 -0500 Received: from Debian-exim by monty-python.gnu.org with spam-scanned (Exim 4.60) (envelope-from ) id 1L1sGe-0000Vc-OK for emacs-pretest-bug@gnu.org; Sun, 16 Nov 2008 19:47:05 -0500 Received: from acsinet11.oracle.com ([141.146.126.233]:37635) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1L1sGe-0000QX-Ca for emacs-pretest-bug@gnu.org; Sun, 16 Nov 2008 19:47:04 -0500 Received: from acsinet13.oracle.com (acsinet13.oracle.com [141.146.126.235]) by acsinet11.oracle.com (Switch-3.3.1/Switch-3.3.1) with ESMTP id mAH0js4D023385 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Mon, 17 Nov 2008 00:45:55 GMT Received: from acsmt707.oracle.com (acsmt707.oracle.com [141.146.40.85]) by acsinet13.oracle.com (Switch-3.3.1/Switch-3.3.1) with ESMTP id mAH0jVXS031485; Mon, 17 Nov 2008 00:45:32 GMT Received: from dradamslap1 (/24.23.165.218) by default (Oracle Beehive Gateway v4.0) with ESMTP ; Mon, 17 Nov 2008 00:45:17 +0000 From: "Drew Adams" To: "'Juri Linkov'" , "'Stefan Monnier'" Cc: <1352@debbugs.gnu.org>, References: <005c01c9477b$6adb8290$0200a8c0@us.oracle.com> <87fxlrid7i.fsf@jurta.org> Date: Sun, 16 Nov 2008 16:45:34 -0800 Message-ID: <000e01c9484d$cdc82f20$0200a8c0@us.oracle.com> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit X-Mailer: Microsoft Office Outlook 11 In-Reply-To: <87fxlrid7i.fsf@jurta.org> X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.3350 Thread-Index: AclIMVAGcK9D8EpjT+qer5RidLBt1wAD0v3g X-Source-IP: acsmt707.oracle.com [141.146.40.85] X-Auth-Type: Internal IP X-CT-RefId: str=0001.0A010205.4920BE9F.0018:SCFSTAT928724,ss=1,fgs=0 X-detected-operating-system: by monty-python.gnu.org: GNU/Linux 2.6 (newer, 1) X-CrossAssassin-Score: 2 Thanks, Juri. Looks better, to me anyway. Some details you might want to consider - 1. This doc string: > ! (defun isearch-filter-invisible (beg end) > ! "Default predicate to filter out invisible text. > ! It filters search hits to those that are visible (at least > partially), > ! unless invisible text too can be searched." > (or (eq search-invisible t) > (not (isearch-range-invisible beg end)))) That explains how the predicate is used, not what it, itself, does. I'd propose something like this: Tests whether the current search hit is visible to Isearch. Returns non-nil if `search-invisible' is t or the text from BEG to END is visible to Isearch as determined by `isearch-range-invisible'. 2. The predicate name. A filter can be used either way: to allow to pass or to keep out. The Isearch filter allows whatever passes the predicate and disallows whatever does not pass it. Regardless of how a predicate might be used, its doc string and name should reflect the quality for which the predicate is true: `bluep' is true if its arg is blue, regardless of whether the predicate is used to filter blueness out or in. It is the quality of being isearch-visible that is tested here; the predicate returns true when the search hit is visible to Isearch. A name that reflects that is `isearch-visible-p'. Or, if we add the prefix `isearch-' systematically, `isearch-isearch-visible-p'. Or `isearch-visible-to-isearch-p'. (This is bound to be somewhat confusing whatever name we use for it, because of the notion of normally invisible text being visible to Isearch.) I'd probably go with just `isearch-visible-p'. 3. Similarly, I'd suggest `dired-isearch-filename-p' instead of `dired-isearch-filter-filenames'. Again, the predicate name should reflect what the predicate does, not how it might be used. In this case, it returns true for a search hit that is a file name. And the doc string: Tests whether the current search hit is a file name. Returns non-nil if the text from BEG to END is part of a visible file name. 4. Likewise, something like `Info-isearch-visible-body-text-p' instead of `Info-isearch-filter-predicate'. Name it after the kind of search hits that pass the test: body text (not header or tag-table text) that is visible. And the doc string: Tests whether the current search hit is a visible body text. Returns non-nil if the text from BEG to END is visible and is not in a header line or a tag table. From unknown Wed Jun 25 02:10:34 2025 MIME-Version: 1.0 X-Mailer: MIME-tools 5.420 (Entity 5.420) X-Loop: don@donarmstrong.com From: help-debbugs@gnu.org (Emacs bug Tracking System) To: "Drew Adams" Subject: bug#1352 closed by Juri Linkov (Re: bug#1352: 23.0.60; isearch-success-function) Message-ID: References: <87tza7kwmt.fsf@jurta.org> <005c01c9477b$6adb8290$0200a8c0@us.oracle.com> X-Emacs-PR-Message: they-closed 1352 X-Emacs-PR-Package: emacs Reply-To: 1352@debbugs.gnu.org Content-Type: multipart/mixed; boundary="----------=_1226883307-20239-1" This is a multi-part message in MIME format... ------------=_1226883307-20239-1 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" This is an automatic notification regarding your bug report which was filed against the emacs package: #1352: 23.0.60; isearch-success-function It has been closed by Juri Linkov . Their explanation is attached below along with your original report. If this explanation is unsatisfactory and you have not received a better one in a separate message then please contact Juri Linkov by replying to this email. --=20 1352: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=3D1352 Emacs Bug Tracking System Contact help-debbugs@gnu.org with problems ------------=_1226883307-20239-1 Content-Type: message/rfc822 Content-Disposition: inline Content-Transfer-Encoding: 7bit >From juri@jurta.org Sun Nov 16 16:47:12 2008 X-Spam-Checker-Version: SpamAssassin 3.2.3-bugs.debian.org_2005_01_02 (2007-08-08) on rzlab.ucr.edu X-Spam-Level: X-Spam-Status: No, score=-6.5 required=4.0 tests=AWL,BAYES_00,HAS_BUG_NUMBER, RCVD_IN_DNSWL_LOW,RCVD_IN_NIX1 autolearn=ham version=3.2.3-bugs.debian.org_2005_01_02 Received: (at 1352-done) by emacsbugs.donarmstrong.com; 17 Nov 2008 00:47:12 +0000 Received: from relay02.kiev.sovam.com (relay02.kiev.sovam.com [62.64.120.197]) by rzlab.ucr.edu (8.13.8/8.13.8/Debian-3) with ESMTP id mAH0l9DN018789 for <1352-done@emacsbugs.donarmstrong.com>; Sun, 16 Nov 2008 16:47:10 -0800 Received: from [83.170.232.243] (helo=smtp.svitonline.com) by relay02.kiev.sovam.com with esmtp (Exim 4.67) (envelope-from ) id 1L1sGi-0000Xc-3E; Mon, 17 Nov 2008 02:47:08 +0200 From: Juri Linkov To: Stefan Monnier Cc: 1352-done@debbugs.gnu.org, Drew Adams Subject: Re: bug#1352: 23.0.60; isearch-success-function Organization: JURTA References: <005c01c9477b$6adb8290$0200a8c0@us.oracle.com> <87fxlrid7i.fsf@jurta.org> Date: Mon, 17 Nov 2008 02:46:02 +0200 In-Reply-To: (Stefan Monnier's message of "Sun, 16 Nov 2008 18:07:51 -0500") Message-ID: <87tza7kwmt.fsf@jurta.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/23.0.60 (x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Scanner-Signature: 20361835ac2f847025e7fdf3cd576c4a X-DrWeb-checked: yes X-SpamTest-Envelope-From: juri@jurta.org X-SpamTest-Group-ID: 00000000 X-SpamTest-Header: Trusted X-SpamTest-Info: Profiles 5467 [Oct 22 2008] X-SpamTest-Info: {received from trusted relay: common white list} X-SpamTest-Info: {HEADERS: header Content-Type found without required header Content-Transfer-Encoding} X-SpamTest-Method: white ip list X-SpamTest-Rate: 10 X-SpamTest-Status: Trusted X-SpamTest-Status-Extended: trusted X-SpamTest-Version: SMTP-Filter Version 3.0.0 [0278], KAS30/Release > Sounds very good, thank you, please install it. Done. -- Juri Linkov http://www.jurta.org/emacs/ ------------=_1226883307-20239-1 Content-Type: message/rfc822 Content-Disposition: inline Content-Transfer-Encoding: 7bit >From drew.adams@oracle.com Sat Nov 15 15:39:35 2008 X-Spam-Checker-Version: SpamAssassin 3.2.3-bugs.debian.org_2005_01_02 (2007-08-08) on rzlab.ucr.edu X-Spam-Level: X-Spam-Status: No, score=-7.2 required=4.0 tests=AWL,BAYES_00, RCVD_IN_DNSWL_MED,UNPARSEABLE_RELAY autolearn=ham version=3.2.3-bugs.debian.org_2005_01_02 Received: (at submit) by emacsbugs.donarmstrong.com; 15 Nov 2008 23:39:35 +0000 Received: from fencepost.gnu.org (fencepost.gnu.org [140.186.70.10]) by rzlab.ucr.edu (8.13.8/8.13.8/Debian-3) with ESMTP id mAFNdWbI027113 for ; Sat, 15 Nov 2008 15:39:33 -0800 Received: from mx10.gnu.org ([199.232.76.166]:60412) by fencepost.gnu.org with esmtp (Exim 4.67) (envelope-from ) id 1L1Ujf-0006Ni-Ig for emacs-pretest-bug@gnu.org; Sat, 15 Nov 2008 18:39:27 -0500 Received: from Debian-exim by monty-python.gnu.org with spam-scanned (Exim 4.60) (envelope-from ) id 1L1Uji-00020l-O6 for emacs-pretest-bug@gnu.org; Sat, 15 Nov 2008 18:39:31 -0500 Received: from rcsinet11.oracle.com ([148.87.113.123]:58834 helo=rgminet11.oracle.com) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1L1Uji-00020d-DP for emacs-pretest-bug@gnu.org; Sat, 15 Nov 2008 18:39:30 -0500 Received: from acsinet13.oracle.com (acsinet13.oracle.com [141.146.126.235]) by rgminet11.oracle.com (Switch-3.3.1/Switch-3.3.1) with ESMTP id mAFNe1xT017678 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK) for ; Sat, 15 Nov 2008 23:40:02 GMT Received: from acsmt707.oracle.com (acsmt707.oracle.com [141.146.40.85]) by acsinet13.oracle.com (Switch-3.3.1/Switch-3.3.1) with ESMTP id mAFNdb2u028824 for ; Sat, 15 Nov 2008 23:39:39 GMT Received: from dradamslap1 (/24.23.165.218) by default (Oracle Beehive Gateway v4.0) with ESMTP ; Sat, 15 Nov 2008 15:39:20 -0800 From: "Drew Adams" To: Subject: 23.0.60; isearch-success-function Date: Sat, 15 Nov 2008 15:39:35 -0800 Message-ID: <005c01c9477b$6adb8290$0200a8c0@us.oracle.com> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit X-Mailer: Microsoft Office Outlook 11 Thread-Index: AclHe2qABZ8MZmFzR7ydpVVHRhHdtg== X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.3350 X-Source-IP: acsmt707.oracle.com [141.146.40.85] X-Auth-Type: Internal IP X-CT-RefId: str=0001.0A090206.491F5DAD.006E:SCFSTAT928724,ss=1,fgs=0 X-detected-operating-system: by monty-python.gnu.org: GNU/Linux 2.6 (newer, 1) The name of `isearch-success-function' seems wrong, if we believe the doc string. The doc string suggests that it is a predicate that filters the search hits that would otherwise be available. That's very general. If that's true, then the name should reflect this meaning - perhaps `isearch-predicate'. Similarly, the name of `isearch-success-function-default' should be something that suggests its very limited meaning: it filters search hits to those that are visible, unless invisible text too can be searched. It is a particular kind of search filter, and its name should reflect that particularity. Also, in `isearch-search', there is this: ;; Clear RETRY unless we matched some invisible text ;; and we aren't supposed to do that. (if (or (not isearch-success) (bobp) (eobp) (= (match-beginning 0) (match-end 0)) (funcall isearch-success-function (match-beginning 0) (match-end 0))) (setq retry nil))) The code here is general; it is not related to text visibility. So the comment is not general enough. It is a vestige that is appropriate now only when the value of `isearch-success-function' is `isearch-success-function-default'. The comment should instead say that we clear RETRY unless the search predicate says to skip this search hit. It seems like this is a partly finished enhancement to behavior that was originally only for searching invisible text. Seems like this was generalized to an arbitrary predicate that filters possible search hits - but the job seems only half done. The code presumably works in a general way, but the comments and symbol names are inappropriate. The comments and the variable and function names need to reflect the new behavior, and this behavior should be documented for users. Users should know how to take advantage of this feature, defining their own search predicates that filter the search hits that would normally be available, so that hits that dissatisfy the predicate are skipped. In GNU Emacs 23.0.60.1 (i386-mingw-nt5.1.2600) of 2008-11-08 on LENNART-69DE564 Windowing system distributor `Microsoft Corp.', version 5.1.2600 configured using `configure --with-gcc (3.4) --no-opt --cflags -Ic:/g/include -fno-crossjumping' ------------=_1226883307-20239-1-- From unknown Wed Jun 25 02:10:34 2025 X-Loop: owner@emacsbugs.donarmstrong.com Subject: bug#1352: 23.0.60; isearch-success-function Reply-To: Juri Linkov , 1352@debbugs.gnu.org Resent-From: Juri Linkov Resent-To: bug-submit-list@lists.donarmstrong.com Resent-CC: Emacs Bugs Resent-Date: Sat, 20 Dec 2008 22:05:04 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-Emacs-PR-Message: followup 1352 X-Emacs-PR-Package: emacs X-Emacs-PR-Keywords: Received: via spool by 1352-submit@emacsbugs.donarmstrong.com id=B1352.122981035220029 (code B ref 1352); Sat, 20 Dec 2008 22:05:04 +0000 Received: (at 1352) by emacsbugs.donarmstrong.com; 20 Dec 2008 21:59:12 +0000 X-Spam-Checker-Version: SpamAssassin 3.2.5-bugs.debian.org_2005_01_02 (2008-06-10) on rzlab.ucr.edu X-Spam-Level: X-Spam-Bayes: score:0.5 Bayes not run. spammytokens:Tokens not available. hammytokens:Tokens not available. X-Spam-Status: No, score=-3.0 required=4.0 tests=HAS_BUG_NUMBER autolearn=ham version=3.2.5-bugs.debian.org_2005_01_02 Received: from relay03.kiev.sovam.com (relay03.kiev.sovam.com [62.64.120.201]) by rzlab.ucr.edu (8.13.8/8.13.8/Debian-3) with ESMTP id mBKLx4AE020021 for <1352@emacsbugs.donarmstrong.com>; Sat, 20 Dec 2008 13:59:05 -0800 Received: from [83.170.232.243] (helo=smtp.svitonline.com) by relay03.kiev.sovam.com with esmtp (Exim 4.67) (envelope-from ) id 1LE9qg-000Pz5-K1; Sat, 20 Dec 2008 23:59:02 +0200 From: Juri Linkov To: "Drew Adams" Cc: 1352@debbugs.gnu.org Organization: JURTA References: <005c01c9477b$6adb8290$0200a8c0@us.oracle.com> <87fxlrid7i.fsf@jurta.org> <000e01c9484d$cdc82f20$0200a8c0@us.oracle.com> Date: Sat, 20 Dec 2008 23:45:10 +0200 In-Reply-To: <000e01c9484d$cdc82f20$0200a8c0@us.oracle.com> (Drew Adams's message of "Sun, 16 Nov 2008 16:45:34 -0800") Message-ID: <87hc4yttax.fsf@jurta.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/23.0.60 (x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Scanner-Signature: 1e897a521fdb5eac39b1f944f187ca57 X-DrWeb-checked: yes X-SpamTest-Envelope-From: juri@jurta.org X-SpamTest-Group-ID: 00000000 X-SpamTest-Header: Trusted X-SpamTest-Info: Profiles 6392 [Dec 20 2008] X-SpamTest-Info: {received from trusted relay: common white list} X-SpamTest-Info: {HEADERS: header Content-Type found without required header Content-Transfer-Encoding} X-SpamTest-Method: white ip list X-SpamTest-Rate: 10 X-SpamTest-Status: Trusted X-SpamTest-Status-Extended: trusted X-SpamTest-Version: SMTP-Filter Version 3.0.0 [0278], KAS30/Release > Thanks, Juri. Looks better, to me anyway. > > Some details you might want to consider - Sorry for not responding to your last input after closing this bug. I've carefully read you message as I saw it, but found no more room for improvement. The final change was based on your original report and approved by Stefan. I think further trying to achieve the perfection will make this worse. In particular, your latest suggestions assume that Isearch is a library of functions with well-defined interfaces. This is only partially true. Rather it is an editor's feature with a set of subfeatures. So it would be more practical to use uniform function names that contain the same name prefix for all related functions and variables. This will help better recognizing the used subfeature in other features (like Dired and Info), helping mentally connect any related function names to it. In essence, what you suggest is using the prefix `isearch-visible' instead of the current `isearch-filter' in the predicate names. I see no preference for a property-based `visible' over an action-based `filter'. I think the word `visible' is more confusing since it can be misinterpreted as "visible to the user" instead of "visible to isearch". The existing name `isearch-range-invisible' has no such problem because it tests whether the search hit is visible to the user. So the name `isearch-filter-invisible' connects two features and names together: 1. visible - "visible to the user" 2. filter - "visible to isearch" -- Juri Linkov http://www.jurta.org/emacs/ From unknown Wed Jun 25 02:10:34 2025 X-Loop: owner@emacsbugs.donarmstrong.com Subject: bug#1352: 23.0.60; isearch-success-function Reply-To: "Drew Adams" , 1352@debbugs.gnu.org Resent-From: "Drew Adams" Resent-To: bug-submit-list@lists.donarmstrong.com Resent-CC: Emacs Bugs Resent-Date: Sat, 20 Dec 2008 22:40:03 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-Emacs-PR-Message: followup 1352 X-Emacs-PR-Package: emacs X-Emacs-PR-Keywords: Received: via spool by 1352-submit@emacsbugs.donarmstrong.com id=B1352.122981243129324 (code B ref 1352); Sat, 20 Dec 2008 22:40:03 +0000 Received: (at 1352) by emacsbugs.donarmstrong.com; 20 Dec 2008 22:33:51 +0000 X-Spam-Checker-Version: SpamAssassin 3.2.5-bugs.debian.org_2005_01_02 (2008-06-10) on rzlab.ucr.edu X-Spam-Level: X-Spam-Bayes: score:0.5 Bayes not run. spammytokens:Tokens not available. hammytokens:Tokens not available. X-Spam-Status: No, score=-3.0 required=4.0 tests=HAS_BUG_NUMBER autolearn=ham version=3.2.5-bugs.debian.org_2005_01_02 Received: from acsinet12.oracle.com (acsinet12.oracle.com [141.146.126.234]) by rzlab.ucr.edu (8.13.8/8.13.8/Debian-3) with ESMTP id mBKMXlJZ029313 for <1352@emacsbugs.donarmstrong.com>; Sat, 20 Dec 2008 14:33:49 -0800 Received: from acsinet13.oracle.com (acsinet13.oracle.com [141.146.126.235]) by acsinet12.oracle.com (Switch-3.3.1/Switch-3.3.1) with ESMTP id mBKMXGWE016954 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Sat, 20 Dec 2008 22:33:17 GMT Received: from acsmt703.oracle.com (acsmt703.oracle.com [141.146.40.81]) by acsinet13.oracle.com (Switch-3.3.1/Switch-3.3.1) with ESMTP id mBKMY6VY017012; Sat, 20 Dec 2008 22:34:08 GMT Received: from dradamslap1 (/141.144.160.73) by default (Oracle Beehive Gateway v4.0) with ESMTP ; Sat, 20 Dec 2008 14:33:37 -0800 From: "Drew Adams" To: "'Juri Linkov'" Cc: <1352@debbugs.gnu.org> References: <005c01c9477b$6adb8290$0200a8c0@us.oracle.com><87fxlrid7i.fsf@jurta.org><000e01c9484d$cdc82f20$0200a8c0@us.oracle.com> <87hc4yttax.fsf@jurta.org> Date: Sat, 20 Dec 2008 14:33:46 -0800 Message-ID: <000801c962f3$05f00200$0200a8c0@us.oracle.com> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit X-Mailer: Microsoft Office Outlook 11 Thread-Index: Acli7kn/o+Nv+dbST9K4cB+6xjZLYwAAN5xg X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.3350 In-Reply-To: <87hc4yttax.fsf@jurta.org> X-Source-IP: acsmt703.oracle.com [141.146.40.81] X-Auth-Type: Internal IP X-CT-RefId: str=0001.0A090204.494D72C3.0049:SCFSTAT928724,ss=1,fgs=0 > Sorry for not responding to your last input after closing this bug. > I've carefully read you message as I saw it, but found no more > room for improvement. The final change was based on your original > report and approved by Stefan. I think further trying to achieve > the perfection will make this worse. > > In particular, your latest suggestions assume that Isearch is > a library of > functions with well-defined interfaces. This is only partially true. > Rather it is an editor's feature with a set of subfeatures. > So it would > be more practical to use uniform function names that contain > the same name > prefix for all related functions and variables. This will help better > recognizing the used subfeature in other features (like Dired > and Info), > helping mentally connect any related function names to it. > > In essence, what you suggest is using the prefix `isearch-visible' > instead of the current `isearch-filter' in the predicate names. > I see no preference for a property-based `visible' over an > action-based > `filter'. I think the word `visible' is more confusing since > it can be > misinterpreted as "visible to the user" instead of "visible > to isearch". > The existing name `isearch-range-invisible' has no such > problem because > it tests whether the search hit is visible to the user. So the name > `isearch-filter-invisible' connects two features and names together: > > 1. visible - "visible to the user" > 2. filter - "visible to isearch" Thanks for replying. It's a shame that the bug tracker doesn't take such followup mails into account. It apparently includes spam but omits messages in a bug thread after the bug is closed. ;-) Though I disagree in general, I see your argument, especially the possible confusion about visibility, which I also pointed out. I'm OK with the convention you chose, as long as we're consistent. Minor point: `Info-isearch-filter-predicate' does not respect your naming convention: "predicate" does not describe what the filter does. Using your convention, you might call it instead `Info-isearch-filter-body-text' or `Info-isearch-filter-visible-body-text' (which admittedly is a bit long). Another thing you might think about is the `-p' ending. Shouldn't we follow that convention for predicate names? Especially since the doc strings do not mention the return values. I think a predicate's doc string should state when it returns nil vs non-nil, but if you don't want to do that, then the name (`-p') would at least give a clue to the type. You might like to think of these predicates as action functions that perform filtering, but they are not - they have no side effects. They are just predicates that can be used by an action function to filter. It's the difference between `delete-if' (filtering action function) and a predicate passed to it. That distinction is the main point behind the doc strings and names I suggested. I'm OK with your approach, but you might want to finish off some of these loose ends (`-p'; name of the Info predicate; mention return values in doc strings). Thx - Drew From unknown Wed Jun 25 02:10:34 2025 X-Loop: owner@emacsbugs.donarmstrong.com Subject: bug#1352: 23.0.60; isearch-success-function Reply-To: Juri Linkov , 1352@debbugs.gnu.org Resent-From: Juri Linkov Resent-To: bug-submit-list@lists.donarmstrong.com Resent-CC: Emacs Bugs Resent-Date: Mon, 22 Dec 2008 01:45:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-Emacs-PR-Message: followup 1352 X-Emacs-PR-Package: emacs X-Emacs-PR-Keywords: Received: via spool by 1352-submit@emacsbugs.donarmstrong.com id=B1352.122990984922417 (code B ref 1352); Mon, 22 Dec 2008 01:45:02 +0000 Received: (at 1352) by emacsbugs.donarmstrong.com; 22 Dec 2008 01:37:29 +0000 X-Spam-Checker-Version: SpamAssassin 3.2.5-bugs.debian.org_2005_01_02 (2008-06-10) on rzlab.ucr.edu X-Spam-Level: X-Spam-Bayes: score:0.5 Bayes not run. spammytokens:Tokens not available. hammytokens:Tokens not available. X-Spam-Status: No, score=-3.0 required=4.0 tests=HAS_BUG_NUMBER autolearn=ham version=3.2.5-bugs.debian.org_2005_01_02 Received: from relay01.kiev.sovam.com (relay01.kiev.sovam.com [62.64.120.200]) by rzlab.ucr.edu (8.13.8/8.13.8/Debian-3) with ESMTP id mBM1bPAZ022411 for <1352@emacsbugs.donarmstrong.com>; Sun, 21 Dec 2008 17:37:27 -0800 Received: from [83.170.232.243] (helo=smtp.svitonline.com) by relay01.kiev.sovam.com with esmtp (Exim 4.67) (envelope-from ) id 1LEZjY-0001Y3-9x; Mon, 22 Dec 2008 03:37:24 +0200 From: Juri Linkov To: "Drew Adams" Cc: 1352@debbugs.gnu.org Organization: JURTA References: <005c01c9477b$6adb8290$0200a8c0@us.oracle.com> <87fxlrid7i.fsf@jurta.org> <000e01c9484d$cdc82f20$0200a8c0@us.oracle.com> <87hc4yttax.fsf@jurta.org> <000801c962f3$05f00200$0200a8c0@us.oracle.com> Date: Mon, 22 Dec 2008 03:23:04 +0200 In-Reply-To: <000801c962f3$05f00200$0200a8c0@us.oracle.com> (Drew Adams's message of "Sat, 20 Dec 2008 14:33:46 -0800") Message-ID: <87d4flukgn.fsf@jurta.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/23.0.60 (x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Scanner-Signature: f216f799903dddc2f9accd11d8a1fded X-DrWeb-checked: yes X-SpamTest-Envelope-From: juri@jurta.org X-SpamTest-Group-ID: 00000000 X-SpamTest-Header: Trusted X-SpamTest-Info: Profiles 6403 [Dec 22 2008] X-SpamTest-Info: {received from trusted relay: common white list} X-SpamTest-Info: {HEADERS: header Content-Type found without required header Content-Transfer-Encoding} X-SpamTest-Method: white ip list X-SpamTest-Rate: 10 X-SpamTest-Status: Trusted X-SpamTest-Status-Extended: trusted X-SpamTest-Version: SMTP-Filter Version 3.0.0 [0278], KAS30/Release > Minor point: `Info-isearch-filter-predicate' does not respect your naming > convention: "predicate" does not describe what the filter does. Using your > convention, you might call it instead `Info-isearch-filter-body-text' or > `Info-isearch-filter-visible-body-text' (which admittedly is a bit long). I agree that the current name is inappropriate. But your suggestions are no better. First, there is no such a term as `body' in the Info documentation, so it will cause questions what is a body (answer: no header and not tag node). What is worse is that after adding more conditions to this predicate we'll need to rename it. I remember long ago you proposed to filter out header lines. Adding such a condition for the header line would require renaming from a name like `Info-isearch-filter-node-text' (if this function existed at that time) to what you just proposed. In future when it makes sense to add more conditions like skipping `* Menu' where actually the tag `* Menu' is part of the node's body, the name you proposed becomes wrong and needs to be renamed to a name like `Info-isearch-filter-body-text-without-menu-tag', and so on. That's why I think we should find a general name for the default predicate. I think it should be simply `Info-isearch-filter' without any specifics. > Another thing you might think about is the `-p' ending. Shouldn't we > follow that convention for predicate names? `-p' is usually added to short names that have no other indication that they are predicates (e.g. `display-images-p'). But filter predicates already have a prefix `isearch-filter' that indicates that a function is a filter. Adding `-p' will make such names more ugly. > Especially since the doc strings do not mention the return values. > I think a predicate's doc string should state when it returns nil vs > non-nil, but if you don't want to do that, then the name (`-p') would > at least give a clue to the type. I like your doc strings, so instead of adding `-p' I'll fix doc strings using your variants :-) BTW, I noticed that the name `isearch-filter-invisible' is logically incorrect because the name should say whether the test is passed. So I'll replace it with `isearch-filter-visible'. -- Juri Linkov http://www.jurta.org/emacs/ From unknown Wed Jun 25 02:10:34 2025 X-Loop: owner@emacsbugs.donarmstrong.com Subject: bug#1352: 23.0.60; isearch-success-function Reply-To: "Drew Adams" , 1352@debbugs.gnu.org Resent-From: "Drew Adams" Resent-To: bug-submit-list@lists.donarmstrong.com Resent-CC: Emacs Bugs Resent-Date: Mon, 22 Dec 2008 02:05:05 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-Emacs-PR-Message: followup 1352 X-Emacs-PR-Package: emacs X-Emacs-PR-Keywords: Received: via spool by 1352-submit@emacsbugs.donarmstrong.com id=B1352.122991107527151 (code B ref 1352); Mon, 22 Dec 2008 02:05:05 +0000 Received: (at 1352) by emacsbugs.donarmstrong.com; 22 Dec 2008 01:57:55 +0000 X-Spam-Checker-Version: SpamAssassin 3.2.5-bugs.debian.org_2005_01_02 (2008-06-10) on rzlab.ucr.edu X-Spam-Level: X-Spam-Bayes: score:0.5 Bayes not run. spammytokens:Tokens not available. hammytokens:Tokens not available. X-Spam-Status: No, score=-3.0 required=4.0 tests=HAS_BUG_NUMBER autolearn=ham version=3.2.5-bugs.debian.org_2005_01_02 Received: from rgminet13.oracle.com (rcsinet13.oracle.com [148.87.113.125]) by rzlab.ucr.edu (8.13.8/8.13.8/Debian-3) with ESMTP id mBM1vq6N027145 for <1352@emacsbugs.donarmstrong.com>; Sun, 21 Dec 2008 17:57:53 -0800 Received: from rgminet15.oracle.com (rcsinet15.oracle.com [148.87.113.117]) by rgminet13.oracle.com (Switch-3.3.1/Switch-3.3.1) with ESMTP id mBM1wBmx018348 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Mon, 22 Dec 2008 01:58:14 GMT Received: from acsmt706.oracle.com (acsmt706.oracle.com [141.146.40.84]) by rgminet15.oracle.com (Switch-3.3.1/Switch-3.3.1) with ESMTP id mBM1vkMq028639; Mon, 22 Dec 2008 01:57:47 GMT Received: from dradamslap1 (/24.5.135.148) by default (Oracle Beehive Gateway v4.0) with ESMTP ; Mon, 22 Dec 2008 01:57:36 +0000 From: "Drew Adams" To: "'Juri Linkov'" Cc: <1352@debbugs.gnu.org> References: <005c01c9477b$6adb8290$0200a8c0@us.oracle.com><87fxlrid7i.fsf@jurta.org><000e01c9484d$cdc82f20$0200a8c0@us.oracle.com><87hc4yttax.fsf@jurta.org><000801c962f3$05f00200$0200a8c0@us.oracle.com> <87d4flukgn.fsf@jurta.org> Date: Sun, 21 Dec 2008 17:57:41 -0800 Message-ID: <000901c963d8$ad5081b0$0200a8c0@us.oracle.com> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit X-Mailer: Microsoft Office Outlook 11 In-Reply-To: <87d4flukgn.fsf@jurta.org> Thread-Index: Aclj1d1fjjdQgu44QS+2U1zj4rsrDAAAW0Vw X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.3350 X-Source-IP: acsmt706.oracle.com [141.146.40.84] X-Auth-Type: Internal IP X-CT-RefId: str=0001.0A090206.494EF411.012B:SCFSTAT928724,ss=1,fgs=0 > > Minor point: `Info-isearch-filter-predicate' does not > > respect your naming convention: "predicate" does not > > describe what the filter does. Using your > > convention, you might call it instead > > `Info-isearch-filter-body-text' or > > `Info-isearch-filter-visible-body-text' (which admittedly > > is a bit long). > > I agree that the current name is inappropriate. But your suggestions > are no better. First, there is no such a term as `body' in the Info > documentation, so it will cause questions what is a body > (answer: no header and not tag node). What is worse is that after > adding more conditions to this predicate we'll need to rename it. > I remember long ago you proposed to filter out header lines. Adding > such a condition for the header line would require renaming from a > name like `Info-isearch-filter-node-text' (if this function existed > at that time) to what you just proposed. In future when it makes > sense to add more conditions like skipping `* Menu' > where actually the tag `* Menu' is part of the node's body, the name > you proposed becomes wrong and needs to be renamed to a name like > `Info-isearch-filter-body-text-without-menu-tag', and so on. > > That's why I think we should find a general name for the > default predicate. I think it should be simply `Info-isearch-filter' > without any specifics. Agreed. > > Another thing you might think about is the `-p' ending. Shouldn't we > > follow that convention for predicate names? > > `-p' is usually added to short names that have no other indication > that they are predicates (e.g. `display-images-p'). I don't think that qualification is part of the convention. > But filter predicates already have a prefix `isearch-filter' > that indicates that a function is a filter. As I mentioned, in English, "filter" is ambiguous in this context. It can, as you intend it, mean a filter (noun), which could be interpreted as a predicate. (As I pointed out, though, even then it the name doesn't say what the predicate quality is - what's being filtered in or out.) But "filter" here can also mean the action (verb) to filter. These functions do not do any filtering on their own - they have no side effects. I think the suffix `-p' would help make clear that these are pure predicates, nothing more. And I think that's the Emacs convention (without your added qualification), but I could be mistaken about that. > Adding `-p' will make such names more ugly. Yes, but also clearer. > > Especially since the doc strings do not mention the return values. > > I think a predicate's doc string should state when it returns nil vs > > non-nil, but if you don't want to do that, then the name > > (`-p') would at least give a clue to the type. > > I like your doc strings, so instead of adding `-p' I'll fix > doc strings using your variants :-) > > BTW, I noticed that the name `isearch-filter-invisible' is logically > incorrect because the name should say whether the test is passed. > So I'll replace it with `isearch-filter-visible'. That's part of what I was saying in previous feedback I gave. The function name should, if possible, indicate whether it is filtering out or filtering in (e.g. keep-lines vs flush-lines). Anyway, thanks for looking at this again. - Drew From unknown Wed Jun 25 02:10:34 2025 X-Loop: owner@emacsbugs.donarmstrong.com Subject: bug#1352: 23.0.60; isearch-success-function Reply-To: Stefan Monnier , 1352@debbugs.gnu.org Resent-From: Stefan Monnier Resent-To: bug-submit-list@lists.donarmstrong.com Resent-CC: Emacs Bugs Resent-Date: Mon, 22 Dec 2008 12:35:04 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-Emacs-PR-Message: followup 1352 X-Emacs-PR-Package: emacs X-Emacs-PR-Keywords: Received: via spool by 1352-submit@emacsbugs.donarmstrong.com id=B1352.122994915513686 (code B ref 1352); Mon, 22 Dec 2008 12:35:04 +0000 Received: (at 1352) by emacsbugs.donarmstrong.com; 22 Dec 2008 12:32:35 +0000 X-Spam-Checker-Version: SpamAssassin 3.2.5-bugs.debian.org_2005_01_02 (2008-06-10) on rzlab.ucr.edu X-Spam-Level: X-Spam-Bayes: score:0.5 Bayes not run. spammytokens:Tokens not available. hammytokens:Tokens not available. X-Spam-Status: No, score=-0.5 required=4.0 tests=HAS_BUG_NUMBER,XIRONPORT autolearn=ham version=3.2.5-bugs.debian.org_2005_01_02 Received: from ironport2-out.teksavvy.com (ironport2-out.teksavvy.com [206.248.154.182]) by rzlab.ucr.edu (8.13.8/8.13.8/Debian-3) with ESMTP id mBMCWW2A013670 for <1352@emacsbugs.donarmstrong.com>; Mon, 22 Dec 2008 04:32:33 -0800 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: ArcEAI8XT0lMCqBi/2dsb2JhbACBbLtlWI8nhkOBWg X-IronPort-AV: E=Sophos;i="4.36,263,1228107600"; d="scan'208";a="31364275" Received: from 76-10-160-98.dsl.teksavvy.com (HELO pastel.home) ([76.10.160.98]) by ironport2-out.teksavvy.com with ESMTP; 22 Dec 2008 07:32:26 -0500 Received: by pastel.home (Postfix, from userid 20848) id 9107084A4; Mon, 22 Dec 2008 07:32:26 -0500 (EST) From: Stefan Monnier To: Juri Linkov Cc: 1352@debbugs.gnu.org, "Drew Adams" Message-ID: References: <005c01c9477b$6adb8290$0200a8c0@us.oracle.com> <87fxlrid7i.fsf@jurta.org> <000e01c9484d$cdc82f20$0200a8c0@us.oracle.com> <87hc4yttax.fsf@jurta.org> <000801c962f3$05f00200$0200a8c0@us.oracle.com> <87d4flukgn.fsf@jurta.org> Date: Mon, 22 Dec 2008 07:32:26 -0500 In-Reply-To: <87d4flukgn.fsf@jurta.org> (Juri Linkov's message of "Mon, 22 Dec 2008 03:23:04 +0200") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/23.0.60 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii > That's why I think we should find a general name for the default predicate. > I think it should be simply `Info-isearch-filter' without any specifics. Agreed. Sounds like a good name. Stefan