[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#14013: 24.3.50; dired-isearch-filenames-regexp is matching text outs
From: |
Juri Linkov |
Subject: |
bug#14013: 24.3.50; dired-isearch-filenames-regexp is matching text outside filenames |
Date: |
Sun, 03 Jul 2022 21:23:19 +0300 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (x86_64-pc-linux-gnu) |
>> - (looking-at (cond
>> - ((functionp isearch-regexp-function)
>> - (funcall isearch-regexp-function
>> isearch-string t))
>> - (isearch-regexp-function (word-search-regexp
>> isearch-string t))
>> - (isearch-regexp isearch-string)
>> - (t (regexp-quote isearch-string)))))
>> + ;; Like `looking-at' but uses search functions:
>> + (let ((isearch-forward t))
>> + (isearch-search-string
>> + (concat "\\=\\(?:" isearch-string "\\)") nil t)))
>> (error nil))
>
> These lines seem to break backwards char-fold isearch for me. Test
> case:
>
> Insert "creme" in an empty buffer (yes, all just ascii latin chars), go
> to eob, and C-r M-s ' creme ==> fails.
>
> Works with forward search and non-char-folding backward search.
Thanks for testing. So this is a new reason why this hunk should be left out.
Another reason is that some search functions are unsuitable to be called
instead of looking-at, such as when the search function in the minibuffer
starts to visit history items here.
I hope that ‘(replace-search (concat "\\=\\(?:"’ in perform-replace
has no such problems.