[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: tags-search doesn't check files are up-to-date
From: |
Chong Yidong |
Subject: |
Re: tags-search doesn't check files are up-to-date |
Date: |
Fri, 01 Feb 2008 18:46:38 -0500 |
User-agent: |
Gnus/5.11 (Gnus v5.11) Emacs/22.1.90 (gnu/linux) |
"Chris Moore" <address@hidden> writes:
> I was just trying to find something in an old IRC logfile. I went to
> the directory holding the files with dired, marked the last week's
> worth of logs and hit "A" (dired-do-search) to search them for the
> string.
>
> Emacs told me "All files processed" - it didn't find the string.
>
> "grep" tells me differently - the string is there.
>
> It turns out that I had visited one of the logs when it still being
> written a few days ago. Emacs had the first half of the file in a
> buffer, and the string I wanted was in the 2nd half - on disk, but not
> in the buffer.
>
> I would expect Emacs to say "File ... changed on disk. Reread from
> disk? (yes or no) " when I try searching a file that's changed, but it
> silently assumes I don't want to know that it is using an old copy.
>
> It's pretty simple to reproduce: make an empty file, visit it, append
> 'xxx' to it outside of Emacs, mark the file in dired and search it for
> 'xxx' using the "A" (dired-do-search) key. It won't find the 'xxx'.
This can be fixed by setting tags-loop-revert-buffers to non-nil.
Maybe dired-do-search and the other commands that use etags should
automatically bind tags-loop-revert-buffers to t?