bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#4994: 23.1.50; reftex-isearch-minor-mode does not restore to the ori


From: Juri Linkov
Subject: bug#4994: 23.1.50; reftex-isearch-minor-mode does not restore to the original point
Date: Fri, 20 Nov 2009 21:32:08 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/23.1.50 (x86_64-pc-linux-gnu)

>> 1. (reftex-isearch-minor-mode t)
>>
>> 2. now search a string in a LaTeX project that is split (via \input
>> or \include) into many files
>>
>> 3. C-g to quit
>>
>> and you will see point can be left in a new buffer.
>>
>> For example, from the master file I initialised an isearch and when the
>> point jumped to chap1.tex, I hit C-g. Point was left in chap1.tex
>> instead of the original buffer where the command started.
>>
>> I am surprised by this behaviour so I'm wondering whether this is a bug.
>
> Thanks, good point.  It seems C-g doesn't return to the initial search state.
> I'll try to find a solution.

Multi-buffer isearch has no chance to save the initial state because
its setup is called too late - after the initial state (without
additional information about the original buffer) is pushed to the stack.

IOW, in `isearch-mode', `(isearch-push-state)' is called earlier than
(run-hooks 'isearch-mode-hook) that sets up multi-buffer specific
`isearch-push-state-function'.

Changing the order of these lines fixes this bug.  However, this change has
a risk of breaking other things.  So I need more time to test this fix.

-- 
Juri Linkov
http://www.jurta.org/emacs/





reply via email to

[Prev in Thread] Current Thread [Next in Thread]