> In any case, yes, your suggestion of first doing what we do now > (highlight the immediate area, using the current algorith), and > then following that with highlighting the rest of the buffer, > could be a good idea. Dunno how much that might change > the existing code. In the patch attached below, a new function isearch-lazy-highlight-buffer-update is a copy of isearch-lazy-highlight-update with some changes specific to highlighting the full buffer. It seems making a duplicate function is necessary because adding more full-buffer specific conditions to the existing function isearch-lazy-highlight-update will make it unmaintainable. Only a part of the function (that highlights the match) is extracted into a new function isearch-lazy-highlight-match and shared among these aforementioned two functions.