From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Michael Heerdegen Newsgroups: gmane.emacs.devel Subject: Re: Is it valid to call isearch-filter-predicate outside isearch? Date: Sun, 04 Jun 2023 04:06:52 +0200 Message-ID: <87o7lwugjn.fsf@web.de> References: <875y8nks9t.fsf@localhost> <87fs7c10cq.fsf@web.de> <87v8g79zoe.fsf@localhost> <87sfbasr8m.fsf@web.de> <87y1l244hz.fsf@localhost> <87o7lxpip9.fsf@web.de> <87wn0lkkod.fsf@localhost> Mime-Version: 1.0 Content-Type: text/plain Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="17064"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) To: emacs-devel@gnu.org Cancel-Lock: sha1:rch3aCA9raL+kNFFqOrwT9SPKlQ= Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Sun Jun 04 04:08:06 2023 Return-path: Envelope-to: ged-emacs-devel@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1q5dA5-0004EG-TX for ged-emacs-devel@m.gmane-mx.org; Sun, 04 Jun 2023 04:08:05 +0200 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1q5d97-0004EB-Hz; Sat, 03 Jun 2023 22:07:05 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1q5d96-0004Dw-An for emacs-devel@gnu.org; Sat, 03 Jun 2023 22:07:04 -0400 Original-Received: from ciao.gmane.io ([116.202.254.214]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1q5d94-0007hr-N0 for emacs-devel@gnu.org; Sat, 03 Jun 2023 22:07:04 -0400 Original-Received: from list by ciao.gmane.io with local (Exim 4.92) (envelope-from ) id 1q5d92-0002xs-Oe for emacs-devel@gnu.org; Sun, 04 Jun 2023 04:07:00 +0200 X-Injected-Via-Gmane: http://gmane.org/ Received-SPF: pass client-ip=116.202.254.214; envelope-from=ged-emacs-devel@m.gmane-mx.org; helo=ciao.gmane.io X-Spam_score_int: -13 X-Spam_score: -1.4 X-Spam_bar: - X-Spam_report: (-1.4 / 5.0 requ) BAYES_00=-1.9, FREEMAIL_FORGED_FROMDOMAIN=0.248, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.248, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.devel:306598 Archived-At: Ihor Radchenko writes: > Michael Heerdegen writes: > > >> 2. It feels against the interface. If advising this predicate is > >> expected, why not convert it into an abnormal hook? > > > > It's more flexible and expressive, as Drew already mentioned. For > > example, how the members of a hook are logically combined (`and'ed, > > `or'ed) is fixed in a hook, but not when using advising. > > Interesting. From Elisp Tips in the manual, I always felt that using > advices is always frowned upon. And you are suggesting that they are > the better way to go in these situations. I am wondering if this > thing with modifying predicates should be documented somewhere and > recommended approach. Though, "better" does not necessarily mean "best". Why do we have to change the bindings (of those diverse Isearch variables) at all? If Isearch behaves specially in Dired, and we maybe consider WDired a submode of Dired, we could say: we make the respective variables permanently buffer local in Dired buffers and bind them to a function that always works in all cases: the bound functions could just test whether the buffer is in dired-mode or wdired-mode, and whether `dired-isearch-filenames-mode' is enabled, and do the right thing. Would that be possible? Michael.