GNU bug report logs -
#14013
24.3.50; dired-isearch-filenames-regexp is matching text outside filenames
Previous Next
Reported by: michael_heerdegen <at> web.de
Date: Wed, 20 Mar 2013 23:42:01 UTC
Severity: normal
Tags: patch
Merged with 29215
Found in versions 24.3.50, 26.0
Fixed in version 29.0.50
Done: Juri Linkov <juri <at> jurta.org>
Bug is archived. No further changes may be made.
Full log
Message #121 received at 14013 <at> debbugs.gnu.org (full text, mbox):
>> This works reliably only because the search function puts point at the
>> beginning of every file name during search.
>
> I'm not about non-interactive searches, seldom use them - can something
> like `dired-isearch-filenames-regexp' be done non-interactively?
It should work non-interactively as well.
> Anyway, my complete idea was: whenever we provide a special search
> command that limits isearch to certain entities, like file names in a
> dired buffer, we always guarantee that point can be matched at the
> beginning of each entity with \= (and maybe also \` and ^). In an
> interactive search \= is quite useless (right?), so we can use it for
> that and avoid hacks that would probably be worse.
This is more complicated for backward search where \= should match
at the end of the file name, so \' and $ should be replaced with \=.
> We would still not have a solution to match the end of the entities,
> however. Fortunately for files in dired $ works (by coincidence).
This is still not reliable since the dired line doesn't always end
with the end of the file name such as "filename -> symlink" format.
But with the previous patch this works because of the BOUND argument
of the search function set to the end of the file name.
For the backward search, the BOUND argument corresponds to $.
This makes the search function more complicated, but
this is doable, just needs more special-casing.
This bug report was last modified 2 years and 37 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.